Ensure that a filename ending in a slash cannot be used to access a non-directory.
[gnulib.git] / ChangeLog
1 2008-09-24  Bruno Haible  <bruno@clisp.org>
2
3         Ensure that a filename ending in a slash cannot be used to access a
4         non-directory.
5         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
6         to check whether it's really a directory.
7         * lib/fopen.c: Include fcntl.h, unistd.h.
8         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
9         and fdopen().
10         * modules/fopen (Depends-on): Add unistd.
11         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
12         * tests/test-fopen.c (main): Likewise.
13         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
14         * doc/posix-functions/fopen.texi: Likewise.
15         Reported by Eric Blake.
16
17 2008-09-23  Eric Blake  <ebb9@byu.net>
18
19         c-stack: avoid compiler optimizations when provoking overflow
20         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
21         recursion harder to optimize, to ensure a stack overflow occurs.
22         * tests/test-c-stack.c (recurse): Likewise.
23         Borrowed from libsigsegv.
24
25         c-stack: work around Irix sigaltstack bug
26         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
27         whether sigaltstack uses wrong end of stack_t (copied in part from
28         libsigsegv).
29         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
30         Irix bug, without requiring an over-allocation.
31         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
32         bug.
33
34         fopen: document mingw bug on directories
35         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
36         not allowing a stream visiting a directory, even though reading
37         from such a stream is not portable.
38
39 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
40
41         * lib/poll.c: Rewrite.
42         * modules/poll: Depend on alloca.
43
44 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
45
46         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
47         instead define prototypes for a full set of wrappers.  Ensure
48         that Cygwin does not use the compatibility code, which is only
49         for MinGW.
50         * lib/winsock.c: New.
51         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
52         * modules/sys_socket: Add lib/winsock.c.
53
54         * modules/poll-tests: Add errno and perror.
55         * tests/test-poll.c: Use ioctl, not ioctlsocket.
56
57 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
58
59         * tests/test-poll.c: Downgrade minimum needed Winsock version.
60
61 2008-09-23  Bruno Haible  <bruno@clisp.org>
62
63         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
64         * doc/glibc-functions/*: Likewise.
65
66 2008-09-23  Simon Josefsson  <simon@josefsson.org>
67
68         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
69         success.
70
71 2008-09-22  Eric Blake  <ebb9@byu.net>
72             Bruno Haible  <bruno@clisp.org>
73
74         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
75         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
76         supply %A but mishandle pseudo-NaN.
77         Reported by Simon Josefsson.
78
79 2008-09-21  Bruno Haible  <bruno@clisp.org>
80
81         * tests/test-lock.c (main): Tweak skip message.
82         * tests/test-tls.c (main): Likewise.
83
84 2008-09-21  Bruno Haible  <bruno@clisp.org>
85
86         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
87         whether 'struct sigaction' has sa_sigaction here...
88         (gl_PREREQ_SIG_HANDLER_H): ... not here.
89         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
90
91 2008-09-21  Bruno Haible  <bruno@clisp.org>
92
93         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
94         section.
95         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
96         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
97         the new section.
98         (Support for obsolete systems lacking POSIX:2001): New section.
99         (String handling <string.h>): Move strdup to the new section.
100         Suggested by Simon Josefsson and Paolo Bonzini.
101
102 2008-09-21  Bruno Haible  <bruno@clisp.org>
103
104         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
105         exponents in %e and %g results on 'long double'. Needed for mingw's
106         improved *printf functions.
107         * tests/test-vasprintf-posix.c (test_function): Likewise.
108         * tests/test-snprintf-posix.h (test_function): Likewise.
109         * tests/test-sprintf-posix.h (test_function): Likewise.
110         Reported by Eric Blake.
111
112 2008-09-21  Bruno Haible  <bruno@clisp.org>
113
114         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
115         * tests/test-sprintf-posix.h (test_function): Likewise.
116
117 2008-09-21  Bruno Haible  <bruno@clisp.org>
118
119         * modules/getpass (Depends-on): Add strdup-posix.
120
121         New module 'strdup-posix'.
122         * modules/strdup-posix: New file.
123         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
124         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
125         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
126         REPLACE_STRDUP.
127         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
128         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
129         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
130         strdup-posix.
131
132         * modules/strdup (Depends-on): Remove malloc-posix.
133
134 2008-09-20  Bruno Haible  <bruno@clisp.org>
135
136         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
137         Wildenhues.
138
139 2008-09-20  Bruno Haible  <bruno@clisp.org>
140
141         Ensure that wint_t gets defined on IRIX 5.3.
142         * lib/wchar.in.h (wint_t): Define if not defined by the system.
143         * lib/wctype.in.h (wint_t): Likewise.
144         (__wctype_wint_t): Remove type.
145         (isw*): Use wint_t instead of __wctype_wint_t.
146         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
147         * modules/wchar (Files): Add m4/wint_t.m4.
148         (Makefile.am): Substitute HAVE_WINT_T.
149         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
150         * tests/test-wctype.c: Check that wint_t is defined.
151         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
152         * doc/posix-headers/wctype.texi: Likewise.
153         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
154
155 2008-09-18  Bruno Haible  <bruno@clisp.org>
156
157         * gnulib-tool (func_exit): Update comment.
158
159 2008-09-18  Simon Josefsson  <simon@josefsson.org>
160
161         * modules/getaddrinfo (Depends-on): Remove strdup, this module
162         assumes strdup exists and does not depend on strdup to return
163         ENOMEM on out of memory conditions.
164
165 2008-09-18  Bruno Haible  <bruno@clisp.org>
166
167         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
168         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
169         digits for the exponent.
170
171 2008-09-18  Jim Meyering  <meyering@redhat.com>
172             Bruno Haible  <bruno@clisp.org>
173
174         * lib/vasnprintf.c (decimal_point_char): Define also if
175         NEED_PRINTF_INFINITE_LONG_DOUBLE.
176
177 2008-09-16  Bruno Haible  <bruno@clisp.org>
178         and Eric Blake  <ebb9@byu.net>
179
180         vasnprintf: support Irix 5.3
181         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
182         that mishandle long double infinity.
183         Reported by Tom G. Christensen.
184
185 2008-09-16  Bruno Haible  <bruno@clisp.org>
186
187         * doc/glibc-functions/scandir.texi: Mention the function is missing on
188         Solaris 9.
189         * doc/glibc-functions/alphasort.texi: Likewise.
190         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
191
192 2008-09-16  Jim Meyering  <meyering@redhat.com>
193
194         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
195         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
196         a umask modification leak out of a subshell.  Otherwise, the
197         opensolaris /bin/sh would be accepted and thus cause unwarranted
198         failures in the coreutils test suite.
199
200 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
201
202         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
203         to succeed.
204
205 2008-09-16  Jim Meyering  <meyering@redhat.com>
206
207         avoid spurious test failure when library is built without ACL support
208         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
209         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
210         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
211         * tests/test-copy-acl.sh: Likewise.
212
213 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
214
215         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
216         based on character occurrence counts.
217
218 2008-09-15  Eric Blake  <ebb9@byu.net>
219
220         tests: avoid some compiler warnings
221         * tests/test-memchr.c (main): Pass NULL indirectly.
222         * tests/test-closein.c (main): Avoid unused variable.
223
224 2008-09-15  Bruno Haible  <bruno@clisp.org>
225
226         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
227         are missing on OpenBSD 4.0 individually.
228         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
229
230 2008-09-15  Bruno Haible  <bruno@clisp.org>
231
232         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
233         * doc/posix-functions/strerror.texi: Mention also Cygwin.
234         * doc/posix-functions/perror.texi: Likewise.
235         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
236         is missing.
237         Reported by Eric Blake.
238
239         * lib/errno.in.h: Use replacement values >= 2000.
240         Reported by Eric Blake.
241
242 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
243
244         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
245         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
246         limit.
247         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
248         compareseq was aborted.
249
250 2008-09-14  Bruno Haible  <bruno@clisp.org>
251
252         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
253         yvec_edit_count.
254         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
255         (fstrcmp_bounded): Simplify result computation accordingly.
256
257 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
258
259         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
260         (fstrcmp): Define in terms of fstrcmp_bounded.
261         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
262         lower_bound argument.
263         Return quickly if the result is certainly < lower_bound.
264         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
265
266 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
267
268         * lib/diffseq.h (EARLY_ABORT): New macro.
269         (compareseq): Change return type to bool. Return true when EARLY_ABORT
270         evaluates to true.
271
272 2008-09-14  Bruno Haible  <bruno@clisp.org>
273
274         * modules/perror-tests: New file.
275         * tests/test-perror.sh: New file.
276         * tests/test-perror.c: New file.
277
278         New module 'perror'.
279         * lib/stdio.in.h (perror): New declaration.
280         * lib/perror.c: New file.
281         * m4/perror.m4: New file.
282         * modules/perror: New file.
283         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
284         * doc/posix-functions/perror.texi: Mention the perror module.
285         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
286         REPLACE_PERROR.
287         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
288         REPLACE_PERROR.
289
290 2008-09-14  Bruno Haible  <bruno@clisp.org>
291
292         * modules/stdio (Makefile.am): Reorder to match the order in
293         lib/stdio.in.h.
294         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
295
296 2008-09-13  Bruno Haible  <bruno@clisp.org>
297
298         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
299
300 2008-09-13  Bruno Haible  <bruno@clisp.org>
301
302         Extend strerror to cover the added errno values.
303         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
304         (rpl_strerror): Provide error messages for the added errno values and
305         for the WSA* values.
306         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
307         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
308         strerror.
309         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
310         * modules/strerror (Depends-on): Add errno.
311         * doc/posix-functions/strerror.texi: Document the change.
312         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
313         and EOVERFLOW.
314
315 2008-09-13  Bruno Haible  <bruno@clisp.org>
316
317         * modules/EOVERFLOW: Remove file.
318         * m4/eoverflow.m4: Remove file.
319         * modules/EOVERFLOW-tests: Remove file.
320         * tests/test-EOVERFLOW.c: Remove file.
321         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
322         * modules/ftell (Depends-on): Likewise.
323         * modules/getdelim (Depends-on): Likewise.
324         * modules/getugroups (Depends-on): Likewise.
325         * modules/poll (Depends-on): Likewise.
326         * modules/snprintf (Depends-on): Likewise.
327         * modules/sprintf-posix (Depends-on): Likewise.
328         * modules/vasnprintf (Depends-on): Likewise.
329         * modules/vasprintf (Depends-on): Likewise.
330         * modules/vfprintf-posix (Depends-on): Likewise.
331         * modules/vsnprintf (Depends-on): Likewise.
332         * modules/vsprintf-posix (Depends-on): Likewise.
333         * modules/xvasprintf (Depends-on): Likewise.
334         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
335         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
336         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
337         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
338         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
339         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
340         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
341         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
342         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
343         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
344         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
345         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
346         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
347         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
348         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
349         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
350         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
351         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
352         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
353         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
354         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
355         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
356         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
357         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
358         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
359         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
360         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
361         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
362         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
363         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
364         * MODULES.html.sh: Remove EOVERFLOW.
365         * NEWS: Mention the change.
366
367 2008-09-13  Bruno Haible  <bruno@clisp.org>
368
369         * modules/errno-tests: New file.
370         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
371
372         * lib/errno.in.h: New file.
373         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
374         * modules/errno: New file.
375         * doc/posix-headers/errno.texi: Update documentation.
376         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
377
378 2008-09-13  Bruno Haible  <bruno@clisp.org>
379
380         * tests/test-poll.c: Use #if for native Windows, rather than testing
381         __MSVCRT__.
382
383 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
384             Bruno Haible  <bruno@clisp.org>
385
386         * lib/glob.c: Don't include <pwd.h> on native Windows.
387         (WINDOWS32): New macro.
388         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
389
390 2008-09-13  Bruno Haible  <bruno@clisp.org>
391
392         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
393         (ETIMEDOUT): Remove macro.
394         (glthread_cond_timedwait_multithreaded): New declaration.
395         (glthread_cond_timedwait): Use it.
396         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
397         (glthread_cond_timedwait_multithreaded): New function.
398
399 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
400
401         * modules/poll-tests: Do not check for io.h.
402         * tests/test-poll.c: Check for __MSVCRT__ instead.
403
404 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
405
406         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
407         * modules/poll-tests: Add inet_pton, stdbool, sockets.
408         * tests/test-poll.c: Use them.  Use _pipe on Windows.
409
410 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
411
412         * modules/poll-tests: New.
413         * tests/test-poll.c: New.
414
415 2008-09-12  Eric Blake  <ebb9@byu.net>
416
417         frexp: test for NetBSD failure on -0.0
418         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
419         not all, bugs from NetBSD 3.0 have been fixed.
420         * doc/posix-functions/frexp.texi (frexp): Document bug.
421         Reported by Thomas Klausner.
422
423         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
424         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
425         literal -0.0.
426         Reported by Jonathan C. Patschke <jp@centtech.com>.
427
428 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
429
430         * lib/glthread/cond.h: Use dummy implementation also if
431         USE_WIN32_THREADS.
432
433 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
434
435         * modules/fnmatch-posix (License): Change to LGPLv2+.
436         * modules/fnmatch-gnu (License): Likewise.
437
438 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
439
440         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
441
442 2008-09-11  Jim Meyering  <meyering@redhat.com>
443
444         * users.txt: Add gtk-vnc.
445
446 2008-09-08  Simon Josefsson  <simon@josefsson.org>
447
448         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
449         rotate amounts.
450
451         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
452         required for 16-bit and 8-bit rotates.
453         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
454         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
455         UINT8_MAX instead of hard-coded constants.
456         Suggested by Paul Eggert.
457
458 2008-09-07  Bruno Haible  <bruno@clisp.org>
459
460         * tests/test-striconveh.c (main): Check behaviour when converting from
461         UTF-7.
462
463         Make striconveh work better with stateful encodings.
464         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
465         that iconv does not increment the inptr when returning -1/EINVAL.
466
467 2008-09-07  Bruno Haible  <bruno@clisp.org>
468
469         * build-aux/config.rpath: Update according to libtool-2.2.6.
470         * build-aux/config.libpath: Likewise.
471
472 2008-09-06  Bruno Haible  <bruno@clisp.org>
473
474         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
475         * lib/freadptr.c (freadptr): Likewise.
476         * lib/freadseek.c (freadptrinc): Likewise.
477         Reported by Simon Josefsson.
478
479 2008-09-06  Bruno Haible  <bruno@clisp.org>
480
481         * modules/freadptr (License): Change to LGPLv2+.
482         * modules/freadseek (License): Likewise.
483         Suggested by Eric Blake.
484
485         * modules/memchr2 (License): Change to LGPLv2+.
486         Approved by Eric Blake.
487
488 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
489             Bruno Haible  <bruno@clisp.org>
490
491         Make gnulib-tool work with native 'sed' on AIX.
492         * gnulib-tool (sed_noop): New variable.
493         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
494         func_add_or_update, func_create_testdir): Use it to initialize sed
495         script variables.
496         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
497
498 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
499             Bruno Haible  <bruno@clisp.org>
500
501         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
502         also works after #include directives.
503
504 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
505
506         getdate.y: reject an out-of-range timezone value
507         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
508         the range [-24...+24].  When specified with only one or two digits,
509         * tests/test-getdate.c: Tests for the fix.
510         * doc/getdate.texi: Document this change.
511
512 2008-09-03  Bruno Haible  <bruno@clisp.org>
513
514         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
515
516 2008-09-02  Simon Josefsson  <simon@josefsson.org>
517
518         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
519         <bruce.korb@gmail.com> with ideas from Ben Pfaff
520         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
521         Blake <ebb9@byu.net>.
522
523         * tests/test-bitrotate.c: Add more test vectors.
524
525 2008-09-02  Eric Blake  <ebb9@byu.net>
526
527         vasnprintf-posix: handle large precision via %.*d
528         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
529         when handling it ourselves.
530         * tests/test-vasnprintf-posix.c (test_function): Add test.
531         * tests/test-snprintf-posix.h (test_function): Likewise.
532         * tests/test-sprintf-posix.h (test_function): Likewise.
533         * tests/test-vasprintf-posix.c (test_function): Likewise.
534         Reported by Alain Guibert.
535
536 2008-09-01  Eric Blake  <ebb9@byu.net>
537
538         c-stack: make configure-time check more robust
539         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
540         successful sigaction call.
541         Reported by Tom G. Christensen.
542
543 2008-09-01  Bruno Haible  <bruno@clisp.org>
544
545         New module 'findprog-lgpl'.
546         * modules/findprog-lgpl: New file.
547         * lib/findprog-lgpl.c: New file.
548         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
549         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
550         to decide whether to use strdup or xstrdup, concatenated_filename or
551         xconcatenated_filename.
552
553 2008-09-01  Bruno Haible  <bruno@clisp.org>
554
555         Split module 'concat-filename' into 'concat-filename' (LGPL) and
556         'xconcat-filename' (GPL).
557         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
558         (License): Change to LGPLv2+.
559         * modules/xconcat-filename: New file.
560         * lib/concat-filename.h (concatenated_filename): Change specification.
561         (xconcatenated_filename): New declaration.
562         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
563         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
564         memory situations.
565         * lib/xconcat-filename.c: New file.
566         * NEWS: Mention the change.
567         * lib/findprog.c: Include concat-filename.h, not filename.h.
568         (find_in_path): Use xconcatenated_filename instead of
569         concatenated_filename.
570         * lib/javacomp.c: Include concat-filename.h, not filename.h.
571         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
572         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
573         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
574         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
575         instead of concatenated_filename.
576         * lib/javaexec.c: Include concat-filename.h, not filename.h.
577         (execute_java_class): Use xconcatenated_filename instead of
578         concatenated_filename.
579         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
580         * modules/javacomp (Depends-on): Likewise.
581         * modules/javaexec (Depends-on): Likewise.
582
583 2008-09-01  Bruno Haible  <bruno@clisp.org>
584
585         Split module 'filename' into 'filename' and 'concat-filename'.
586         * modules/filename: Keep only lib/filename.h.
587         (License): Change to LGPLv2+.
588         * modules/concat-filename: New file, extracted from modules/filename.
589         * lib/filename.h (concatenated_filename): Remove declaration.
590         * lib/concat-filename.h: New file, extracted from lib/filename.h.
591         * lib/concat-filename.c: Include concat-filename.h.
592         * NEWS: Mention the change.
593
594 2008-09-01  Simon Josefsson  <simon@josefsson.org>
595
596         * lib/bitrotate.h (rotl8, rotr8): Add.
597
598         * modules/bitrotate (configure.ac): Need
599         AC_REQUIRE([AC_C_INLINE]).
600         (Description): Mention stdint.h.  Reported by Bruno Haible
601         <bruno@clisp.org>.
602
603         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
604         Paolo Bonzini <bonzini@gnu.org>.
605
606 2008-08-31  Bruno Haible  <bruno@clisp.org>
607
608         Assume Solaris specific bi-arch conventions on Solaris systems.
609         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
610         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
611         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
612         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
613         like acl_libdirstem.
614         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
615         acl_libdirstem.
616         * NEWS: Mention the change.
617         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
618
619 2008-08-31  Jim Meyering  <meyering@redhat.com>
620
621         * lib/strftime.h: Add comments describing the two added arguments.
622
623         remove duplicate #include directives
624         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
625         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
626
627 2008-08-31  Bruno Haible  <bruno@clisp.org>
628
629         New module 'sigpipe-die'.
630         * modules/sigpipe-die: New file.
631         * lib/sigpipe-die.h: New file.
632         * lib/sigpipe-die.c: New file.
633         * MODULES.html.sh (Signal handling): Add sigpipe-die.
634
635 2008-08-31  Bruno Haible  <bruno@clisp.org>
636
637         Don't override previously installed signal handlers.
638         * lib/fatal-signal.c (saved_sigactions): New variable.
639         (uninstall_handlers): Reset the signal to the saved handler, not
640         to SIG_DFL (except when ignored).
641         (install_handlers): Save the previous handlers.
642
643 2008-08-30  Bruno Haible  <bruno@clisp.org>
644
645         * gnulib-tool (func_reset_sigpipe): New function.
646         (func_get_automake_snippet, func_modules_transitive_closure,
647         func_import): Invoke it before a join command that reads from stdin,
648         to avoid "echo: write error: Broken pipe" error messages on stderr.
649         Reported by Sam Steingold <sds@gnu.org>.
650
651 2008-08-30  Bruno Haible  <bruno@clisp.org>
652
653         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
654         Code copied from m4/open.m4.
655         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
656         access and the filename ends in a slash. Code copied from lib/open.c.
657         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
658         * tests/test-fopen.c (main): Check against bug with trailing slash.
659
660 2008-08-29  Bruno Haible  <bruno@clisp.org>
661
662         Avoid some "gcc -pedantic" warnings.
663         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
664         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
665         * lib/dirent.in.h: Likewise.
666         * lib/fcntl.in.h: Likewise.
667         * lib/float.in.h: Likewise.
668         * lib/iconv.in.h: Likewise.
669         * lib/inttypes.in.h: Likewise.
670         * lib/locale.in.h: Likewise.
671         * lib/math.in.h: Likewise.
672         * lib/netinet_in.in.h: Likewise.
673         * lib/search.in.h: Likewise.
674         * lib/signal.in.h: Likewise.
675         * lib/stdarg.in.h: Likewise.
676         * lib/stdint.in.h: Likewise.
677         * lib/stdio.in.h: Likewise.
678         * lib/stdlib.in.h: Likewise.
679         * lib/string.in.h: Likewise.
680         * lib/strings.in.h: Likewise.
681         * lib/sys_select.in.h: Likewise.
682         * lib/sys_socket.in.h: Likewise.
683         * lib/sys_stat.in.h: Likewise.
684         * lib/sys_time.in.h: Likewise.
685         * lib/sysexits.in.h: Likewise.
686         * lib/time.in.h: Likewise.
687         * lib/unistd.in.h: Likewise.
688         * lib/wchar.in.h: Likewise.
689         * lib/wctype.in.h: Likewise.
690         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
691         * modules/fchdir (Makefile.am): Likewise.
692         * modules/fcntl (Makefile.am): Likewise.
693         * modules/float (Makefile.am): Likewise.
694         * modules/iconv_open (Makefile.am): Likewise.
695         * modules/inttypes (Makefile.am): Likewise.
696         * modules/locale (Makefile.am): Likewise.
697         * modules/math (Makefile.am): Likewise.
698         * modules/netinet_in (Makefile.am): Likewise.
699         * modules/search (Makefile.am): Likewise.
700         * modules/signal (Makefile.am): Likewise.
701         * modules/stdarg (Makefile.am): Likewise.
702         * modules/stdint (Makefile.am): Likewise.
703         * modules/stdio (Makefile.am): Likewise.
704         * modules/stdlib (Makefile.am): Likewise.
705         * modules/string (Makefile.am): Likewise.
706         * modules/strings (Makefile.am): Likewise.
707         * modules/sys_select (Makefile.am): Likewise.
708         * modules/sys_socket (Makefile.am): Likewise.
709         * modules/sys_stat (Makefile.am): Likewise.
710         * modules/sys_time (Makefile.am): Likewise.
711         * modules/sysexits (Makefile.am): Likewise.
712         * modules/time (Makefile.am): Likewise.
713         * modules/unistd (Makefile.am): Likewise.
714         * modules/wchar (Makefile.am): Likewise.
715         * modules/wctype (Makefile.am): Likewise.
716         Reported by Reuben Thomas <rrt@sc3d.org>.
717
718 2008-08-29  Bruno Haible  <bruno@clisp.org>
719
720         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
721         any more.
722
723 2008-08-29  Simon Josefsson  <simon@josefsson.org>
724
725         * MODULES.html.sh (Misc): Add bitrotate.
726
727         * modules/bitrotate: New file.
728
729         * lib/bitrotate.h: New file.
730
731         * modules/bitrotate-tests: New file.
732
733         * tests/test-bitrotate.c: New file.
734
735         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
736         on the bitrotate module.
737
738         * lib/arctwo.c: Use new bitrotate module.
739
740 2008-08-29  Jim Meyering  <meyering@redhat.com>
741
742         bootstrap: merge changes from coreutils
743         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
744         of copied files.  Remove a kludge, now that this is fixed.
745         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
746         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
747         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
748
749 2008-08-29  Bruno Haible  <bruno@clisp.org>
750
751         * MODULES.html.sh: Remove --cvs-urls option.
752
753 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
754
755         maint.mk: adjust to file name change
756         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
757
758 2008-08-28  Jim Meyering  <meyering@redhat.com>
759
760         * modules/getndelim2 (License): Relicense to LGPLv2+.
761         Approved by Richard Stallman for the version of 1995, and by
762         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
763
764 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
765
766         * lib/getdelim.c (flockfile, funlockfile): Make all of them
767         dummy if one is not available.  Do not touch them if
768         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
769         (getc_maybe_unlocked): New.
770         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
771
772 2008-08-26  Eric Blake  <ebb9@byu.net>
773
774         doc/INSTALL: resync from autoconf
775         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
776         (INSTALL_PRELUDE): Delete; this is done more efficiently by
777         moving...
778         * install.texi [!autoconf]: ...here.  Resync from autoconf.
779         * INSTALL: Regenerate.
780         * INSTALL.ISO: New file.
781         * INSTALL.UTF-8: Likewise.
782
783 2008-08-26  Jim Meyering  <meyering@redhat.com>
784
785         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
786         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
787         these definitions conditional, so that they may be overridden, too.
788
789 2008-08-26  Bruno Haible  <bruno@clisp.org>
790
791         Generate INSTALL file variants with prettier quotes.
792         * doc/Makefile (INSTALL_PRELUDE): New macro.
793         (INSTALL): Use it.
794         (INSTALL.ISO, INSTALL.UTF-8): New rules.
795
796 2008-08-26  Bruno Haible  <bruno@clisp.org>
797
798         Run makeinfo in an English locale.
799         * doc/Makefile (MAKEINFO): New variable.
800
801 2008-08-26  Bruno Haible  <bruno@clisp.org>
802
803         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
804         Suggested by Eric Blake.
805
806 2008-08-25  Bruno Haible  <bruno@clisp.org>
807
808         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
809
810 2008-08-25  Eric Blake  <ebb9@byu.net>
811
812         c-stack: test that stack overflow can be caught
813         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
814         that platform allows handling stack overflow; at least OS/2 EMX
815         has sigaltstack, but crashes before transferring control to
816         handler on stack overflow.
817         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
818         check for HAVE_STACK_OVERFLOW_HANDLING.
819         Reported by Elbert Pol.
820
821 2008-08-25  Bruno Haible  <bruno@clisp.org>
822
823         * doc/posix-functions/strftime.texi: Fix description of strftime
824         module.
825
826 2008-08-24  Bruno Haible  <bruno@clisp.org>
827
828         * tests/uniwidth/test-uc_width2.c: New file.
829         * tests/uniwidth/test-uc_width2.sh: New file.
830         * modules/uniwidth/width-tests (Files): Add the new files.
831         (TESTS): Add uniwidth/test-uc_width2.sh.
832         (TESTS_ENVIRONMENT): New variable.
833         (check_PROGRAMS): Add test-uc_width2.
834         (test_uc_width2_SOURCES): New variable.
835
836         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
837         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
838         not 0x00AB.
839         Reported by Alexander V. Lukyanov <lav@netis.ru>.
840
841 2008-08-22  Eric Blake  <ebb9@byu.net>
842
843         test-lock, test-tls: mention why a test is skipped
844         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
845         skipped.
846         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
847
848         count-one-bits: relax license
849         * modules/count-one-bits (License): Relicense to LGPLv2+.
850         Suggested by Ludovic Courtès, approved by Ben Pfaff.
851
852 2008-08-22  Andreas Schwab  <schwab@suse.de>
853
854         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
855         Remove spurious space in assignment.
856
857 2008-08-21  Simon Josefsson  <simon@josefsson.org>
858
859         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
860         Paul Eggert <eggert@CS.UCLA.EDU>.
861
862 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
863
864         * modules/gettext: Add m4/threadlib.m4.
865
866 2008-08-19  Eric Blake  <ebb9@byu.net>
867
868         test-c-stack: fix compilation failure on FreeBSD 5.0
869         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
870         headers before <sys/resource.h>.
871         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
872         the bug.
873         Reported by Nelson H. F. Beebe.
874
875         strverscmp: migrate from "strverscmp.h" to <string.h>
876         * modules/string (Makefile.am): Add new hooks.
877         * modules/strverscmp (Files): Remove strverscmp.h.
878         (Depends-on): Add string.
879         (configure.ac): Add indicator.
880         (Include): Mention new header.
881         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
882         defaults.
883         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
884         results.
885         * lib/strverscmp.h: Delete.
886         * lib/string.in.h (strverscmp): Provide declaration, when needed.
887         * tests/test-strverscmp.c (includes): Adjust client.
888         * lib/check-version.c (includes): Likewise.
889         * NEWS: Document the change.
890
891         strverscmp: add unit test
892         * modules/strverscmp-tests: New file.
893         * tests/test-strverscmp.c: Likewise.
894
895 2008-08-19  Simon Josefsson  <simon@josefsson.org>
896
897         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
898         regarding Windows crypto stuff, from Mono.
899
900 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
901
902         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
903         if present, for intel RND.  Return error on failures.
904
905 2008-08-18  Ben Pfaff  <blp@gnu.org>
906
907         gitlog-to-changelog: give better diagnostic for failed pipe-open
908         * build-aux/gitlog-to-changelog: Improve error message: suggest
909         that the version of Git may be too old.
910
911 2008-08-18  Simon Josefsson  <simon@josefsson.org>
912
913         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
914         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
915
916 2008-08-18  Bruno Haible  <bruno@clisp.org>
917
918         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
919         pthread_in_use().
920
921 2008-08-18  Bruno Haible  <bruno@clisp.org>
922
923         * lib/glthread/threadlib.c: Include <pthread.h>.
924
925 2008-08-18  Bruno Haible  <bruno@clisp.org>
926
927         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
928         glthread_recursive_lock_* macros.
929         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
930         Fix syntax error.
931
932 2008-08-18  Bruno Haible  <bruno@clisp.org>
933
934         * lib/glthread/thread.c: Avoid forcing a context switch right after
935         thread creation.
936
937 2008-08-17  Bruno Haible  <bruno@clisp.org>
938
939         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
940         * lib/glthread/thread.h: Provide Win32 specific implementation.
941         * modules/thread (Files): Add lib/glthread/thread.c.
942         (Depends-on): Add lock.
943         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
944
945 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
946
947         New module 'yield'.
948         * modules/yield: New file.
949         * lib/glthread/yield.h: New file.
950         * m4/yield.m4: New file.
951         * MODULES.html.sh (Multithreading): Add yield.
952
953 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
954
955         New module 'thread'.
956         * modules/thread: New file.
957         * lib/glthread/thread.h: New file.
958         * m4/thread.m4: New file.
959         * MODULES.html.sh (Multithreading): Add thread.
960
961 2008-08-17  Bruno Haible  <bruno@clisp.org>
962
963         * lib/glthread/lock.h: Include <stdlib.h> always.
964         * lib/glthread/tls.h: Likewise.
965         * lib/glthread/cond.h: Likewise.
966
967 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
968
969         New module 'cond'.
970         * modules/cond: New file.
971         * lib/glthread/cond.h: New file.
972         * lib/glthread/cond.c: New file.
973         * m4/cond.m4: New file.
974         * MODULES.html.sh (Multithreading): Add cond.
975
976 2008-08-16  Eric Blake  <ebb9@byu.net>
977
978         c-stack: fix regression on Irix 5.3 from 2008-06-21
979         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
980         sa_sigaction...
981         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
982         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
983         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
984         * modules/signal (Makefile.am): Use the value.
985         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
986         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
987         * doc/posix-headers/signal.texi (signal.h): Document this
988         portability issue.
989         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
990         Reported by Tom G. Christensen.
991
992 2008-08-17  Bruno Haible  <bruno@clisp.org>
993
994         New module 'threadlib'.
995         * modules/threadlib: New file.
996         * lib/glthread/threadlib.c: New file, extracted from
997         lib/glthread/lock.c.
998         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
999         functions.
1000         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
1001         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
1002         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
1003         macros.
1004         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
1005         (gl_DISABLE_THREADS): Remove macro.
1006         * modules/lock (Files): Remove build-aux/config.rpath.
1007         (Depends-on): Remove havelib. Add threadlib.
1008         (configure.ac-early): Remove section.
1009         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
1010         * modules/tls (Depends-on): Remove lock. Add threadlib.
1011         (Link): New section, copied from threadlib.
1012         * MODULES.html.sh (Multithreading): Add threadlib.
1013
1014 2008-08-14  Bruno Haible  <bruno@clisp.org>
1015
1016         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
1017         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
1018         glthread_rwlock_unlock, glthread_rwlock_destroy,
1019         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
1020         glthread_recursive_lock_destroy): Define as macros always.
1021         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
1022         glthread_lock_lock.
1023         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
1024         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
1025         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
1026         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
1027         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
1028         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
1029         (glthread_recursive_lock_lock_func): Renamed from
1030         glthread_recursive_lock_lock.
1031         (glthread_recursive_lock_unlock_func): Renamed from
1032         glthread_recursive_lock_unlock.
1033         (glthread_recursive_lock_destroy_func): Renamed from
1034         glthread_recursive_lock_destroy.
1035
1036 2008-08-14  Bruno Haible  <bruno@clisp.org>
1037
1038         * lib/glthread/lock.h: Renamed from lib/lock.h.
1039         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
1040         * lib/glthread/tls.h: Renamed from lib/tls.h.
1041         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
1042         * lib/fstrcmp.c: Update includes.
1043         * lib/strsignal.c: Update includes.
1044         * modules/lock (Files, Makefile.am): Update.
1045         (Include): Change to "glthread/lock.h".
1046         * modules/tls (Files, Makefile.am): Update.
1047         (Include): Change to "glthread/tls.h".
1048         * tests/test-lock.c: Update includes.
1049         * tests/test-tls.c: Update includes.
1050         * NEWS: Mention the renamed header files.
1051
1052 2008-08-11  Jim Meyering  <meyering@redhat.com>
1053
1054         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
1055
1056 2008-08-11  Eric Blake  <ebb9@byu.net>
1057
1058         test-c-stack: avoid C99-ism
1059         * tests/test-c-stack.c (main): Fix whitespace, move declaration
1060         before statement.
1061         Reported by Alain Guibert.
1062
1063 2008-08-10  Jim Meyering  <meyering@redhat.com>
1064
1065         ensure that return value of uinttostr et al are not ignored
1066         * lib/inttostr.h (__GNUC_PREREQ): Define.
1067         (__attribute_warn_unused_result__): Define.
1068         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
1069
1070 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
1071
1072         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
1073         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
1074
1075 2008-08-07  Jim Meyering  <meyering@redhat.com>
1076
1077         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
1078
1079         * modules/mkstemp (License): Relicense under LGPLv2+.
1080         * modules/tempname (License): Likewise.
1081
1082 2008-08-06  Bruno Haible  <bruno@clisp.org>
1083
1084         * lib/poll.c (poll): Further micro-optimization.
1085
1086 2008-08-06  Jim Meyering  <meyering@redhat.com>
1087
1088         inet_pton.c: use locale-independent tolower
1089         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
1090         (inet_pton6): Use c_tolower rather than tolower.
1091         * modules/inet_pton (Depends-on): Add c-ctype.
1092
1093 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
1094
1095         * lib/poll.c (poll): Avoid division when timeout is 0, cache
1096         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
1097
1098 2008-08-06  Jim Meyering  <meyering@redhat.com>
1099
1100         * modules/inet_pton (License): Relicense under LGPLv2+.
1101
1102 2008-08-03  Bruno Haible  <bruno@clisp.org>
1103
1104         Additional non-aborting API for lock and tls.
1105         * lib/lock.h: Include <errno.h>.
1106         (glthread_lock_init): New macro/function.
1107         (gl_lock_init): Define as wrapper around glthread_lock_init.
1108         (glthread_lock_lock): New macro/function.
1109         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
1110         (glthread_lock_unlock): New macro/function.
1111         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
1112         (glthread_lock_destroy): New macro/function.
1113         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
1114         (glthread_rwlock_init): New macro/function.
1115         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
1116         (glthread_rwlock_rdlock): New macro/function.
1117         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
1118         (glthread_rwlock_wrlock): New macro/function.
1119         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
1120         (glthread_rwlock_unlock): New macro/function.
1121         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
1122         (glthread_rwlock_destroy): New macro/function.
1123         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
1124         (glthread_recursive_lock_init): New macro/function.
1125         (gl_recursive_lock_init): Define as wrapper around
1126         glthread_recursive_lock_init.
1127         (glthread_recursive_lock_lock): New macro/function.
1128         (gl_recursive_lock_lock): Define as wrapper around
1129         glthread_recursive_lock_lock.
1130         (glthread_recursive_lock_unlock): New macro/function.
1131         (gl_recursive_lock_unlock): Define as wrapper around
1132         glthread_recursive_lock_unlock.
1133         (glthread_recursive_lock_destroy): New macro/function.
1134         (gl_recursive_lock_destroy): Define as wrapper around
1135         glthread_recursive_lock_destroy.
1136         (glthread_once): New macro/function.
1137         (gl_once): Define as wrapper around glthread_once.
1138         Update function declarations.
1139         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
1140         glthread_rwlock_init. Return error code.
1141         (glthread_rwlock_rdlock_multithreaded): Renamed from
1142         glthread_rwlock_rdlock. Return error code.
1143         (glthread_rwlock_wrlock_multithreaded): Renamed from
1144         glthread_rwlock_wrlock. Return error code.
1145         (glthread_rwlock_unlock_multithreaded): Renamed from
1146         glthread_rwlock_unlock. Return error code.
1147         (glthread_rwlock_destroy_multithreaded): Renamed from
1148         glthread_rwlock_destroy. Return error code.
1149         (glthread_recursive_lock_init_multithreaded): Renamed from
1150         glthread_recursive_lock_init. Return error code.
1151         (glthread_recursive_lock_lock_multithreaded): Renamed from
1152         glthread_recursive_lock_lock. Return error code.
1153         (glthread_recursive_lock_unlock_multithreaded): Renamed from
1154         glthread_recursive_lock_unlock. Return error code.
1155         (glthread_recursive_lock_destroy_multithreaded): Renamed from
1156         glthread_recursive_lock_destroy. Return error code.
1157         (glthread_once_call): Make static.
1158         (glthread_once_multithreaded): Renamed from glthread_once.
1159         * lib/tls.h: Include <errno.h>.
1160         (glthread_tls_key_init): New macro/function.
1161         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
1162         (glthread_tls_set): New macro/function.
1163         (gl_tls_set): Define as wrapper around glthread_tls_set.
1164         (glthread_tls_key_destroy): New macro/function.
1165         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
1166         Update function declarations.
1167         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
1168         glthread_tls_get.
1169         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
1170
1171 2008-08-04  Eric Blake  <ebb9@byu.net>
1172
1173         gnumakefile: use space, not TAB, outside of targets
1174         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
1175
1176 2008-08-02  Jim Meyering  <meyering@redhat.com>
1177
1178         getdate.y: avoid locale-dependent date parsing failure
1179         In Turkish locales, getdate would fail to recognize keywords
1180         containing a lowercase "i".  The solution is not to rely on
1181         locale-sensitive case-conversion.
1182         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
1183         (lookup_word): Use c_toupper in place of toupper.
1184         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
1185         Reported by Vefa Bicakci <bicave@superonline.com> in
1186         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
1187         * modules/getdate (Depends-on): Add c-ctype.
1188
1189 2008-08-02  Bruno Haible  <bruno@clisp.org>
1190
1191         * gnulib-tool (func_import): When updating or creating a .gitignore
1192         file, prepend each added line with a slash, and ignore leading slashes
1193         from the existing lines.
1194         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
1195
1196 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1197
1198         Portability fix for GNU make 3.79.1.
1199         * top/GNUmakefile: Avoid 'else COND', which older GNU make
1200         versions do not understand.
1201
1202 2008-08-01  Bruno Haible  <bruno@clisp.org>
1203
1204         Work around bug of HP-UX 10.20 cc with -0.0 literal.
1205         * tests/test-isnanf.h (zero): New variable.
1206         (main): Avoid literal -0.0f.
1207         * tests/test-isnand.h (zero): New variable.
1208         (main): Avoid literal -0.0.
1209         * tests/test-isnanl.h (zero): New variable.
1210         (main): Avoid literal -0.0L.
1211         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
1212         (test_float, test_double, test_long_double): Avoid literals -0.0f,
1213         -0.0, -0.0L.
1214         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
1215         (test_signbitd): Avoid literal -0.0.
1216         (test_signbitl): Avoid literal -0.0L.
1217         * tests/test-ceilf1.c (zero): New variable.
1218         (main): Avoid literal -0.0f.
1219         * tests/test-ceill.c (zero): New variable.
1220         (main): Avoid literal -0.0L.
1221         * tests/test-floorf1.c (zero): New variable.
1222         (main): Avoid literal -0.0f.
1223         * tests/test-floorl.c (zero): New variable.
1224         (main): Avoid literal -0.0L.
1225         * tests/test-roundf1.c (zero): New variable.
1226         (main): Avoid literal -0.0f.
1227         * tests/test-round1.c (zero): New variable.
1228         (main): Avoid literal -0.0.
1229         * tests/test-roundl.c (zero): New variable.
1230         (main): Avoid literal -0.0L.
1231         * tests/test-truncf1.c (zero): New variable.
1232         (main): Avoid literal -0.0f.
1233         * tests/test-trunc1.c (zero): New variable.
1234         (main): Avoid literal -0.0.
1235         * tests/test-truncl.c (zero): New variable.
1236         (main): Avoid literal -0.0L.
1237         * tests/test-frexp.c (zero): New variable.
1238         (main): Avoid literal -0.0.
1239         * tests/test-frexpl.c (zero): New variable.
1240         (main): Avoid literal -0.0L.
1241         * tests/test-ldexpl.c (zero): New variable.
1242         (main): Avoid literal -0.0L.
1243         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
1244         (zerod, zerol): New variables.
1245         (test_function): Avoid literals -0.0, -0.0L.
1246         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
1247         (zerod, zerol): New variables.
1248         (test_function): Avoid literals -0.0, -0.0L.
1249         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
1250         (zerod, zerol): New variables.
1251         (test_function): Avoid literals -0.0, -0.0L.
1252         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
1253         (zerod, zerol): New variables.
1254         (test_function): Avoid literals -0.0, -0.0L.
1255         * tests/test-strtod.c (zero): New variable.
1256         (main): Avoid literal -0.0.
1257         Reported by Jonathan C. Patschke <jp@centtech.com>.
1258
1259 2008-07-31  Jim Meyering  <meyering@redhat.com>
1260
1261         sha256.h: correct definition of SHA224_DIGEST_SIZE
1262         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
1263         Reported by Paulie Pena IV <paulie4@gmail.com>.
1264         Define as 224 / 8, rather than as a literal.
1265         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
1266         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
1267         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
1268
1269 2008-07-31  Bruno Haible  <bruno@clisp.org>
1270
1271         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
1272         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
1273         Reported by Jonathan Patschke <jp@centtech.com>.
1274
1275 2008-07-31  Bruno Haible  <bruno@clisp.org>
1276
1277         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
1278         Reported by Paolo Bonzini <bonzini@gnu.org>.
1279
1280 2008-07-30  Eric Blake  <ebb9@byu.net>
1281
1282         test-strtod: allow compilation without -lm
1283         * tests/test-strtod.c (main): Avoid link dependence on fabs.
1284         Reported by Dennis Clarke <blastwave@gmail.com>.
1285
1286 2008-07-28  Jim Meyering  <meyering@redhat.com>
1287
1288         bootstrap: work also when there are no .po files in po/
1289         * build-aux/bootstrap (update_po_files): Complete the change
1290         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
1291
1292 2008-07-27  Jim Meyering  <meyering@redhat.com>
1293
1294         * users.txt: Add zile.
1295
1296 2008-07-26  Ben Pfaff  <blp@gnu.org>
1297
1298         Add missing dependencies on new m4/exponent[fdl].m4 files.
1299         * modules/isnanf-nolibm: Add m4/exponentf.m4.
1300         * modules/isnand-nolibm: Add m4/exponentd.m4.
1301         * modules/isnanl-nolibm: Add m4/exponentl.m4.
1302         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
1303         m4/isnan[fdl].m4, because the macros actually used moved.
1304         Reported by Jim Meyering.
1305
1306 2008-07-14  Ben Pfaff  <blp@gnu.org>
1307
1308         Add isinf module.
1309         * lib/isinf.c: New file.
1310         * lib/math.in.h: Define isinf macro if we have decided to replace
1311         it.
1312         * m4/isinf.m4: New file.
1313         * m4/math_h.m4: Initialize and substitute variables for isinf
1314         module.
1315         * modules/isinf: New file.
1316         * modules/isinf-tests: New file.
1317         * modules/math: Add substitutions for new module.
1318         * tests/test-isinf.c: New file.
1319         * doc/posix-functions/isinf.texi: Mention new module.
1320         * MODULES.html.sh: Mention new module.
1321
1322 2008-07-14  Ben Pfaff  <blp@gnu.org>
1323
1324         Factor out some macros for use by additional modules.
1325         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
1326         exponentf.m4.
1327         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
1328         exponentd.m4.
1329         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
1330         file exponentl.m4.
1331         * m4/exponentf.m4: New file.
1332         * m4/exponentd.m4: New file.
1333         * m4/exponentl.m4: New file.
1334         * modules/isnanf: Use new file m4/exponentf.m4.
1335         * modules/isnand: Use new file m4/exponentd.m4.
1336         * modules/isnanl: Use new file m4/exponentl.m4.
1337
1338 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
1339
1340         mktime.c: normalize tp->tm_isdst value to -1/0/1.
1341         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
1342         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
1343         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
1344
1345         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
1346         readlink on platforms without PATH_MAX.
1347
1348 2008-07-21  Eric Blake  <ebb9@byu.net>
1349
1350         Warn, not fail, on stale version.
1351         * top/GNUmakefile (_curr-ver): Tone down previous patch.
1352
1353         Don't allow installation with stale devel version number.
1354         * top/GNUmakefile (_is-install-target): New macro.
1355         (_curr-ver): Forbid installation with stale version number.
1356
1357 2008-07-20  Bruno Haible  <bruno@clisp.org>
1358
1359         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
1360         TESTS_ENVIRONMENT.
1361         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
1362
1363 2008-07-20  Bruno Haible  <bruno@clisp.org>
1364
1365         * lib/c-stack.h (c_stack_action): Add documentation.
1366         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
1367
1368 2008-07-20  Bruno Haible  <bruno@clisp.org>
1369
1370         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
1371         * modules/readlink (License): Likewise.
1372
1373 2008-07-17  Eric Blake  <ebb9@byu.net>
1374
1375         * modules/c-stack (Link): Fix typo.
1376
1377         Make c-stack use libsigsegv, when available.
1378         * modules/c-stack (Depends-on): Add libsigsegv.
1379         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
1380         needed.
1381         * lib/c-stack.c (SIGSTKSZ): Define fallback.
1382         (segv_handler, overflow_handler, c_stack_action)
1383         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
1384         implementation when libsigsegv is available, but only when using
1385         the library is necessary.
1386         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
1387         comment, explaining why XSI check fails on Linux.
1388         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
1389         * tests/test-c-stack2.sh: Tweak skip message.
1390         * NEWS: Document new link-time requirements.
1391
1392 2008-07-16  Eric Blake  <ebb9@byu.net>
1393
1394         c-stack: Expose false positives when not using libsigsegv.
1395         * modules/c-stack-tests (Files): Expand test.
1396         * tests/test-c-stack.c (main): Add means to conditionally trigger
1397         non-overflow SIGSEGV.
1398         * tests/test-c-stack2.sh: New file.
1399
1400 2008-07-14  Bruno Haible  <bruno@clisp.org>
1401
1402         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
1403         Reported by Eric Blake.
1404
1405 2008-07-14  Sam Steingold  <sds@gnu.org>
1406             Bruno Haible  <bruno@clisp.org>
1407
1408         New module libsigsegv.
1409         * modules/libsigsegv: New file.
1410         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
1411         modifications.
1412         * MODULES.html.sh (Signal handling): New section.
1413
1414 2008-07-14  Bruno Haible  <bruno@clisp.org>
1415
1416         * modules/unictype/ctype-* (Description): Add the word "function".
1417         Improves the resulting doc in MODULES.html.
1418
1419 2008-07-12  Ben Pfaff  <blp@gnu.org>
1420
1421         Add longlong module.
1422         * modules/longlong: New file.
1423
1424 2008-07-12  Bruno Haible  <bruno@clisp.org>
1425
1426         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
1427         to empty.
1428
1429 2008-07-10  Ben Pfaff  <blp@gnu.org>
1430
1431         Add isnan module.
1432         * doc/posix-functions/isnan.texi: Mention new module.
1433         * lib/math.in.h: Define isnan macro if we have decided to replace
1434         it.
1435         * m4/isnan.m4: New file.
1436         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
1437         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
1438         also.
1439         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
1440         redundancy.
1441         * m4/math_h.m4: Initialize and substitute variables for isnan
1442         module.
1443         * modules/isnan: New file.
1444         * modules/isnan-tests: New file.
1445         * modules/math: Add substitutions for new module.
1446         * tests/test-isnan.c: New file.
1447         * MODULES.html.sh: Mention new module.
1448
1449 2008-07-10  Ben Pfaff  <blp@gnu.org>
1450
1451         Add isnanf module.
1452         * lib/isnanf.m4: New file.
1453         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
1454         (gl_HAVE_ISNANF_IN_LIBM): New macro.
1455         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
1456         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
1457         * modules/isnanf: New file.
1458         * modules/isnanf-tests: New file.
1459         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
1460         files.
1461         * tests/test-isnanf-nolibm.c: factored most of its contents into
1462         new file tests/test-isnanf.h.
1463         * tests/test-isnanf.h: New file.
1464         * tests/test-isnanf.c: New file.
1465         * MODULES.html.sh: Mention new module.
1466         * doc/glibc-functions/isnanf.texi: Mention new module.
1467
1468 2008-07-10  Ben Pfaff  <blp@gnu.org>
1469
1470         Add isnand module.
1471         * lib/isnand.h: New file.
1472         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
1473         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
1474         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
1475         functionality also.
1476         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
1477         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
1478         (gl_HAVE_ISNAND_IN_LIBM): New macro.
1479         * modules/isnand: New file.
1480         * modules/isnand-tests: New file.
1481         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
1482         files.
1483         * tests/test-isnand-nolibm.c: factored most of its contents into
1484         new file tests/test-isnand.h.
1485         * tests/test-isnand.h: New file.
1486         * tests/test-isnand.c: New file.
1487         * MODULES.html.sh: Mention new module.
1488
1489 2008-07-10  Ben Pfaff  <blp@gnu.org>
1490
1491         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
1492         * lib/isnand.h: Rename lib/isnand-nolibm.h.
1493         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
1494         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
1495         * modules/isnanf-nolibm: Update references to renamed files.
1496         * modules/isnand-nolibm: Likewise.
1497         * modules/isnanf-nolibm-tests: Likewise.
1498         * modules/isnand-nolibm-tests: Likewise.
1499         * lib/frexp.c: Likewise.
1500         * lib/isfinite.c: Likewise.
1501         * lib/signbitd.c: Likewise.
1502         * lib/signbitf.c: Likewise.
1503         * lib/vasnprintf.c: Likewise.
1504         * tests/test-ceilf1.c: Likewise.
1505         * tests/test-ceilf2.c: Likewise.
1506         * tests/test-floorf1.c: Likewise.
1507         * tests/test-floorf2.c: Likewise.
1508         * tests/test-frexp.c: Likewise.
1509         * tests/test-round1.c: Likewise.
1510         * tests/test-round2.c: Likewise.
1511         * tests/test-roundf1.c: Likewise.
1512         * tests/test-strtod.c: Likewise.
1513         * tests/test-trunc1.c: Likewise.
1514         * tests/test-trunc2.c: Likewise.
1515         * tests/test-truncf1.c: Likewise.
1516         * tests/test-truncf2.c: Likewise.
1517         * NEWS: Mention the renamed header files.
1518
1519 2008-07-11  Jim Meyering  <meyering@redhat.com>
1520
1521         vc-list-files: make the last-resort awk code more portable
1522         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
1523         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
1524         does not support it.
1525
1526 2008-07-10  Eric Blake  <ebb9@byu.net>
1527
1528         Work with tar's bootstrap.
1529         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
1530         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
1531         an m4 comment.
1532
1533 2008-07-09  Jim Meyering  <meyering@redhat.com>
1534
1535         posix-shell.m4: fix typo that made this test malfunction
1536         * m4/posix-shell.m4: Remove capitalization in variable name.
1537
1538 2008-07-08  Bruno Haible  <bruno@clisp.org>
1539
1540         * m4/onceonly.m4: Update comments.
1541         Reported by Ben Pfaff <blp@cs.stanford.edu>.
1542
1543 2008-07-04  Jim Meyering  <meyering@redhat.com>
1544
1545         * users.txt: Add vc-dwim.
1546         (bison, coreutils): Use the gitweb URL.
1547
1548 2008-07-03  Jim Meyering  <meyering@redhat.com>
1549
1550         * users.txt: Add libffcall.  From Sam Steingold.
1551
1552 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
1553
1554         getdate.y: do not ignore TZ with relative day, month or year offset
1555         * lib/getdate.y (get_date): Move the tz-handling block to follow the
1556         relative-date-handling, since otherwise, the latter would clobber the
1557         sole output (an updated Start value) of the tz-handling block.
1558         * tests/test-getdate.c: Tests for the fix
1559
1560 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1561
1562         Recognize 'foo_LIBRARIES += libgnu.a'.
1563         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
1564         makefile snippet has already specified an installation location,
1565         also using '+='.
1566
1567 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
1568
1569         getdate.y: factor out common actions
1570         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
1571         Use them in place of open-coded actions.
1572
1573 2008-07-01  Simon Josefsson  <simon@josefsson.org>
1574
1575         Add self-test for getdate module.
1576         * modules/getdate-tests: New file.
1577         * tests/test-getdate.c: New file.
1578
1579 2008-06-29  Bruno Haible  <bruno@clisp.org>
1580
1581         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
1582         .gitignore.
1583         Reported by Sylvain Beucler <beuc@beuc.net>.
1584
1585 2008-06-29  Bruno Haible  <bruno@clisp.org>
1586
1587         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
1588         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
1589
1590 2008-06-29  Bruno Haible  <bruno@clisp.org>
1591
1592         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
1593         EXTRA_DIST.
1594         Reported by Sylvain Beucler <beuc@beuc.net>.
1595
1596 2008-06-26  Jim Meyering  <meyering@redhat.com>
1597
1598         make several modules depend on the "open" module
1599         This provides slightly increased consistency when opening-for-write
1600         the name of a non-directory spelled with a trailing slash.
1601         * modules/chdir-safer: Likewise.
1602         * modules/chown: Likewise.
1603         * modules/clean-temp: Likewise.
1604         * modules/copy-file: Likewise.
1605         * modules/fchdir: Likewise.
1606         * modules/fcntl-safer: Likewise.
1607         * modules/pipe: Likewise.
1608         * modules/utime: Likewise.
1609         Prompted by Eric Blake and Bruno Haible.
1610
1611 2008-06-24  Andreas Schwab  <schwab@suse.de>
1612
1613         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
1614         literals can be used as initializers for global variables.
1615
1616 2008-06-23  Eric Blake  <ebb9@byu.net>
1617
1618         Make gnulib-cache.m4 easier to diff.
1619         * gnulib-tool (func_import): Allow newlines when reading cached
1620         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
1621
1622 2008-06-23  Bruno Haible  <bruno@clisp.org>
1623
1624         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
1625         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
1626         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
1627         m4/signalblocking.m4.
1628         (gl_PREREQ_SIGACTION): Don't invoke it.
1629         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
1630         gl_PREREQ_SIG_HANDLER_H.
1631         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
1632         Don't check for sigaction here.
1633
1634 2008-06-23  Bruno Haible  <bruno@clisp.org>
1635
1636         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
1637         (install_handlers): Don't set the SA_RESETHAND flag.
1638
1639 2008-06-23  Bruno Haible  <bruno@clisp.org>
1640
1641         * m4/sigaction.m4: Comment fixes.
1642         * lib/signal.in.h: Likewise.
1643
1644 2008-06-23  Eric Blake  <ebb9@byu.net>
1645
1646         Fix typo.
1647         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
1648
1649         Avoid SA_ namespace.
1650         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
1651         Reported by Ralf Wildenhues.
1652
1653         Avoid test failure due to SA_RESTORER.
1654         * tests/test-sigaction.c (SA_MASK): New macro.
1655         (main): Avoid failing due to extension flags being set.
1656         Reported by Jim Meyering.
1657
1658         Revert use of sig-handler.h in sigprocmask.c.
1659         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
1660         it requires the existence of struct sigaction.
1661         * lib/sigprocmask.c (handler_t): Restore typedef.
1662         (rpl_signal, old_handlers): Use local type.
1663
1664 2008-06-22  Bruno Haible  <bruno@clisp.org>
1665
1666         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
1667         conditionally.
1668         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1669
1670 2008-06-22  Bruno Haible  <bruno@clisp.org>
1671
1672         * doc/posix-functions/siginterrupt.texi: Move note.
1673
1674         * lib/signal.in.h (SA_RESTART): New macro.
1675         * lib/sigaction.c: Update comment.
1676
1677         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
1678
1679         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
1680         (gl_PREREQ_SIGPROCMASK): Invoke it.
1681         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
1682
1683         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
1684
1685         * lib/sigprocmask.c: Update a comment.
1686
1687 2008-06-21  Eric Blake  <ebb9@byu.net>
1688
1689         Use sigaction module rather than signal().
1690         * modules/c-stack (Depends-on): Add sigaction.
1691         * modules/fatal-signal (Depends-on): Likewise.
1692         * modules/nanosleep (Depends-on): Likewise.
1693         * modules/sigprocmask (Files): Add sig-handler.h.
1694         * modules/sigaction (Files): Likewise.
1695         * lib/sig-handler.h (get_handler): New file, suggested by Paul
1696         Eggert.
1697         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
1698         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
1699         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
1700         (init_fatal_signals): Likewise.
1701         * lib/nanosleep.c (rpl_nanosleep): Likewise.
1702         (siginterrupt): Delete fallback.
1703         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
1704         instead.
1705         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
1706         siginterrupt.
1707
1708         New module sigaction, for mingw.
1709         * modules/sigaction: New module...
1710         * modules/sigaction-tests: ...and its test.
1711         * m4/sigaction.m4: New file.
1712         * lib/sigaction.c: Likewise.
1713         * tests/test-sigaction.c: Likewise.
1714         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
1715         * modules/signal (Makefile.am): Likewise.
1716         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
1717         needed.
1718         * doc/posix-headers/signal.texi (signal.h): Mention provided
1719         types.
1720         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
1721         that sigaction is preferable.
1722         * doc/posix-functions/sigaction.texi (sigaction): Mention new
1723         module.
1724         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
1725         sigaction.
1726
1727         Improve robustness of sigprocmask by overriding signal.
1728         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
1729         is in use.
1730         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
1731         (SIGKILL, SIGSTOP): Provide fallbacks.
1732         (rpl_signal): Implement.
1733         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
1734         signal can be called inside handlers.
1735
1736         Fix nanosleep module on mingw.
1737         * modules/nanosleep (Depends-on): Add sys_select.
1738         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
1739
1740         Fix licensing of sigprocmask.
1741         * modules/raise (License): Relicense as LGPL.
1742
1743 2008-06-21  Bruno Haible  <bruno@clisp.org>
1744
1745         * lib/propername.c (proper_name_utf8): Don't use the transliterated
1746         result if it contains question marks.
1747         Reported by Michael Geng <linux@michaelgeng.de>.
1748
1749 2008-06-19  Bruno Haible  <bruno@clisp.org>
1750
1751         Fix CVS-ism.
1752         * doc/gnulib.texi: Include updated-stamp.texi.
1753         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
1754         (updated-stamp.texi): New rule.
1755         (gnulib.info): Depend on it.
1756         * doc/.gitignore: Add updated-stamp.texi.
1757         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
1758
1759 2008-06-19  Bruno Haible  <bruno@clisp.org>
1760
1761         * doc/Makefile (gnulib.info): Update and simplify dependencies.
1762         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
1763
1764 2008-06-19  Eric Blake  <ebb9@byu.net>
1765
1766         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
1767         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
1768         Reported by Stepan Kasal.
1769
1770 2008-06-18  Bruno Haible  <bruno@clisp.org>
1771
1772         * lib/fatal-signal.c (init_fatal_signals): Add comment.
1773         Reported by Eric Blake.
1774
1775 2008-06-18  Eric Blake  <ebb9@byu.net>
1776
1777         Work around cygwin 1.5.25 strsignal bug.
1778         * tests/test-strsignal.c: Allow for const char *.
1779         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
1780
1781 2008-06-18  Simon Josefsson  <simon@josefsson.org>
1782
1783         * users.txt: Update URL to article and add author/date
1784         information.
1785
1786 2008-06-17  Bruno Haible  <bruno@clisp.org>
1787
1788         New macro gl_DISABLE_THREADS.
1789         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
1790         if the user did not pass --enable-threads or --disable-threads option.
1791         (gl_DISABLE_THREADS): New macro.
1792         Reported by Eric Blake <ebb9@byu.net>.
1793
1794 2008-06-17  Bruno Haible  <bruno@clisp.org>
1795
1796         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
1797         when the macro ignores it.
1798         Based on a patch by Eric Blake <ebb9@byu.net>.
1799
1800 2008-06-17  Bruno Haible  <bruno@clisp.org>
1801
1802         * modules/tls (License): Change to LGPLv2+.
1803         Reported by Eric Blake.
1804
1805 2008-06-17  Eric Blake  <ebb9@byu.net>
1806
1807         Simplify c-stack prerequisites.
1808         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
1809         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
1810         no longer requires <ucontext.h> to exist.  Optimize setrlimit
1811         check.
1812         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
1813         <sys/resource.h>.
1814
1815         Move c-stack test into testsuite.
1816         * modules/c-stack-tests: New file.
1817         * lib/c-stack.c [DEBUG]: Move test program...
1818         * tests/test-c-stack.c: ...into this new file.  Skip rather than
1819         fail test if sigaltstack is lacking.
1820         * tests/test-c-stack.sh: New driver file.
1821
1822 2008-06-16  Eric Blake  <ebb9@byu.net>
1823
1824         Use raise module consistently.
1825         * modules/fatal-signal (Depends-on): Add raise.
1826         * modules/sigprocmask (Depends-on): Likewise.
1827         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
1828         * lib/sigprocmask.c (sigprocmask): Likewise.
1829         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
1830         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
1831
1832         Fix compliance bug in sigpending.
1833         * lib/sigprocmask.c (sigpending): Return pending array via
1834         parameter, not return value.
1835
1836 2008-06-14  Eric Blake  <ebb9@byu.net>
1837
1838         Improve obstack-printf test code.
1839         * tests/test-obstack-printf.c (test_function): Fix comment, and
1840         simplify usage of obstack_* in macros.  Add a test for coverage.
1841         Reported by Bruno Haible.
1842
1843 2008-06-14  Bruno Haible  <bruno@clisp.org>
1844
1845         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
1846         array size as a constant, not as a const variable.
1847         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
1848         AC_USE_SYSTEM_EXTENSIONS.
1849         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
1850         Test whether the obstack_printf function actually exists.
1851         * modules/obstack-printf (Depends-on): Add extensions.
1852         (Include): Remove obstack.h.
1853         * modules/obstack-printf-posix (Depends-on): Add extensions.
1854         (Include): Remove obstack.h.
1855
1856 2008-06-13  Eric Blake  <ebb9@byu.net>
1857
1858         Add obstack-printf and obstack-printf-posix modules.
1859         * modules/obstack-printf: New file.
1860         * modules/obstack-printf-posix: Likewise.
1861         * MODULES.html.sh (Misc): Mention them.
1862         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1863         Likewise.
1864         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1865         Likewise.
1866         * modules/stdio (Makefile.am): Accomodate new modules.
1867         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
1868         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
1869         Declare.
1870         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
1871         functions.
1872         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
1873         (gl_REPLACE_OBSTACK_PRINTF): New macros
1874         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
1875         * tests/test-obstack-printf.c: New file.
1876         * modules/obstack-printf-tests: Likewise.
1877         * modules/obstack-printf-posix-tests: Likewise.
1878
1879 2008-06-11  Bruno Haible  <bruno@clisp.org>
1880
1881         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
1882         * lib/open.c: Include errno.h.
1883         (open): Fail when attempting to write to a file that has a trailing
1884         slash.
1885         * tests/test-open.c (main): Test against trailing slash bug.
1886         * doc/posix-functions/open.texi: Mention the trailing slash bug.
1887
1888 2008-06-10  Bruno Haible  <bruno@clisp.org>
1889
1890         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
1891         for $? to work inside the trap command, with various /bin/sh-s.
1892         * tests/test-vc-list-files-cvs.sh: Likewise.
1893
1894 2008-06-10  Bruno Haible  <bruno@clisp.org>
1895
1896         * lib/acl-internal.h: Don't include gettext.h here.
1897         * lib/set-mode-acl.c: Include gettext.h here.
1898         * lib/copy-acl.c: Likewise.
1899
1900 2008-06-10  Bruno Haible  <bruno@clisp.org>
1901
1902         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
1903         * lib/wait-process.c (wait_subprocess): Likewise.
1904         * lib/execute.h (execute): Add termsigp argument.
1905         * lib/execute.c (execute): Likewise.
1906         * lib/csharpcomp.c (compile_csharp_using_pnet,
1907         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
1908         * lib/csharpexec.c (execute_csharp_using_pnet,
1909         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
1910         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
1911         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
1912         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
1913         is_jikes_present): Update.
1914         * lib/javaexec.c (execute_java_class): Update.
1915         * lib/javaversion.c (execute_and_read_line): Update.
1916         * NEWS: Document the changes.
1917         Reported by Eric Blake.
1918
1919 2008-06-10  Eric Blake  <ebb9@byu.net>
1920
1921         Add missing include.
1922         * tests/test-strstr.c (includes): Add <signal.h>.
1923         * tests/test-strcasestr.c (includes): Likewise.
1924         * tests/test-memmem.c (includes): Likewise.
1925
1926 2008-06-10  Bruno Haible  <bruno@clisp.org>
1927
1928         * lib/wait-process.c (wait_subprocess): Add an assertion.
1929
1930 2008-06-10  Bruno Haible  <bruno@clisp.org>
1931
1932         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
1933
1934 2008-06-10  Bruno Haible  <bruno@clisp.org>
1935
1936         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
1937         using alarm().
1938         * tests/test-strcasestr.c (main): Likewise.
1939         * tests/test-strstr.c (main): Likewise.
1940
1941 2008-06-09  Bruno Haible  <bruno@clisp.org>
1942
1943         Work around the Solaris 10 ACE ACLs ABI change.
1944         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
1945         declare if ACL_NO_TRIVIAL is present.
1946         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
1947         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
1948         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
1949         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
1950         define if ACL_NO_TRIVIAL is present.
1951         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
1952         and use the current ABI.
1953         (file_has_acl): Use same #if condition as elsewhere.
1954         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
1955         in use, and use the current ABI.
1956         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
1957         Reported by Jim Meyering.
1958
1959 2008-06-09  Eric Blake  <ebb9@byu.net>
1960
1961         Work around environments that (stupidly) ignore SIGALRM.
1962         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
1963         before using alarm().
1964         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1965         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1966         Reported by Ian Beckwith <ianb@erislabs.net>.
1967
1968         Produce autobuild blurb earlier in log.
1969         * modules/autobuild (configure.ac-early): Move AB_INIT here.
1970
1971 2008-06-09  Jim Meyering  <meyering@redhat.com>
1972         and Ondřej Vašík  <ovasik@redhat.com>
1973
1974         utimens.c: correct kernel bug work-around
1975         Ondřej Vašík found that the invalid return value of 280 indicates
1976         failure, not success, and the kernel bug we're trying to work
1977         around affects not just the utimensat call, but also the fallback
1978         futimens call.
1979         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
1980         not success.
1981         [HAVE_FUTIMENS]: Use the same work-around, here.
1982
1983 2008-06-09  Jim Meyering  <meyering@redhat.com>
1984
1985         add more guards around definition of ACE_-related code
1986         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
1987         ALLOW and ACE_OWNER are also defined.
1988
1989 2008-06-08  Bruno Haible  <bruno@clisp.org>
1990
1991         * lib/acl-internal.h: Add me as co-author.
1992         * lib/file-has-acl.c: Likewise.
1993         * lib/set-mode-acl.c: Likewise.
1994         * lib/copy-acl.c: Likewise.
1995
1996 2008-06-08  Bruno Haible  <bruno@clisp.org>
1997
1998         Add support for AIX ACLs.
1999         * lib/acl-internal.h (acl_nontrivial): New declaration.
2000         * lib/file-has-acl.c (acl_nontrivial): New function.
2001         (file_has_acl): Add implementation using AIX 4 ACL API.
2002         * lib/set-mode-acl.c (qset_acl): Likewise.
2003         * lib/copy-acl.c (qcopy_acl): Likewise.
2004
2005 2008-06-08  Bruno Haible  <bruno@clisp.org>
2006
2007         Add support for HP-UX ACLs.
2008         * lib/acl-internal.h (acl_nontrivial): New declaration.
2009         * lib/file-has-acl.c (acl_nontrivial): New function.
2010         (file_has_acl): Add implementation using HP-UX 11 ACL API.
2011         * lib/set-mode-acl.c (qset_acl): Likewise.
2012         * lib/copy-acl.c (qcopy_acl): Likewise.
2013
2014 2008-06-08  Bruno Haible  <bruno@clisp.org>
2015
2016         Add support for Cygwin ACLs.
2017         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
2018         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
2019         the chmod_or_fchmod call.
2020         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
2021
2022 2008-06-08  Bruno Haible  <bruno@clisp.org>
2023
2024         Fix bug with setuid modes in Solaris 10+ code.
2025         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
2026         succeeded, when the mode contains some special bits.
2027
2028 2008-06-08  Bruno Haible  <bruno@clisp.org>
2029
2030         Add support for Solaris 7..10 ACLs.
2031         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
2032         declarations.
2033         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
2034         functions.
2035         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
2036         * lib/set-mode-acl.c (qset_acl): Likewise.
2037         * lib/copy-acl.c (qcopy_acl): Likewise.
2038
2039 2008-06-08  Bruno Haible  <bruno@clisp.org>
2040
2041         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
2042         declaration.
2043         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
2044         (acl_access_nontrivial): Remove MacOS X case.
2045         (file_has_acl): Use acl_extended_nontrivial.
2046         * lib/copy-acl.c (qcopy_acl): Likewise.
2047
2048 2008-06-08  Bruno Haible  <bruno@clisp.org>
2049
2050         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
2051
2052 2008-06-08  Jim Meyering  <meyering@redhat.com>
2053
2054         * modules/acl (Maintainer): Add Bruno Haible.
2055
2056 2008-06-07  Bruno Haible  <bruno@clisp.org>
2057
2058         Improve support for Tru64 ACLs.
2059         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
2060         ACL on OSF/1.
2061
2062 2008-06-07  Bruno Haible  <bruno@clisp.org>
2063
2064         Add support for MacOS X ACLs.
2065         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
2066         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
2067         * lib/set-mode-acl.c (qset_acl): Likewise.
2068         * lib/copy-acl.c (qcopy_acl): Likewise.
2069
2070 2008-06-07  Bruno Haible  <bruno@clisp.org>
2071
2072         Fix memory leak introduced on 2008-05-22.
2073         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
2074         use.
2075
2076 2008-06-07  Bruno Haible  <bruno@clisp.org>
2077
2078         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
2079         to construct an empty ACL.
2080
2081 2008-06-07  Bruno Haible  <bruno@clisp.org>
2082
2083         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
2084         precisely.
2085         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
2086
2087 2008-06-07  Bruno Haible  <bruno@clisp.org>
2088
2089         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
2090         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
2091
2092 2008-06-07  Bruno Haible  <bruno@clisp.org>
2093
2094         * doc/posix-functions/_setjmp.texi: Explain the use of this function
2095         regardless of POSIX.
2096         * doc/posix-functions/_longjmp.texi: Likewise.
2097         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
2098         SystemV platform in this case.
2099
2100 2008-06-06  Eric Blake  <ebb9@byu.net>
2101
2102         Document abort() bugs.
2103         * doc/posix-functions/abort.texi (abort): Mention anomalies.
2104
2105         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
2106         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
2107         sigsetjmp.
2108         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
2109         siglongjmp, but only as a macro.
2110         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
2111         is obsolete.
2112         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
2113
2114         Tweak documentation to cover cygwin argz bugs.
2115         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
2116         argz bug fix; no code change needed since no cygwin releases
2117         occurred between the last fix and the bug being tested.
2118         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
2119         module and recently fixed cygwin bugs.
2120         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
2121         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
2122         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
2123         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
2124         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
2125         Likewise.
2126         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
2127         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
2128         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
2129         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
2130         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
2131         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
2132         Likewise.
2133
2134         Avoid gcc warning on cygwin.
2135         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
2136         !ACL_NO_TRIVIAL]: Avoid unused variable.
2137
2138 2008-06-05  Eric Blake  <ebb9@byu.net>
2139
2140         Be tolerant of UNKNOWN version in gnulib-tool test dir.
2141         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
2142         git-version-gen fails to come up with a version.
2143         Reported by Simon Josefsson.
2144
2145 2008-06-05  Jim Meyering  <meyering@redhat.com>
2146             Paul Eggert  <eggert@cs.ucla.edu>
2147
2148         utimens.c: work around a probable Linux kernel bug
2149         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
2150         appears to be a kernel bug that causes utimensat to return 280
2151         instead of 0, indicating success.
2152
2153 2008-06-04  Bruno Haible  <bruno@clisp.org>
2154
2155         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
2156         2008-06-01 commit.
2157
2158 2008-06-04  Bruno Haible  <bruno@clisp.org>
2159
2160         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
2161         * lib/file-has-acl.c (acl_access_nontrivial): New function.
2162         (file_has_acl): Use it. Save errno afterwards.
2163         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
2164
2165 2008-06-03  Bruno Haible  <bruno@clisp.org>
2166
2167         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
2168         draft code. Simplify #ifs.
2169         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
2170         Put Solaris code after POSIX-draft code. Fix comments regarding
2171         Solaris 10, HP-UX. Mention Cygwin.
2172         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
2173
2174 2008-06-03  Eric Blake  <ebb9@byu.net>
2175
2176         Provide fallback for older kernels.
2177         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
2178         Provide runtime fallback if kernel lacks support.
2179         Reported by Mike Frysinger.
2180
2181 2008-06-02  Bruno Haible  <bruno@clisp.org>
2182
2183         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
2184         it exists.
2185
2186 2008-06-02  Bruno Haible  <bruno@clisp.org>
2187
2188         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
2189         * lib/copy-acl.c (qcopy_acl): Update comment.
2190
2191 2008-06-02  Bruno Haible  <bruno@clisp.org>
2192
2193         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
2194         like ACL APIs.
2195
2196 2008-06-02  Bruno Haible  <bruno@clisp.org>
2197
2198         * tests/test-file-has-acl.sh: Use different code for Cygwin.
2199         * tests/test-set-mode-acl.sh: Likewise.
2200         * tests/test-copy-acl.sh: Likewise.
2201         * tests/test-copy-file.sh: Likewise.
2202
2203 2008-06-02  Bruno Haible  <bruno@clisp.org>
2204
2205         * tests/test-file-has-acl.sh: Remove unused code.
2206
2207 2008-06-01  Bruno Haible  <bruno@clisp.org>
2208
2209         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
2210         (copy_acl): Just a wrapper around qcopy_acl that emits the error
2211         messages.
2212         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
2213
2214 2008-06-01  Bruno Haible  <bruno@clisp.org>
2215
2216         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
2217         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
2218         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
2219         APIs.
2220         * modules/acl-tests (configure.ac): Remove tests now contained in
2221         m4/acl.m4.
2222
2223 2008-06-02  Jim Meyering  <meyering@redhat.com>
2224
2225         announce-gen: use a better key-server host name
2226         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
2227         it may be more consistently reliable.  Suggested by Werner Koch
2228         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
2229
2230 2008-06-01  Bruno Haible  <bruno@clisp.org>
2231
2232         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
2233         Reported by Voroskoi Andras <voroskoi@gmail.com>.
2234
2235 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
2236
2237         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
2238
2239 2008-06-01  Bruno Haible  <bruno@clisp.org>
2240
2241         New ACL tests.
2242         * tests/test-file-has-acl.sh: New file.
2243         * tests/test-file-has-acl.c: New file.
2244         * tests/test-set-mode-acl.sh: New file.
2245         * tests/test-set-mode-acl.c: New file.
2246         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
2247         * tests/test-copy-acl.c: New file.
2248         * modules/acl-tests: New file, based on modules/copy-file-tests.
2249         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
2250         (Depends-on): Add acl-tests.
2251         (configure.ac): Remove checks.
2252         (Makefile.am): Don't create test-sameacls program here any more.
2253
2254 2008-06-01  Bruno Haible  <bruno@clisp.org>
2255
2256         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
2257         * tests/test-sameacls.c: Include progname.h.
2258         (main): Invoke set_program_name. Portability fixes for MacOS X,
2259         Solaris, HP-UX.
2260
2261 2008-06-01  Bruno Haible  <bruno@clisp.org>
2262
2263         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
2264         function.
2265         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
2266
2267 2008-06-01  Bruno Haible  <bruno@clisp.org>
2268
2269         * modules/rpmatch (Depends-on): Add strdup.
2270
2271 2008-06-01  Bruno Haible  <bruno@clisp.org>
2272
2273         * lib/pipe.c: Include unistd-safer.h.
2274         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
2275         * modules/pipe (Depends-on): Add unistd-safer.
2276
2277 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2278
2279         * modules/autobuild (configure.ac): Call AB_INIT.
2280
2281 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2282
2283         * tests/test-getaddrinfo.c: Don't print debug messages by default.
2284         Suggested by Bruno Haible <bruno@clisp.org>.
2285
2286 2008-05-30  Simon Josefsson  <simon@josefsson.org>
2287
2288         * tests/test-base64.c: Cast size_t to unsigned long when invoking
2289         printf.  Use %lu instead of %d.  Reported by Bruno Haible
2290         <bruno@clisp.org>.
2291
2292 2008-05-29  Eric Blake  <ebb9@byu.net>
2293
2294         Prefer new POSIX 200x interfaces over futimesat.
2295         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
2296         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
2297         when available.
2298         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
2299
2300 2008-05-28  Bruno Haible  <bruno@clisp.org>
2301
2302         * modules/stpcpy (License): Change to LGPLv2+.
2303         Requested by David Lutterkort <dlutter@redhat.com>.
2304
2305 2008-05-27  Bruno Haible  <bruno@clisp.org>
2306
2307         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
2308         current mingw.
2309         Reported by Jose E. Marchesi <jemarch@gnu.org>.
2310
2311 2008-05-27  Bruno Haible  <bruno@clisp.org>
2312
2313         * modules/iconv_open (Link): New section, from module 'iconv'.
2314         * modules/striconv (Link): Likewise.
2315         * modules/striconveh (Link): Likewise.
2316         * modules/xstriconv (Link): Likewise.
2317         * modules/unicodeio (Link): Likewise.
2318         * modules/propername (Link): Likewise.
2319         Reported by Jim Meyering.
2320
2321 2008-05-26  Jim Meyering  <meyering@redhat.com>
2322
2323         sha256: do not artificially restrict buffer length to be < 2^32
2324         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
2325         uint32_t to size_t.
2326         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
2327         to match.
2328
2329         avoid unaligned access errors, e.g., on sparc
2330         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
2331         direct access through a possibly-unaligned uint64* pointer.
2332         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
2333         direct access through a possibly-unaligned uint32* pointer.
2334         Prompted by this patch from Tom "spot" Callaway:
2335         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
2336
2337         sha512.c: fix typo in comment
2338         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
2339
2340 2008-05-25  Bruno Haible  <bruno@clisp.org>
2341
2342         * lib/set-mode-acl.c: Renamed from lib/acl.c.
2343         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
2344         (Makefile.am): Update lib_SOURCES.
2345
2346 2008-05-25  Bruno Haible  <bruno@clisp.org>
2347
2348         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
2349
2350 2008-05-25  Jim Meyering  <meyering@redhat.com>
2351
2352         useless-if-before-free: freed expr may have white-space differences
2353         * build-aux/useless-if-before-free: Recognize cases in which the
2354         freed expression differs from the tested one in embedded white
2355         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
2356         $1 was used, so we can't make any regexp shy.  Improved tests now
2357         detect this.
2358
2359         useless-if-before-free: accept white space in the expression.
2360         * build-aux/useless-if-before-free: For now, any white space
2361         in the expression must be identical in the free argument.
2362
2363         useless-if-before-free: efficiency tweak
2364         * build-aux/useless-if-before-free: Make the expression-matching
2365         regexp "shy".
2366         Make the *outer* regexp shy, not the expr-matching one.
2367
2368         update code-in-comment to accept cast of free arg
2369         * build-aux/useless-if-before-free: Update regexp.
2370
2371 2008-05-25  Bruno Haible  <bruno@clisp.org>
2372
2373         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
2374         * modules/copy-file-tests (Files, Makefile.am): Update.
2375         * tests/test-copy-file.c (func_test_copy): Update.
2376
2377 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
2378
2379         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
2380
2381 2008-05-23  Bruno Haible  <bruno@clisp.org>
2382
2383         Improve support for ACLs on OSF/1.
2384         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
2385         Remove fallback for unknown flavors of ACLs.
2386
2387 2008-05-22  Bruno Haible  <bruno@clisp.org>
2388
2389         Add support for ACLs on OSF/1.
2390         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
2391         replacements.
2392         (acl_free_text): New macro fallback.
2393         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
2394         acl_free.
2395         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
2396         acl_free_text function. Require AC_C_INLINE.
2397
2398 2008-05-22  Bruno Haible  <bruno@clisp.org>
2399
2400         Make copy_acl work on MacOS X 10.5.
2401         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
2402         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
2403         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
2404         If MODE_INSIDE_ACL, don't assume that every system has the same text
2405         representation for ACLs as FreeBSD.
2406         * lib/copy-acl.c (copy_acl): Add support for platforms with
2407         !MODE_INSIDE_ACL.
2408         * lib/file-has-acl.c (file_has_acl): Likewise.
2409         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
2410         FreeBSD, MacOS X, or IRIX, respectively.
2411
2412 2008-05-22  Bruno Haible  <bruno@clisp.org>
2413
2414         * lib/acl.h: Don't include <sys/acl.h>.
2415         (GETACLCNT): Move fallback to lib/acl-internal.h.
2416         * lib/acl-internal.h: Include <sys/acl.h> here.
2417         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
2418
2419 2008-05-22  Bruno Haible  <bruno@clisp.org>
2420
2421         Split off copy_acl function to separate file.
2422         * lib/copy-acl.c: New file, extracted from lib/acl.c.
2423         * lib/acl.c (copy_acl): Moved function to separate file.
2424         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
2425         * modules/acl (Files): Add lib/copy-acl.c.
2426         (Makefiles.am): Augment lib_SOURCES.
2427
2428 2008-05-22  Bruno Haible  <bruno@clisp.org>
2429
2430         * modules/copy-file-tests: New file.
2431         * tests/test-copy-file.sh: New file.
2432         * tests/test-copy-file.c: New file.
2433         * tests/test-copy-file-sameacls.c: New file.
2434
2435 2008-05-22  Eric Blake  <ebb9@byu.net>
2436
2437         Avoid gcc warning.
2438         * tests/test-memcmp.c (main): Pass NULL indirectly.
2439
2440 2008-05-21  Bruno Haible  <bruno@clisp.org>
2441
2442         Add reference doc about ACLs.
2443         * doc/acl-resources.txt: New file.
2444         * doc/acl-cygwin.txt: New file.
2445
2446 2008-05-21  Bruno Haible  <bruno@clisp.org>
2447
2448         Avoid one more warning from gcc.
2449         * lib/vasnprintf.c (IF_LINT): Update comments.
2450         (VASNPRINTF): Use it also for the 'prefix' array initializer.
2451
2452 2008-05-21  Jim Meyering  <meyering@redhat.com>
2453
2454         avoid a warning from gcc
2455         * lib/vasnprintf.c (IF_LINT): Define.
2456         (scale10_round_decimal_long_double):
2457         Use it to avoid a "may be used uninitialized" warning.
2458         (scale10_round_decimal_double): Likewise.
2459
2460 2008-05-21  Simon Josefsson  <simon@josefsson.org>
2461
2462         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
2463         declared.
2464
2465 2008-05-20  Bruno Haible  <bruno@clisp.org>
2466
2467         * tests/test-memcmp.c (main): Test also the sign of the result. Test
2468         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
2469
2470 2008-05-20  Simon Josefsson  <simon@josefsson.org>
2471
2472         * modules/memcmp-tests: New file.
2473         * tests/test-memcmp.c: New file.
2474
2475 2008-05-19  Bruno Haible  <bruno@clisp.org>
2476
2477         * modules/propername (Notice, configure.ac): Put quoted "..." into
2478         --keyword option.
2479         * lib/propername.h: Update comments accordingly.
2480         Reported by Eric Blake.
2481
2482 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
2483
2484         * modules/getpass-gnu (Depends-on): Add fseeko.
2485
2486 2008-05-19  Simon Josefsson  <simon@josefsson.org>
2487
2488         * modules/base64-tests: New file.
2489
2490 2008-05-19  Bo Borgerson <gigabo@gmail.com>
2491
2492         * lib/base64.c (base64_decode_ctx): If a decode context structure
2493         was passed in use it to ignore newlines.  If a context structure
2494         was _not_ passed in, continue to treat newlines as garbage (this
2495         is the historical behavior).  Formerly base64_decode.
2496         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
2497         takes a decode context structure.
2498         * lib/base64.h (base64_decode): Macro for four-argument calls.
2499         (base64_decode_alloc): Likewise.
2500         * lib/base64.c (base64_decode_ctx): If a decode context structure
2501         was passed in use it to ignore newlines.  If a context structure
2502         was _not_ passed in, continue to treat newlines as garbage (this
2503         is the historical behavior).  Formerly base64_decode.
2504         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
2505         takes a decode context structure.
2506         * lib/base64.h (base64_decode): Macro for four-argument calls.
2507         (base64_decode_alloc): Likewise.
2508
2509 2008-05-19  Jim Meyering  <meyering@redhat.com>
2510
2511         avoid a warning from gcc
2512         * lib/trim.c (IF_LINT): Define.
2513         (trim2): Use it to avoid a "may be used uninitialized" warning.
2514
2515         Fix doc typo.
2516         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
2517
2518 2008-05-19  Bruno Haible  <bruno@clisp.org>
2519
2520         * doc/glibc-functions/getpass.texi: Document limits of other
2521         implementations.
2522
2523 2008-05-19  Simon Josefsson  <simon@josefsson.org>
2524             Bruno Haible <bruno@clisp.org>
2525
2526         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
2527
2528 2008-05-18  Bruno Haible  <bruno@clisp.org>
2529
2530         * modules/propername: New file, from GNU gettext.
2531         * lib/propername.h: New file, from GNU gettext.
2532         * lib/propername.c: New file, from GNU gettext.
2533         * MODULES.html.sh (Internationalization functions): Add propername.
2534
2535 2008-05-16  Jim Meyering  <meyering@redhat.com>
2536             Bruno Haible  <bruno@clisp.org>
2537
2538         Avoid some warnings from "gcc -Wshadow".
2539         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
2540
2541 2008-05-15  Eric Blake  <ebb9@byu.net>
2542
2543         Extend previous patch to cygwin 1.7.0.
2544         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
2545         fast implementation in cygwin >= 1.7.0.
2546         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2547         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2548
2549 2008-05-15  Bruno Haible  <bruno@clisp.org>
2550
2551         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
2552         implementation in glibc >= 2.9.
2553         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2554         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2555
2556 2008-05-15  Bruno Haible  <bruno@clisp.org>
2557
2558         * MODULES.html.sh (Internationalization functions): Remove linebreak.
2559         (Unicode string functions): Add unilbrk/*.
2560         Reported by Karl Berry.
2561
2562 2008-05-15  Eric Blake  <ebb9@byu.net>
2563
2564         Fix violation of <stdbool.h> replacement in regex.
2565         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
2566         * lib/regexec.c (re_search_internal): Likewise.
2567         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
2568
2569 2008-05-15  Jim Meyering  <meyering@redhat.com>
2570
2571         avoid distracting test output when git or cvs is not found
2572         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
2573         * tests/test-vc-list-files-git.sh: Likewise.
2574
2575 2008-05-15  Eric Blake  <ebb9@byu.net>
2576
2577         Glibc finally accepted the memmem speedup code, bugzilla #5514.
2578         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
2579         glibc version.
2580         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
2581         * doc/posix-functions/strstr.texi (strstr): Likewise.
2582         * lib/str-two-way.h (MAX): Sychronize with glibc.
2583
2584 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
2585
2586         * lib/regcomp.c (optimize_utf8): Add a note on why we test
2587         opr.ctx_type.
2588         (calc_first): Initialize constraint field.
2589         (duplicate_node_closure): Use it instead of special casing ANCHORS.
2590         Fix grammar.
2591         (duplicate_node): Merge constraint field for all node types.
2592         (calc_eclosure_iter): Look at constraint field for all node types.
2593         * lib/regex_internal.c (create_cd_newstate): Don't look at
2594         opr.ctx_type.
2595
2596 2008-05-14  Bruno Haible  <bruno@clisp.org>
2597
2598         Help GCC to do better code generation.
2599         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
2600         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
2601         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
2602         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
2603         Declare with attribute 'malloc' if supported.
2604
2605 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
2606
2607         use "echo STR|wc -c" rather than unportable "expr length STR"
2608         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
2609         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
2610
2611 2008-05-14  Jim Meyering  <meyering@redhat.com>
2612
2613         use dd ibs=$n count=1 ... rather than less-portable head -c$n
2614         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
2615         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
2616         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
2617         via Collin Lasse.
2618
2619 2008-05-14  Eric Blake  <ebb9@byu.net>
2620
2621         Avoid quadratic growth in gl_LIBSOURCES.
2622         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
2623         Suggested by Bruno Haible.
2624
2625         Test xmemdup0.
2626         * modules/xmemdup0-tests: New file.
2627         * tests/test-xmemdup0.c: Likewise.
2628
2629 2008-05-13  Eric Blake  <ebb9@byu.net>
2630
2631         Split xmemdup0 into its own module.
2632         * modules/xmemdup0: New file.
2633         * lib/xmemdup0.h: Likewise.
2634         * lib/xmemdup0.c: Likewise.
2635         * MODULES.html.sh (Memory management functions): Add xmemdup0.
2636         * lib/xalloc.h (xmemdup0): Remove.
2637         * lib/xmalloc.c (xmemdup0): Likewise.
2638
2639 2008-05-13  Eric Blake  <ebb9@byu.net>
2640             Bruno Haible  <bruno@clisp.org>
2641
2642         Reduce number of forks required during autoconf.
2643         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
2644         and gl_LIBSOURCES_DIR.
2645         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
2646         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
2647         m4_syscmd per file.
2648         <m4_foreach_w>: Move...
2649         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
2650
2651 2008-05-13  Eric Blake  <ebb9@byu.net>
2652
2653         * gnulib-tool: Fix various comment typos.
2654
2655 2008-05-12  Bruno Haible  <bruno@clisp.org>
2656
2657         Tailor the linebreaking algorithm.
2658         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
2659
2660 2008-05-12  Bruno Haible  <bruno@clisp.org>
2661
2662         Update to Unicode 5.0.0.
2663         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2664         LBP_JV, LBP_JT. Redistribute values.
2665         (unilbrk_table): Change size.
2666         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
2667         Unicode TR#14 rev. 22.
2668         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
2669         LBP_JV, LBP_JT. Redistribute values.
2670         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
2671         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
2672         Update.
2673         * lib/unilbrk/lbrkprop1.h: Regenerated.
2674         * lib/unilbrk/lbrkprop2.h: Regenerated.
2675         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
2676         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
2677         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
2678         Likewise.
2679         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
2680         Likewise.
2681         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
2682         result.
2683         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
2684         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
2685         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
2686         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
2687         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
2688         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
2689
2690 2008-05-11  Bruno Haible  <bruno@clisp.org>
2691
2692         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
2693
2694 2008-05-11  Bruno Haible  <bruno@clisp.org>
2695
2696         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
2697         * modules/unilbrk/gen-lbrk: New file.
2698
2699 2008-05-11  Bruno Haible  <bruno@clisp.org>
2700
2701         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
2702         * m4/sha512.m4 (gl_SHA512): Likewise.
2703
2704 2008-05-11  Jim Meyering  <meyering@redhat.com>
2705
2706         New modules: crypto/sha256, crypto/sha512 (from coreutils)
2707         * modules/crypto/sha256: New file.
2708         * modules/crypto/sha512: Likewise.
2709         * lib/sha256.c: Likewise.
2710         * lib/sha256.h: Likewise.
2711         * lib/sha512.c: Likewise.
2712         * lib/sha512.h: Likewise.
2713         * lib/u64.h: Likewise.
2714         * m4/sha256.m4: Likewise.
2715         * m4/sha512.m4: Likewise.
2716         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
2717
2718 2008-05-10  Bruno Haible  <bruno@clisp.org>
2719
2720         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
2721         (Input/Output <stdio.h>): Add xprintf.
2722         (Signal handling <signal.h>): Add strsignal.
2723         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
2724         (Core language properties): Add func.
2725         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
2726         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
2727         strings.
2728         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
2729         (Input/output): New section.
2730         (File system functions): Add openat-die, stat-macros.
2731         (Networking functions): Add sockets.
2732         (Unicode string functions): Add unictype/*.
2733         (Support for building libraries and executables): Add gperf.
2734         (Support for building documentation): Add agpl-3.0.
2735         (Misc): Add nocrash.
2736
2737 2008-05-10  Bruno Haible  <bruno@clisp.org>
2738
2739         * modules/unictype/gen-ctype: New file.
2740
2741 2008-05-10  Jim Meyering  <meyering@redhat.com>
2742
2743         Make chdir-safer.c more efficient on a system with no symlinks.
2744         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
2745         also if ELOOP is zero.  Suggested by Bruno Haible.
2746
2747         Make chdir-safer.c slightly safer.
2748         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
2749         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
2750
2751         Avoid compile failure on systems without ELOOP (like mingw).
2752         * lib/chdir-safer.c (ELOOP): Define if not already defined.
2753         Reported by Bruno Haible.
2754
2755 2008-05-10  Bruno Haible  <bruno@clisp.org>
2756
2757         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
2758         (is_utf8_encoding): Use a case-insensitive comparison.
2759         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
2760         streq.
2761
2762 2008-05-10  Bruno Haible  <bruno@clisp.org>
2763
2764         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
2765         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
2766         * lib/unilbrk/ulc-common.h (iconv_string_length,
2767         iconv_string_keeping_offsets): Remove declarations.
2768         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
2769         Don't include <iconv.h>, streq.h, xsize.h.
2770         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
2771         conversion.
2772         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
2773         <iconv.h>, streq.h, xsize.h.
2774         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
2775         conversion.
2776         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
2777         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
2778         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
2779         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
2780
2781 2008-05-10  Bruno Haible  <bruno@clisp.org>
2782
2783         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
2784         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
2785
2786         * modules/unilbrk/u32-width-linebreaks-tests: New file.
2787         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
2788
2789         * modules/unilbrk/u16-width-linebreaks-tests: New file.
2790         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
2791
2792         * modules/unilbrk/u8-width-linebreaks-tests: New file.
2793         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
2794
2795         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
2796         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
2797
2798         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
2799         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
2800
2801         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
2802         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
2803
2804         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
2805         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
2806
2807 2008-05-10  Bruno Haible  <bruno@clisp.org>
2808
2809         Split up 'linebreak' module.
2810         * lib/unilbrk.h: New file, based on lib/linebreak.h.
2811         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
2812         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
2813         modifications.
2814         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
2815         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
2816         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
2817         lib/linebreak.c.
2818         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
2819         lib/linebreak.c.
2820         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
2821         lib/linebreak.c.
2822         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
2823         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
2824         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
2825         lib/linebreak.c.
2826         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
2827         lib/linebreak.c.
2828         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
2829         lib/linebreak.c.
2830         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
2831         lib/linebreak.c.
2832         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
2833         lib/linebreak.c.
2834         * modules/unilbrk/base: New file.
2835         * modules/unilbrk/tables: New file.
2836         * modules/unilbrk/u8-possible-linebreaks: New file.
2837         * modules/unilbrk/u16-possible-linebreaks: New file.
2838         * modules/unilbrk/u32-possible-linebreaks: New file.
2839         * modules/unilbrk/ulc-common: New file.
2840         * modules/unilbrk/ulc-possible-linebreaks: New file.
2841         * modules/unilbrk/u8-width-linebreaks: New file.
2842         * modules/unilbrk/u16-width-linebreaks: New file.
2843         * modules/unilbrk/u32-width-linebreaks: New file.
2844         * modules/unilbrk/ulc-width-linebreaks: New file.
2845         * lib/linebreak.h: Remove file.
2846         * lib/linebreak.c: Remove file.
2847         * m4/linebreak.m4: Remove file.
2848         * modules/linebreak: Remove file.
2849         * NEWS: Mention the changes.
2850
2851 2008-05-09  Eric Blake  <ebb9@byu.net>
2852
2853         Add xmemdup0.
2854         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
2855         implementation.
2856         * lib/xmalloc.c (xmemdup0): New C implementation.
2857
2858 2008-05-08  Bruno Haible  <bruno@clisp.org>
2859
2860         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
2861
2862 2008-05-07  Eric Blake  <ebb9@byu.net>
2863
2864         Support cross-compilation of <wctype.h>.
2865         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
2866         AC_CACHE_CHECK.
2867
2868 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
2869
2870         * build-aux/vc-list-files: Add support for bzr.
2871
2872 2008-05-03  Jim Meyering  <meyering@redhat.com>
2873
2874         avoid failed assertion with tight malloc
2875         * tests/test-getndelim2.c: Correct an off-by-one assertion.
2876
2877 2008-05-03  Simon Josefsson  <simon@josefsson.org>
2878
2879         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
2880         are needed from arpa/inet.h.
2881         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
2882         Reported by Bruno Haible.
2883
2884 2008-05-02  Jim Meyering  <meyering@redhat.com>
2885
2886         avoid compilation error on FreeBSD 6
2887         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
2888
2889 2008-05-01  Jim Meyering  <meyering@redhat.com>
2890
2891         useless-if-before-free: correct --help's exit status description
2892         * build-aux/useless-if-before-free (usage): Like grep, exit 0
2893         for one or more matches, etc.  Reported by Bruno Haible.
2894
2895         vc-list-files: make the stand-alone gnulib test work
2896         * modules/vc-list-files-tests (configure.ac):
2897         Define and AC_SUBST abs_aux_dir.
2898         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
2899         $(abs_top_srcdir) to each script and having each of them
2900         duplicate the work of setting PATH, set PATH here, using
2901         the new variable, abs_aux_dir instead.
2902         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
2903         * tests/test-vc-list-files-git.sh: Likewise.
2904         Reported by Bruno Haible.
2905
2906 2008-05-01  Bruno Haible  <bruno@clisp.org>
2907
2908         * lib/getndelim2.c (getndelim2): Fix newsize computation during
2909         reallocation. Rename 'done' to 'found_delimiter'.
2910
2911 2008-05-01  Jim Meyering  <meyering@redhat.com>
2912
2913         vc-list-files: accommodate /bin/sh like the one from Solaris 10
2914         * build-aux/vc-list-files: Use `...`, not $(...).
2915
2916 2008-04-30  Jim Meyering  <meyering@redhat.com>
2917
2918         add tests for vc-list-files
2919         * modules/vc-list-files-tests: New module.
2920         * tests/test-vc-list-files-cvs.sh: New file.
2921         * tests/test-vc-list-files-git.sh: New file.
2922
2923         avoid a warning from gcc
2924         * lib/getndelim2.c (IF_LINT): Define.
2925         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
2926
2927         vc-list-files: work properly with build-aux/cvsu, too
2928         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
2929         to all cvs-based clauses.
2930
2931         vc-list-files: work properly in the CVS+awk case, too
2932         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
2933
2934         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
2935         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
2936         take more than one file argument, so .  Add quotes, just in case $dir
2937         ever contains a shell meta-character.  Prompted by Soren Hansen in
2938         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
2939
2940 2008-04-29  Eric Blake  <ebb9@byu.net>
2941
2942         Optimize getndelim2 to use block operations when possible.
2943         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
2944         freadseek, and memchr2.
2945         * lib/getndelim2.c (getndelim2): Use them for block reads.
2946
2947 2008-04-29  Bruno Haible  <bruno@clisp.org>
2948
2949         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
2950         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2951         * modules/inet_ntop (Depends-on): Add extensions.
2952         * modules/inet_pton (Depends-on): Likewise.
2953         Reported by Simon Josefsson.
2954
2955 2008-04-29  Jim Meyering  <meyering@redhat.com>
2956
2957         When the is more than one match in a block, match all of them.
2958         * build-aux/useless-if-before-free: Iterate through each block
2959         until there are no more matches.
2960
2961         Fix broken useless-if-before-free script.
2962         * build-aux/useless-if-before-free: Fix typo: missing "?" after
2963         the expression to match cast of argument to free-like function.
2964
2965 2008-04-29  Eric Blake  <ebb9@byu.net>
2966
2967         Use new header.
2968         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
2969
2970 2008-04-29  Jim Meyering  <meyering@redhat.com>
2971
2972         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
2973         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
2974         by gnulib to exist and to declare e.g., inet_ntop.
2975         Don't include "inet_ntop.h", now removed.
2976
2977         * m4/arpa_inet_h.m4: Remove trailing blanks.
2978
2979 2008-04-29  Eric Blake  <ebb9@byu.net>
2980
2981         Silence valgrind on safe reads beyond potential array bounds.
2982         * lib/rawmemchr.valgrind: New file.
2983         * lib/strchrnul.valgrind: Likewise.
2984         * modules/rawmemchr (Files): Distribute new file.
2985         * modules/strchrnul (Files): Likewise.
2986         Suggested by Bruno Haible.
2987
2988 2008-04-29  Bruno Haible  <bruno@clisp.org>
2989
2990         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
2991         (inet_ntop, inet_pton): Change portability warning's wording.
2992         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
2993         Invoke gl_CHECK_NEXT_HEADERS.
2994         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
2995         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
2996         set ARPA_INET_H.
2997         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
2998         * modules/arpa_inet (Description): No longer only for systems that
2999         lack it.
3000         (Depends-on): Add include_next.
3001         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
3002         HAVE_ARPA_INET_H.
3003
3004 2008-04-29  Jim Meyering  <meyering@redhat.com>
3005
3006         * modules/mkdir (License): Re-license as LGPLv2+.
3007
3008 2008-04-29  Bruno Haible  <bruno@clisp.org>
3009
3010         * modules/rawmemchr (Maintainer): Set to Eric.
3011         * modules/strchrnul (Maintainer): Likewise.
3012
3013 2008-04-29  Simon Josefsson  <simon@josefsson.org>
3014
3015         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
3016         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
3017
3018         * modules/arpa_inet (arpa/inet.h): Use them.
3019
3020 2008-04-28  Eric Blake  <ebb9@byu.net>
3021
3022         Test getndelim2.
3023         * modules/getndelim2-tests: New file.
3024         * tests/test-getndelim2.c: Likewise.
3025         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
3026         stream.
3027         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
3028
3029         * MODULES.html.sh: Document new module.
3030
3031 2008-04-20  Bruno Haible  <bruno@clisp.org>
3032
3033         * lib/c-stack.c (die): Use raise.
3034         * modules/c-stack (Depends-on): Add raise.
3035
3036 2008-04-28  Bruno Haible  <bruno@clisp.org>
3037
3038         Expect rpmatch to be declared.
3039         * lib/yesno.c (rpmatch): Remove declaration.
3040
3041         Declare rpmatch.
3042         * lib/stdlib.in.h (rpmatch): New declaration.
3043         * lib/rpmatch.c: Include <stdlib.h> first.
3044         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
3045         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
3046         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
3047         HAVE_RPMATCH.
3048         * modules/rpmatch (Depends-on): Add stdlib, extensions.
3049         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3050         (Include): Set to <stdlib.h>.
3051         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
3052         HAVE_RPMATCH.
3053         * NEWS: Document the change.
3054
3055 2008-04-28  Bruno Haible  <bruno@clisp.org>
3056
3057         Change rpmatch to use nl_langinfo when appropriate.
3058         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
3059         (N_): New macro.
3060         (localized_pattern): New function/macro.
3061         (try): Remove match, nomatch arguments. Copy the pattern into safe
3062         memory before caching it.
3063         (rpmatch): Use localized_pattern. Add translator comments.
3064         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
3065         Suggested by Eric Blake.
3066         * modules/rpmatch (Depends-on): Add stdbool.
3067
3068 2008-04-28  Eric Blake  <ebb9@byu.net>
3069
3070         Add rawmemchr module, matching glibc.
3071         * modules/string (Makefile.am): New indicator.
3072         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
3073         * lib/string.in.h (rawmemchr): Declare when appropriate.
3074         * modules/rawmemchr: New file.
3075         * m4/rawmemchr.m4: Likewise.
3076         * lib/rawmemchr.c: Likewise.
3077         * modules/rawmemchr-tests: Likewise.
3078         * tests/test-rawmemchr.c: Likewise.
3079         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
3080         module.
3081         * modules/strchrnul (Depends-on): Add rawmemchr.
3082         * lib/strchrnul.c (strchrnul): Optimize a corner case.
3083
3084         Whitespace cleanup.
3085         * tests/test-strchrnul.c: Reindent.
3086         * lib/strchrnul.c: Likewise.
3087
3088         Optimize and test strchrnul.
3089         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
3090         * modules/strchrnul-tests: New file.
3091         * tests/test-strchrnul.c: Likewise.
3092
3093         Remove intprops dependency.
3094         * modules/memchr (Depends-on): Remove intprops.
3095         * modules/memrchr (Depends-on): Likewise.
3096         * modules/memchr2 (Depends-on): Likewise.
3097         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
3098         * lib/memrchr.c (__memrchr): Likewise.
3099         * lib/memrchr2.c (memchr2): Likewise.
3100         Reported by Simon Josefsson.
3101
3102 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3103
3104         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
3105         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3106
3107 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3108
3109         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
3110
3111         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
3112
3113         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
3114
3115         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
3116         declarations.
3117         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
3118
3119         * m4/inet_pton.m4: Don't check for header files.
3120
3121         * m4/inet_ntop.m4: Don't check for header files.
3122
3123 2008-04-28  Simon Josefsson  <simon@josefsson.org>
3124
3125         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
3126         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
3127         trigger for cygwin).
3128         Reported by Bruno Haible  <bruno@clisp.org>.
3129
3130 2008-04-28  Bruno Haible  <bruno@clisp.org>
3131
3132         * doc/posix-functions/strdup.texi: Mention mingw problem.
3133
3134 2008-04-27  Bruno Haible  <bruno@clisp.org>
3135
3136         * modules/stat-time-tests (Depends-on): Add sleep.
3137         * tests/test-stat-time.c (force_unlink): New function.
3138         (cleanup): Use it.
3139         (test_mtime): Remove the ctime related tests.
3140         (test_ctime): New function, containing the ctime related tests.
3141         (main): Call test_ctime, except on native Windows platforms.
3142
3143 2008-04-27  Bruno Haible  <bruno@clisp.org>
3144
3145         * lib/rpmatch.c (rpmatch): Add some comments.
3146         Reported by James Youngman <jay@gnu.org>.
3147
3148 2008-04-27  Bruno Haible  <bruno@clisp.org>
3149
3150         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
3151         quiet NaNs.
3152
3153 2008-04-27  Bruno Haible  <bruno@clisp.org>
3154
3155         Make test-yesno.sh work on mingw.
3156         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
3157         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
3158         (main): Set stdin to binary mode.
3159         * modules/yesno-tests (Depends-on): Add binary-io.
3160
3161 2008-04-27  Bruno Haible  <bruno@clisp.org>
3162
3163         Fix 'isfinite' on x86, x86_64, ia64 platforms.
3164         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
3165         argument that lie outside the IEEE 854 domain.
3166         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
3167         (gl_ISFINITE): Use it.
3168         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
3169
3170 2008-04-27  Bruno Haible  <bruno@clisp.org>
3171
3172         Allow local renaming in config.h.
3173         * lib/memrchr.c (memrchr): Don't undefine outside libc.
3174
3175 2008-04-27  Bruno Haible  <bruno@clisp.org>
3176
3177         * lib/memchr.c (__memchr): Change type of 'i'.
3178         * lib/memchr2.c (memchr2): Likewise.
3179
3180 2008-04-26  Eric Blake  <ebb9@byu.net>
3181         and Bruno Haible  <bruno@clisp.org>
3182
3183         Optimize and test memrchr.
3184         * modules/memrchr (Depends-on): Add intprops.
3185         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
3186         * modules/memrchr-tests: New file.
3187         * tests/test-memrchr.c: New file.
3188
3189 2008-04-26  Bruno Haible  <bruno@clisp.org>
3190
3191         Add tentative support for DragonFly BSD.
3192         * lib/stdio-impl.h: Add macros for DragonFly BSD.
3193         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
3194         fp.
3195         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
3196         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
3197         * lib/fpurge.c (fpurge): Likewise.
3198         * lib/freadable.c (freaadable): Likewise.
3199         * lib/freadahead.c (freadahead): Likewise.
3200         * lib/freading.c (freading): Likewise.
3201         * lib/freadptr.c (freadptr): Likewise.
3202         * lib/freadseek.c (freadptrinc): Likewise.
3203         * lib/fseeko.c (fseeko): Likewise.
3204         * lib/fseterr.c (fseterr): Likewise.
3205         * lib/fwritable.c (fwritable): Likewise.
3206         * lib/fwriting.c (fwriting): Likewise.
3207
3208 2008-04-26  Bruno Haible  <bruno@clisp.org>
3209
3210         * lib/stdio-impl.h: New file.
3211         * lib/fbufmode.c: Include stdio-impl.h.
3212         (fbufmode): Use fp_, remove redundant #defines.
3213         * lib/fflush.c: Include stdio-impl.h.
3214         (clear_ungetc_buffer): Remove redundant #defines.
3215         * lib/fpurge.c: Include stdio-impl.h.
3216         (fpurge): Remove redundant #defines.
3217         * lib/freadable.c: Include stdio-impl.h.
3218         (freadable): Remove redundant #defines.
3219         * lib/freadahead.c: Include stdio-impl.h.
3220         (freadahead): Remove redundant #defines.
3221         * lib/freading.c: Include stdio-impl.h.
3222         (freading): Remove redundant #defines.
3223         * lib/freadptr.c: Include stdio-impl.h.
3224         (freadptr): Remove redundant #defines.
3225         * lib/freadseek.c: Include stdio-impl.h.
3226         (freadptrinc): Remove redundant #defines.
3227         * lib/fseeko.c: Include stdio-impl.h.
3228         (rpl_fseeko): Remove redundant #defines.
3229         * lib/fseterr.c: Include stdio-impl.h.
3230         (fseterr): Remove redundant #defines.
3231         * lib/fwritable.c: Include stdio-impl.h.
3232         (fwritable: Remove redundant #defines.
3233         * lib/fwriting.c: Include stdio-impl.h.
3234         (fwriting): Remove redundant #defines.
3235         * modules/fbufmode (Files): Add lib/stdio-impl.h.
3236         * modules/fflush (Files): Likewise.
3237         * modules/fpurge (Files): Likewise.
3238         * modules/freadable (Files): Likewise.
3239         * modules/freadahead (Files): Likewise.
3240         * modules/freading (Files): Likewise.
3241         * modules/freadptr (Files): Likewise.
3242         * modules/freadseek (Files): Likewise.
3243         * modules/fseeko (Files): Likewise.
3244         * modules/fseterr (Files): Likewise.
3245         * modules/fwritable (Files): Likewise.
3246         * modules/fwriting (Files): Likewise.
3247
3248 2008-04-26  Bruno Haible  <bruno@clisp.org>
3249
3250         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
3251         restore_seek_optimization, update_fpos_cache): New functions, extracted
3252         from rpl_fflush.
3253         (rpl_fflush): Use them.
3254         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
3255         (gl_REPLACE_FFLUSH): Use it.
3256
3257 2008-04-26  Bruno Haible  <bruno@clisp.org>
3258
3259         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
3260         on Solaris.
3261         * tests/test-xstrtoimax.sh: Likewise.
3262         * tests/test-xstrtoumax.sh: Likewise.
3263         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3264
3265 2008-04-26  Bruno Haible  <bruno@clisp.org>
3266
3267         * modules/memchr-tests: New file.
3268         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
3269
3270 2008-04-26  Eric Blake  <ebb9@byu.net>
3271             Bruno Haible  <bruno@clisp.org>
3272
3273         * lib/memchr.c: Include intprops.h.
3274         (__memchr): Optimize parallel detection of matching bytes. Rename local
3275         variables. Add explanatory comments.
3276
3277 2008-04-26  Bruno Haible  <bruno@clisp.org>
3278
3279         Fix module 'memchr', broken since 2000-10-28.
3280         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
3281
3282 2008-04-26  Bruno Haible  <bruno@clisp.org>
3283
3284         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
3285         comments.
3286
3287 2008-04-25  Eric Blake  <ebb9@byu.net>
3288
3289         Use native fstatat on cygwin 1.7.0.
3290         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
3291         first.
3292
3293 2008-04-23  Eric Blake  <ebb9@byu.net>
3294
3295         Improve memchr2 performance.
3296         * lib/memchr2.c (memchr2): Further optimize parallel detection of
3297         NUL bytes.
3298         * modules/memchr2 (Depends-on): Use intprops.h.
3299
3300 2008-04-23  Simon Josefsson  <simon@josefsson.org>
3301
3302         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
3303         an inline function instead of a CPP macro.  Patch by Ben Pfaff
3304         <blp@cs.stanford.edu>.
3305
3306 2008-04-23  Simon Josefsson  <simon@josefsson.org>
3307
3308         * lib/arpa_inet.in.h: New file.
3309
3310         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
3311         (Makefile.am): Sed in substitute header file.
3312
3313         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
3314         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
3315
3316         * modules/inet_ntop (configure.ac): Use
3317         gl_ARPA_INET_MODULE_INDICATOR.
3318
3319         * modules/inet_pton (configure.ac): Use
3320         gl_ARPA_INET_MODULE_INDICATOR.
3321
3322 2008-04-22  Jim Meyering  <meyering@redhat.com>
3323
3324         * modules/verify (License): Re-license as LGPLv2+.
3325
3326 2008-04-22  Simon Josefsson  <simon@josefsson.org>
3327
3328         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
3329         parameter to void* as per POSIX standard (MinGW uses char*).
3330
3331 2008-04-21  Bruno Haible  <bruno@clisp.org>
3332
3333         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
3334         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
3335         Define to replacements if REPLACE_ISWCNTRL is 1.
3336         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
3337         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
3338         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
3339         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
3340         what it fixes.
3341         * doc/posix-functions/iswalpha.texi: Likewise.
3342         * doc/posix-functions/iswblank.texi: Likewise.
3343         * doc/posix-functions/iswcntrl.texi: Likewise.
3344         * doc/posix-functions/iswdigit.texi: Likewise.
3345         * doc/posix-functions/iswgraph.texi: Likewise.
3346         * doc/posix-functions/iswlower.texi: Likewise.
3347         * doc/posix-functions/iswprint.texi: Likewise.
3348         * doc/posix-functions/iswpunct.texi: Likewise.
3349         * doc/posix-functions/iswspace.texi: Likewise.
3350         * doc/posix-functions/iswupper.texi: Likewise.
3351         * doc/posix-functions/iswxdigit.texi: Likewise.
3352         Reported by Alain Guibert.
3353
3354 2008-04-21  Bruno Haible  <bruno@clisp.org>
3355
3356         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
3357         Patch by Alain Guibert.
3358
3359 2008-04-21  Bruno Haible  <bruno@clisp.org>
3360
3361         Fix test failures on mingw.
3362         * tests/test-xstrtol.c (print_no_progname): New function.
3363         (main): Install it in error_print_progname hook.
3364         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
3365         * tests/test-xstrtoimax.sh: Likewise.
3366         * tests/test-xstrtoumax.sh: Likewise.
3367
3368 2008-04-21  Bruno Haible  <bruno@clisp.org>
3369
3370         Fix test failure on mingw.
3371         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
3372
3373 2008-04-21  Bruno Haible  <bruno@clisp.org>
3374
3375         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
3376         Actually assign a value.
3377
3378 2008-04-20  Bruno Haible  <bruno@clisp.org>
3379
3380         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
3381         take 2.
3382         * lib/canonicalize.c (canonicalize_file_name): Elide if the
3383         'canonicalize-lgpl' module is also used.
3384         * lib/canonicalize-lgpl.c: Undo last change.
3385         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
3386
3387 2008-04-20  Bruno Haible  <bruno@clisp.org>
3388
3389         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
3390         config.h. Provide _mkdir based fallback for mingw.
3391         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
3392         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
3393         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
3394         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
3395         rather than defining mkdir in config.h.
3396         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
3397         (gl_SYS_STAT_H_DEFAULTS): New macro.
3398         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
3399         HAVE_IO_H any more.
3400         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
3401         HAVE_DECL_MKDIR and HAVE_IO_H.
3402
3403 2008-04-20  Bruno Haible  <bruno@clisp.org>
3404
3405         * lib/isapipe.c: Port to native Windows platforms.
3406
3407 2008-04-20  Bruno Haible  <bruno@clisp.org>
3408
3409         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
3410
3411 2008-04-21  Eric Blake  <ebb9@byu.net>
3412
3413         Work around preprocessors that don't handle UINTMAX_MAX.
3414         * lib/memchr2.c (memchr2): Avoid embedded #if.
3415         Reported by Alain Guibert, fix suggested by Bruno Haible.
3416
3417 2008-04-21  Simon Josefsson  <simon@josefsson.org>
3418
3419         * doc/posix-functions/strftime.texi (strftime): Explain better
3420         Windows incompatibility.  Suggested by Micah Cowan
3421         <micah@cowan.name>.
3422
3423 2008-04-20  Bruno Haible  <bruno@clisp.org>
3424
3425         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
3426         unistr/u8-mblen.
3427
3428 2008-04-20  Bruno Haible  <bruno@clisp.org>
3429
3430         Fix test failure on platforms with non-GNU iconv.
3431         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
3432         (U_TO_U8): Use it, rather than u16_to_u8.
3433         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
3434         units at the end of the input string.
3435         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
3436
3437 2008-04-20  Bruno Haible  <bruno@clisp.org>
3438
3439         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
3440         when the resulting length is 0.
3441         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
3442
3443 2008-04-20  Bruno Haible  <bruno@clisp.org>
3444
3445         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
3446         works.
3447         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
3448
3449 2008-04-20  Bruno Haible  <bruno@clisp.org>
3450
3451         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
3452         * modules/tsearch-tests (configure.ac): Test for initstate function.
3453
3454 2008-04-20  Bruno Haible  <bruno@clisp.org>
3455
3456         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
3457         for nlink_t if missing.
3458         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
3459
3460 2008-04-19  Bruno Haible  <bruno@clisp.org>
3461
3462         Work around snprintf bug on Linux libc5.
3463         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
3464         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3465         gl_SNPRINTF_SIZE1.
3466         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3467         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
3468         that test failed.
3469         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
3470         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
3471         * modules/snprintf (Files): Add m4/printf.m4.
3472         * modules/vsnprintf (Files): Likewise.
3473         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
3474         * doc/posix-functions/vsnprintf.texi: Likewise.
3475
3476 2008-04-19  Bruno Haible  <bruno@clisp.org>
3477
3478         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
3479         from 0.0058 to less than 10^-7.
3480
3481 2008-04-19  Bruno Haible  <bruno@clisp.org>
3482
3483         Fix rounding when a precision is given.
3484         * lib/vasnprintf.c (is_borderline): New function.
3485         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
3486         9...9x.
3487         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
3488         %e, %g.
3489         * tests/test-vasprintf-posix.c (test_function): Likewise.
3490         * tests/test-snprintf-posix.h (test_function): Likewise.
3491         * tests/test-sprintf-posix.h (test_function): Likewise.
3492         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
3493         * tests/test-printf-posix.h (test_function): Likewise.
3494         * tests/test-printf-posix.output: Update.
3495         Reported by John Darrington <john@darrington.wattle.id.au> via
3496         Ben Pfaff <blp@cs.stanford.edu>.
3497
3498 2008-04-18  Simon Josefsson  <simon@josefsson.org>
3499
3500         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
3501         Suggested by Bruno Haible <bruno@clisp.org>.
3502
3503 2008-04-17  Bruno Haible  <bruno@clisp.org>
3504
3505         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
3506         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
3507         implementation.
3508         Patch by Bruce Merry <bmerry@gmail.com>.
3509
3510 2008-04-17  Simon Josefsson  <simon@josefsson.org>
3511
3512         * doc/posix-functions/strftime.texi (strftime): Mention that %e
3513         doesn't work under Windows.
3514
3515 2008-04-16  Bruno Haible  <bruno@clisp.org>
3516
3517         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
3518         New macros.
3519         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
3520         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
3521         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
3522         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
3523         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
3524         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
3525         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
3526         macros.
3527         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
3528         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
3529         Northern Sotho, Uighur.
3530
3531 2008-04-16  Bruno Haible  <bruno@clisp.org>
3532
3533         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
3534         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
3535         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
3536         Reported by Daniel Bergström <daniel@octocode.com>.
3537
3538 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
3539             Bruno Haible  <bruno@clisp.org>
3540
3541         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
3542         function.
3543         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
3544         New functions, mostly extracted from gl_locale_name_default.
3545         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
3546
3547 2008-04-16  Eric Blake  <ebb9@byu.net>
3548
3549         Adjust strtod detection to catch glibc 2.7 bug.
3550         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
3551         Reported by John Gatewood Ham.
3552
3553 2008-04-16  Bruno Haible  <bruno@clisp.org>
3554
3555         Add tentative support for Linux libc5.
3556         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
3557         * lib/fpurge.c (fpurge): Likewise.
3558         * lib/freadable.c (freadable): Likewise.
3559         * lib/freadahead.c (freadahead): Likewise.
3560         * lib/freading.c (freading): Likewise.
3561         * lib/freadptr.c (freadptr): Likewise.
3562         * lib/freadseek.c (freadptrinc): Likewise.
3563         * lib/fseeko.c (rpl_fseeko): Likewise.
3564         * lib/fseterr.c (fseterr): Likewise.
3565         * lib/fwritable.c (fwritable): Likewise.
3566         * lib/fwriting.c (fwriting): Likewise.
3567         Reported by Alain Guibert <alguibert+bts@free.fr>.
3568
3569 2008-04-15  Bruno Haible  <bruno@clisp.org>
3570
3571         * modules/mathl (configure.ac): Define module indicator.
3572
3573 2008-04-15  Bruno Haible  <bruno@clisp.org>
3574
3575         * lib/logl.c (logl): Remove unused variables.
3576
3577 2008-04-15  Bruno Haible  <bruno@clisp.org>
3578
3579         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
3580         fails.
3581
3582 2008-04-15  Bruno Haible  <bruno@clisp.org>
3583
3584         * lib/trim.c (trim2): Fix argument of isspace() macro.
3585
3586 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
3587
3588         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
3589         to 0.
3590         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
3591
3592 2008-04-14  Bruno Haible  <bruno@clisp.org>
3593
3594         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
3595         AC_LANG_PROGRAM argument.
3596         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
3597         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
3598         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
3599         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3600         * m4/math_h.m4 (gl_MATH_H): Likewise.
3601         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
3602         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
3603         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3604         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
3605         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
3606         * m4/regex.m4 (gl_REGEX): Likewise.
3607         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
3608         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
3609         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
3610         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
3611         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
3612         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
3613         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3614         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3615
3616 2008-04-14  Jim Meyering  <meyering@redhat.com>
3617
3618         test-strtod: fix typos: s/abs/fabs/
3619         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
3620
3621 2008-04-13  Bruno Haible  <bruno@clisp.org>
3622
3623         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
3624         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
3625         module is also used and while not building the reloc-wrapper.
3626
3627 2008-04-13  Bruno Haible  <bruno@clisp.org>
3628
3629         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
3630
3631 2008-04-13  Bruno Haible  <bruno@clisp.org>
3632
3633         Fix AIX compilation failure introduced on 2008-04-02.
3634         * tests/test-frexp.c (exp): Undefine before redefining.
3635         * tests/test-frexpl.c (exp): Likewise.
3636
3637 2008-04-13  Bruno Haible  <bruno@clisp.org>
3638
3639         Work around a HP-UX stdio bug.
3640         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
3641         * tests/test-ftello.c (main): Likewise.
3642         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
3643         * doc/posix-functions/ftello.texi: Likewise.
3644
3645 2008-04-13  Bruno Haible  <bruno@clisp.org>
3646
3647         Make test-signbit pass on HP-UX/hppa.
3648         * tests/test-signbit.c (minus_zerol): New variable.
3649         (test_signbitl): Use it.
3650
3651 2008-04-13  Bruno Haible  <bruno@clisp.org>
3652
3653         Make truncl work on OSF/1 4.0.
3654         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
3655         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3656         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
3657         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
3658         HAVE_DECL_TRUNCL.
3659         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
3660         HAVE_DECL_TRUNCL.
3661         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
3662
3663 2008-04-13  Bruno Haible  <bruno@clisp.org>
3664
3665         * lib/unictype.h: Remove trailing comma from enumeration definitions.
3666
3667 2008-04-13  Bruno Haible  <bruno@clisp.org>
3668
3669         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
3670         expression, so as to avoid HP-UX 11 cc compiler bug.
3671
3672 2008-04-13  Bruno Haible  <bruno@clisp.org>
3673
3674         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
3675
3676 2008-04-13  Bruno Haible  <bruno@clisp.org>
3677
3678         * lib/git-merge-changelog.c: Remove empty declaration outside of
3679         functions.
3680
3681 2008-04-13  Bruno Haible  <bruno@clisp.org>
3682
3683         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
3684
3685 2008-04-13  Bruno Haible  <bruno@clisp.org>
3686
3687         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
3688         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
3689         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
3690         also if it exists but lacks definitions of the SHUT_* macros.
3691         * modules/sys_socket (Description): Update.
3692         Reported by Elbert Pol <e.pol@chello.nl>.
3693
3694 2008-04-13  Bruno Haible  <bruno@clisp.org>
3695
3696         * lib/localcharset.c (OS2): Don't redefine if already defined.
3697         Reported by Elbert Pol <e.pol@chello.nl>.
3698
3699 2008-04-13  Bruno Haible  <bruno@clisp.org>
3700
3701         * lib/binary-io.h [__EMX__]: Include <io.h>.
3702         Reported by Elbert Pol <e.pol@chello.nl>.
3703
3704 2008-04-12  Bruno Haible  <bruno@clisp.org>
3705
3706         * lib/fpucw.h: Enable the definitions also for x86_64.
3707         Needed for NetBSD/x86_64.
3708         Reported by Thomas Klausner <tk@giga.or.at>.
3709
3710 2008-04-12  Bruno Haible  <bruno@clisp.org>
3711
3712         * tests/test-strtod.c: Include isnand.h.
3713         (main): Use isnand instead of isnan.
3714         Reported by Jim Meyering.
3715
3716 2008-04-12  Bruno Haible  <bruno@clisp.org>
3717
3718         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
3719         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3720
3721 2008-04-12  Jim Meyering  <meyering@redhat.com>
3722
3723         * m4/math_h.m4 (gl_MATH_H): Fix typos.
3724
3725 2008-04-12  Bruno Haible  <bruno@clisp.org>
3726
3727         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
3728         Reported by Elbert Pol <e.pol@chello.nl>.
3729
3730 2008-04-12  Eric Blake  <ebb9@byu.net>
3731
3732         Work around Solaris 10 math.h bug.
3733         * m4/math_h.m4 (gl_MATH_H): Check for bug.
3734         (gl_MATH_H_DEFAULTS): Set up default.
3735         * modules/math (Makefile.am): Replace new indicators.
3736         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
3737         * tests/test-math.c (main): Test this.
3738         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
3739         * doc/posix-headers/math.texi (math.h): Mention bug.
3740         Reported by Nelson H. F. Beebe and Jim Meyering.
3741
3742 2008-04-11  Bruno Haible  <bruno@clisp.org>
3743
3744         Adapt to future versions of Apple GCC.
3745         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
3746         Reported by Peter O'Gorman <peter@pogma.com>.
3747
3748 2008-04-11  Bruno Haible  <bruno@clisp.org>
3749
3750         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
3751
3752 2008-04-11  Bruno Haible  <bruno@clisp.org>
3753
3754         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
3755
3756         * modules/getaddrinfo-tests (Makefile.am): Define
3757         test_getaddrinfo_LDADD.
3758
3759 2008-04-11  Bruno Haible  <bruno@clisp.org>
3760
3761         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
3762         (init): Fix syntax error.
3763         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
3764         is declared.
3765
3766 2008-04-11  Bruno Haible  <bruno@clisp.org>
3767
3768         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
3769         * modules/glob (Depends-on): Add stdbool.
3770
3771 2008-04-11  Bruno Haible  <bruno@clisp.org>
3772
3773         * lib/trim.c: Include <string.h>.
3774
3775 2008-04-11  Eric Blake  <ebb9@byu.net>
3776
3777         Avoid compile failure on OS/2.
3778         * lib/regex_internal.h (internal_function): Disable optimization
3779         on OS/2 (__EMX__), where it caused compiler error.
3780         Reported by Elbert Pol.
3781
3782 2008-04-11  Bruno Haible  <bruno@clisp.org>
3783
3784         Flush the standard error stream before aborting. Needed on mingw.
3785         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
3786         * tests/test-array_list.c (ASSERT): Likewise.
3787         * tests/test-array_oset.c (ASSERT): Likewise.
3788         * tests/test-avltree_list.c (ASSERT): Likewise.
3789         * tests/test-avltree_oset.c (ASSERT): Likewise.
3790         * tests/test-avltreehash_list.c (ASSERT): Likewise.
3791         * tests/test-binary-io.c (ASSERT): Likewise.
3792         * tests/test-byteswap.c (ASSERT): Likewise.
3793         * tests/test-c-ctype.c (ASSERT): Likewise.
3794         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
3795         * tests/test-c-strcasestr.c (ASSERT): Likewise.
3796         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
3797         * tests/test-c-strstr.c (ASSERT): Likewise.
3798         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
3799         * tests/test-canonicalize.c (ASSERT): Likewise.
3800         * tests/test-carray_list.c (ASSERT): Likewise.
3801         * tests/test-ceilf1.c (ASSERT): Likewise.
3802         * tests/test-ceilf2.c (ASSERT): Likewise.
3803         * tests/test-ceill.c (ASSERT): Likewise.
3804         * tests/test-count-one-bits.c (ASSERT): Likewise.
3805         * tests/test-fbufmode.c (ASSERT): Likewise.
3806         * tests/test-fflush2.c (ASSERT): Likewise.
3807         * tests/test-floorf1.c (ASSERT): Likewise.
3808         * tests/test-floorf2.c (ASSERT): Likewise.
3809         * tests/test-floorl.c (ASSERT): Likewise.
3810         * tests/test-fopen.c (ASSERT): Likewise.
3811         * tests/test-fpending.c (ASSERT): Likewise.
3812         * tests/test-fprintf-posix.c (ASSERT): Likewise.
3813         * tests/test-fpurge.c (ASSERT): Likewise.
3814         * tests/test-freadable.c (ASSERT): Likewise.
3815         * tests/test-freadahead.c (ASSERT): Likewise.
3816         * tests/test-freading.c (ASSERT): Likewise.
3817         * tests/test-freadptr.c (ASSERT): Likewise.
3818         * tests/test-freadptr2.c (ASSERT): Likewise.
3819         * tests/test-freadseek.c (ASSERT): Likewise.
3820         * tests/test-freopen.c (ASSERT): Likewise.
3821         * tests/test-frexp.c (ASSERT): Likewise.
3822         * tests/test-frexpl.c (ASSERT): Likewise.
3823         * tests/test-fseek.c (ASSERT): Likewise.
3824         * tests/test-fseeko.c (ASSERT): Likewise.
3825         * tests/test-fstrcmp.c (ASSERT): Likewise.
3826         * tests/test-ftell.c (ASSERT): Likewise.
3827         * tests/test-ftello.c (ASSERT): Likewise.
3828         * tests/test-func.c (ASSERT): Likewise.
3829         * tests/test-fwritable.c (ASSERT): Likewise.
3830         * tests/test-fwriting.c (ASSERT): Likewise.
3831         * tests/test-getdelim.c (ASSERT): Likewise.
3832         * tests/test-getline.c (ASSERT): Likewise.
3833         * tests/test-i-ring.c (ASSERT): Likewise.
3834         * tests/test-iconv-utf.c (ASSERT): Likewise.
3835         * tests/test-iconv.c (ASSERT): Likewise.
3836         * tests/test-isfinite.c (ASSERT): Likewise.
3837         * tests/test-isnand.c (ASSERT): Likewise.
3838         * tests/test-isnanf.c (ASSERT): Likewise.
3839         * tests/test-isnanl.h (ASSERT): Likewise.
3840         * tests/test-ldexpl.c (ASSERT): Likewise.
3841         * tests/test-linked_list.c (ASSERT): Likewise.
3842         * tests/test-linkedhash_list.c (ASSERT): Likewise.
3843         * tests/test-localename.c (ASSERT): Likewise.
3844         * tests/test-lseek.c (ASSERT): Likewise.
3845         * tests/test-mbscasecmp.c (ASSERT): Likewise.
3846         * tests/test-mbscasestr1.c (ASSERT): Likewise.
3847         * tests/test-mbscasestr2.c (ASSERT): Likewise.
3848         * tests/test-mbscasestr3.c (ASSERT): Likewise.
3849         * tests/test-mbscasestr4.c (ASSERT): Likewise.
3850         * tests/test-mbschr.c (ASSERT): Likewise.
3851         * tests/test-mbscspn.c (ASSERT): Likewise.
3852         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
3853         * tests/test-mbspbrk.c (ASSERT): Likewise.
3854         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
3855         * tests/test-mbsrchr.c (ASSERT): Likewise.
3856         * tests/test-mbsspn.c (ASSERT): Likewise.
3857         * tests/test-mbsstr1.c (ASSERT): Likewise.
3858         * tests/test-mbsstr2.c (ASSERT): Likewise.
3859         * tests/test-mbsstr3.c (ASSERT): Likewise.
3860         * tests/test-memchr2.c (ASSERT): Likewise.
3861         * tests/test-memmem.c (ASSERT): Likewise.
3862         * tests/test-open.c (ASSERT): Likewise.
3863         * tests/test-printf-frexp.c (ASSERT): Likewise.
3864         * tests/test-printf-frexpl.c (ASSERT): Likewise.
3865         * tests/test-printf-posix.c (ASSERT): Likewise.
3866         * tests/test-quotearg.c (ASSERT): Likewise.
3867         * tests/test-rbtree_list.c (ASSERT): Likewise.
3868         * tests/test-rbtree_oset.c (ASSERT): Likewise.
3869         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
3870         * tests/test-round1.c (ASSERT): Likewise.
3871         * tests/test-roundf1.c (ASSERT): Likewise.
3872         * tests/test-roundl.c (ASSERT): Likewise.
3873         * tests/test-signbit.c (ASSERT): Likewise.
3874         * tests/test-sleep.c (ASSERT): Likewise.
3875         * tests/test-snprintf-posix.c (ASSERT): Likewise.
3876         * tests/test-snprintf.c (ASSERT): Likewise.
3877         * tests/test-sprintf-posix.c (ASSERT): Likewise.
3878         * tests/test-stat-time.c (ASSERT): Likewise.
3879         * tests/test-strcasestr.c (ASSERT): Likewise.
3880         * tests/test-strerror.c (ASSERT): Likewise.
3881         * tests/test-striconv.c (ASSERT): Likewise.
3882         * tests/test-striconveh.c (ASSERT): Likewise.
3883         * tests/test-striconveha.c (ASSERT): Likewise.
3884         * tests/test-strsignal.c (ASSERT): Likewise.
3885         * tests/test-strstr.c (ASSERT): Likewise.
3886         * tests/test-strtod.c (ASSERT): Likewise.
3887         * tests/test-trunc1.c (ASSERT): Likewise.
3888         * tests/test-trunc2.c (ASSERT): Likewise.
3889         * tests/test-truncf1.c (ASSERT): Likewise.
3890         * tests/test-truncf2.c (ASSERT): Likewise.
3891         * tests/test-truncl.c (ASSERT): Likewise.
3892         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
3893         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
3894         * tests/test-vasnprintf.c (ASSERT): Likewise.
3895         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
3896         * tests/test-vasprintf.c (ASSERT): Likewise.
3897         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
3898         * tests/test-vprintf-posix.c (ASSERT): Likewise.
3899         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
3900         * tests/test-vsnprintf.c (ASSERT): Likewise.
3901         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
3902         * tests/test-wcwidth.c (ASSERT): Likewise.
3903         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
3904         * tests/test-xprintf-posix.c (ASSERT): Likewise.
3905         * tests/test-xvasprintf.c (ASSERT): Likewise.
3906         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
3907         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
3908         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
3909         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
3910         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
3911         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
3912         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
3913         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
3914         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
3915         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
3916         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
3917         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
3918         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
3919         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
3920         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
3921         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
3922         * tests/unictype/test-block_list.c (ASSERT): Likewise.
3923         * tests/unictype/test-block_of.c (ASSERT): Likewise.
3924         * tests/unictype/test-block_test.c (ASSERT): Likewise.
3925         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
3926         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
3927         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
3928         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
3929         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
3930         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
3931         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
3932         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
3933         * tests/unictype/test-combining.c (ASSERT): Likewise.
3934         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
3935         * tests/unictype/test-digit.c (ASSERT): Likewise.
3936         * tests/unictype/test-mirror.c (ASSERT): Likewise.
3937         * tests/unictype/test-numeric.c (ASSERT): Likewise.
3938         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
3939         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
3940         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
3941         * tests/unictype/test-scripts.c (ASSERT): Likewise.
3942         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
3943         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
3944         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
3945         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
3946         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
3947         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
3948         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
3949         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
3950         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
3951         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
3952         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
3953         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
3954         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
3955         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
3956         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
3957         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
3958         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
3959         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
3960         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
3961         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
3962         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
3963         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
3964         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
3965         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
3966         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
3967         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
3968         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
3969         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
3970         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
3971         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
3972         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
3973         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
3974         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
3975         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
3976         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
3977         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
3978         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
3979         Reported by Eric Blake.
3980
3981 2008-04-11  Bruno Haible  <bruno@clisp.org>
3982
3983         * lib/wchar.in.h: Tweak comment.
3984
3985 2008-04-11  Bruno Haible  <bruno@clisp.org>
3986
3987         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
3988         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
3989         gl_COMMON.
3990         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
3991
3992 2008-04-11  Bruno Haible  <bruno@clisp.org>
3993
3994         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
3995
3996 2008-04-11  Simon Josefsson  <simon@josefsson.org>
3997
3998         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
3999         of attempting to use non-existing /dev/*random.  Based on patch
4000         from Adam Strzelecki <ono@java.pl> in
4001         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
4002
4003 2008-04-08  Bruno Haible  <bruno@clisp.org>
4004
4005         Add tentative support for emx+gcc.
4006         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
4007         * lib/fpurge.c (fpurge): Likewise.
4008         * lib/freadable.c (freadable): Likewise.
4009         * lib/freadahead.c (freadahead): Likewise.
4010         * lib/freading.c (freading): Likewise.
4011         * lib/freadptr.c (freadptr): Likewise.
4012         * lib/freadseek.c (freadptrinc): Likewise.
4013         * lib/fseeko.c (rpl_fseeko): Likewise.
4014         * lib/fseterr.c (fseterr): Likewise.
4015         * lib/fwritable.c (fwritable): Likewise.
4016         * lib/fwriting.c (fwriting): Likewise.
4017         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
4018
4019 2008-04-09  Eric Blake  <ebb9@byu.net>
4020
4021         Avoid some autoconf warnings.
4022         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
4023         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
4024         * m4/afs.m4 (gl_AFS): Likewise.
4025         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
4026         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
4027         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4028         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
4029         (gl_INTEGER_TYPE_SUFFIX): Likewise.
4030         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
4031         (AC_CHECK_DECLS_ONCE): Likewise.
4032         Rename file...
4033         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
4034         gnulib-tool requires autoconf 2.59 or better.
4035         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
4036
4037 2008-04-08  Eric Blake  <ebb9@byu.net>
4038
4039         Use 'git describe --match' if present (added in git 1.5.5).
4040         * build-aux/git-version-gen: Limit result to tags that match 'v*'
4041         if possible.
4042
4043 2008-04-08  Bruno Haible  <bruno@clisp.org>
4044
4045         Add tentative support for OpenServer.
4046         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
4047         _ptr, _cnt.
4048         * lib/fpurge.c (fpurge): Likewise.
4049         * lib/freadable.c (freadable): Likewise.
4050         * lib/freadahead.c (freadahead): Likewise.
4051         * lib/freading.c (freading): Likewise.
4052         * lib/freadptr.c (freadptr): Likewise.
4053         * lib/freadseek.c (freadptrinc): Likewise.
4054         * lib/fseeko.c (rpl_fseeko): Likewise.
4055         * lib/fseterr.c (fseterr): Likewise.
4056         * lib/fwritable.c (fwritable): Likewise.
4057         * lib/fwriting.c (fwriting): Likewise.
4058         Reported by Roger Cornelius <rac@tenzing.org> and
4059         Brian K. White <brian@aljex.com>.
4060
4061 2008-04-06  Jim Meyering  <meyering@redhat.com>
4062
4063         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
4064
4065 2008-04-06  Bruno Haible  <bruno@clisp.org>
4066
4067         Avoid possible error with non-ASCII bytes in UTF-8 locales.
4068         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
4069         * tests/test-printf-posix.sh: Likewise.
4070         * tests/test-vfprintf-posix.sh: Likewise.
4071         * tests/test-vprintf-posix.sh: Likewise.
4072         * tests/test-xprintf-posix.sh: Likewise.
4073
4074 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4075
4076         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
4077         hide error from 'ls', needed on OS/2.
4078         Report by Elbert Pol <elbert.pol@gmail.com>.
4079
4080 2008-04-04  Eric Blake  <ebb9@byu.net>
4081
4082         Make test-fseeko.c failures meaningful.
4083         * tests/test-fseeko.c: Print line number on failure.
4084         * tests/test-fseek.c: Likewise.
4085         Reported by Nelson H. F. Beebe.
4086
4087         Improve strtod bug detection check.
4088         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
4089         required for Solaris 10.
4090         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
4091
4092 2008-04-04  Bruno Haible  <bruno@clisp.org>
4093
4094         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
4095         by m4/setenv.m4.
4096
4097 2008-04-03  Eric Blake  <ebb9@byu.net>
4098
4099         Ensure sane .version contents.
4100         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
4101         version string.
4102         * build-aux/git-version-gen: Improve documentation.
4103
4104         Make GNU make output nicer.
4105         * top/GNUmakefile [!_have-Makefile]: Add dependency on
4106         MAKECMDGOALS to enforce message for all command line targets.  Set
4107         srcdir for use in maint.mk.
4108
4109         Another maintainer tweak.
4110         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
4111         a target that regenerates version.
4112
4113 2008-04-03  Jim Meyering  <meyering@redhat.com>
4114
4115         vc-list-files: don't cause coreutils "make po-check" failure
4116         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
4117
4118 2008-04-03  Eric Blake  <ebb9@byu.net>
4119
4120         Allow VPATH usage of vc-list-files.
4121         * build-aux/vc-list-files (scriptversion): Add timestamp.
4122         (options): Add --help, --version, -C.
4123         (CVS): Support installed cvsu.
4124
4125 2008-04-02  Bruno Haible  <bruno@clisp.org>
4126
4127         Avoid some "statement with no effect" warnings from gcc.
4128         * tests/test-wctype.c (main): Explicitly ignore unused values.
4129         Reported by Jim Meyering.
4130
4131 2008-04-02  Jim Meyering  <meyering@redhat.com>
4132
4133         Avoid some warnings from "gcc -Wshadow".
4134         * tests/test-frexp.c (exp): Define to a different identifier.
4135         * tests/test-frexpl.c (exp): Likewise.
4136
4137 2008-04-03  Jim Meyering  <meyering@redhat.com>
4138
4139         bootstrap: remove dangling *.[ch] symlinks from lib
4140         * build-aux/bootstrap [dangling symlink removal]: Move find's
4141         -depth option to precede all others, to avoid a warning.
4142         Remove *.[ch] files too, and from "$source_base" (usually lib/).
4143
4144 2008-04-02  Bruno Haible  <bruno@clisp.org>
4145
4146         Avoid some warnings from "gcc -Wshadow".
4147         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
4148         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
4149         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
4150         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
4151         Reported by Jim Meyering.
4152
4153 2008-04-01  Bruno Haible  <bruno@clisp.org>
4154
4155         Fix test to work on IRIX 6.5 with cc.
4156         * tests/test-math.c (numeric_equal): New function.
4157         (main): Use it.
4158
4159 2008-04-01  Bruno Haible  <bruno@clisp.org>
4160
4161         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
4162
4163 2008-04-01  Bruno Haible  <bruno@clisp.org>
4164
4165         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
4166         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4167         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
4168         (Depends-on): Remove math.
4169
4170         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
4171         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4172         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
4173         (Depends-on): Remove math.
4174
4175         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
4176         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4177         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
4178         (Depends-on): Remove math.
4179         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
4180         (Depends-on): Remove math.
4181
4182         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
4183         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
4184         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
4185         (Depends-on): Remove math.
4186         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
4187         (Depends-on): Remove math.
4188
4189         * tests/test-round1.c: Include nan.h.
4190         (main): Use NaNd instead of NAN.
4191         * modules/round-tests (Files): Add tests/nan.h.
4192
4193         * tests/test-trunc1.c: Include nan.h.
4194         (main): Use NaNd instead of NAN.
4195         * modules/trunc-tests (Files): Add tests/nan.h.
4196
4197         * tests/test-roundf1.c: Include nan.h.
4198         (main): Use NaNf instead of NAN.
4199         * modules/roundf-tests (Files): Add tests/nan.h.
4200
4201         * tests/test-truncf1.c: Include nan.h.
4202         (main): Use NaNf instead of NAN.
4203         * modules/truncf-tests (Files): Add tests/nan.h.
4204
4205         * tests/test-ceilf1.c: Include nan.h.
4206         (main): Use NaNf instead of NAN.
4207         * modules/ceilf-tests (Files): Add tests/nan.h.
4208
4209         * tests/test-floorf1.c: Include nan.h.
4210         (main): Use NaNf instead of NAN.
4211         * modules/floorf-tests (Files): Add tests/nan.h.
4212
4213         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
4214         (main): Use NaNf instead of NAN.
4215         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
4216
4217         * tests/test-isnand.c: Include nan.h instead of <math.h>.
4218         (main): Use NaNd instead of NAN.
4219         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
4220
4221         * tests/test-frexp.c: Include nan.h.
4222         (main): Use NaNd instead of NAN.
4223         * modules/frexp-tests (Files): Add tests/nan.h.
4224
4225         * lib/isnan.c: Don't include <math.h>.
4226         (FUNC): Don't use NAN macro.
4227         * modules/isnand-nolibm (Depends-on): Remove math.
4228         * modules/isnanf-nolibm (Depends-on): Remove math.
4229         * modules/isnanl (Depends-on): Remove math.
4230         * modules/isnanl-nolibm (Depends-on): Remove math.
4231
4232         * tests/nan.h: New file.
4233
4234 2008-04-01  Eric Blake  <ebb9@byu.net>
4235
4236         Fix typos.
4237         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
4238         values to be the right type.
4239
4240         For now, cater to gnulib strtod inaccuracies.
4241         * tests/test-strtod.c (main): Allow 1-ulp error on expected
4242         fractional results.  While not as nice from a QoI perspective, it
4243         is a quicker patch than correctly implementing decimal to binary
4244         rounding.
4245
4246 2008-03-31  Eric Blake  <ebb9@byu.net>
4247
4248         Guarantee a definition of NAN.
4249         * lib/math.in.h (NAN): Define if missing.
4250         * tests/test-math.c (main): Test it.
4251         * doc/posix-headers/math.texi (math.h): Document this.
4252         * lib/isnan.c (rpl_isnand): Use it.
4253         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
4254         * tests/test-floorf1.c (NaN): Likewise.
4255         * tests/test-frexp.c (NaN): Likewise.
4256         * tests/test-isnand.c (NaN): Likewise.
4257         * tests/test-isnanf.c (NaN): Likewise.
4258         * tests/test-round1.c (NaN): Likewise.
4259         * tests/test-roundf1.c (NaN): Likewise.
4260         * tests/test-snprintf-posix.h (NaN): Likewise.
4261         * tests/test-sprintf-posix.h (NaN): Likewise.
4262         * tests/test-trunc1.c (NaN): Likewise.
4263         * tests/test-truncf1.c (NaN): Likewise.
4264         * tests/test-vasnprintf-posix.c (NaN): Likewise.
4265         * tests/test-vasprintf-posix.c (NaN): Likewise.
4266         * modules/isnand-nolibm (Depends-on): Add math.
4267         * modules/isnanf-nolibm (Depends-on): Likewise.
4268         * modules/isnanl (Depends-on): Likewise.
4269         * modules/isnanl-nolibm (Depends-on): Likewise.
4270         * modules/snprintf-posix-tests (Depends-on): Likewise.
4271         * modules/sprintf-posix-tests (Depends-on): Likewise.
4272         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
4273         * modules/vsprintf-posix-tests (Depends-on): Likewise.
4274         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
4275         * modules/vasprintf-posix-tests (Depends-on): Likewise.
4276
4277 2008-03-31  Bruno Haible  <bruno@clisp.org>
4278
4279         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
4280         * doc/posix-functions/strtod.texi: Likewise.
4281
4282 2008-03-31  Bruno Haible  <bruno@clisp.org>
4283
4284         * tests/test-strtod.c (main): Don't use C99 syntax.
4285
4286 2008-03-31  Bruno Haible  <bruno@clisp.org>
4287
4288         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
4289         Reported by Eric Blake.
4290
4291 2008-03-31  Jim Meyering  <meyering@redhat.com>
4292
4293         Don't compare actual signbit return values.
4294         * tests/test-strtod.c (main): Rather, compare only their
4295         zero/non-zero nature.
4296
4297 2008-03-31  Eric Blake  <ebb9@byu.net>
4298
4299         More strtod documentation.
4300         * doc/posix-functions/strtod.texi (strtod): Interpret more test
4301         failures as distinct bugs.
4302
4303 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
4304
4305         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
4306         Problem reported by Erik Benada in
4307         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
4308
4309 2008-03-30  Bruno Haible  <bruno@clisp.org>
4310
4311         * tests/test-strtod.c: Add comments about which assertion fails on which
4312         platform.
4313         * doc/posix-functions/strtod.texi: Add info about many more platforms.
4314
4315 2008-03-30  Eric Blake  <ebb9@byu.net>
4316
4317         Test signbit behavior on zeros.
4318         * tests/test-signbit.c (test_signbitf): Add tests for zero.
4319         (test_signbitd, test_signbitl): Likewise.
4320
4321         More strtod touchups.
4322         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
4323         sign of negative underflow, for now.  Use .5, not .1.
4324         * doc/posix-functions/strtod.texi (strtod): Mention these
4325         limitations.
4326         Reported by Jim Meyering.
4327
4328 2008-03-30  Bruno Haible  <bruno@clisp.org>
4329
4330         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
4331         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
4332
4333 2008-03-30  Bruno Haible  <bruno@clisp.org>
4334
4335         Avoid failure when attempting to return empty iconv results on some
4336         platforms.
4337         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
4338         allocation, don't report ENOMEM when the resulting string is empty.
4339
4340 2008-03-30  Bruno Haible  <bruno@clisp.org>
4341
4342         Fix buffer overrun.
4343         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
4344         Don't consider the width for tmp_length. Check count against tmp_length
4345         before doing the padding. Ensure enough allocation during padding.
4346
4347 2008-03-30  Eric Blake  <ebb9@byu.net>
4348
4349         strtod touchups.
4350         * lib/strtod.c (strtod): Avoid compiler warnings.
4351         Reported by Jim Meyering.
4352
4353 2008-03-30  Bruno Haible  <bruno@clisp.org>
4354
4355         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
4356         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
4357         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
4358         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
4359         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
4360         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
4361         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
4362         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
4363
4364         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
4365         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
4366         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
4367         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
4368         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
4369         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
4370         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
4371         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
4372
4373         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
4374         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
4375         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
4376         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
4377         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
4378         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
4379         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
4380         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
4381
4382         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
4383         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
4384
4385         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
4386         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
4387
4388         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
4389         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
4390
4391         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
4392         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
4393         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
4394
4395         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
4396         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
4397         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
4398
4399         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
4400         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
4401         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
4402
4403         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
4404         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
4405         * modules/vasprintf (Depends-on): Add EOVERFLOW.
4406
4407         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
4408         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
4409         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
4410         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
4411         (Depends-on): Add EOVERFLOW.
4412         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
4413         (Depends-on): Add EOVERFLOW.
4414         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
4415         (Depends-on): Add EOVERFLOW.
4416         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
4417         (Depends-on): Add EOVERFLOW.
4418         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
4419         (Depends-on): Add EOVERFLOW.
4420         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
4421         (Depends-on): Add EOVERFLOW.
4422         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
4423         (Depends-on): Add EOVERFLOW.
4424         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
4425         (Depends-on): Add EOVERFLOW.
4426
4427         * lib/sprintf.c (EOVERFLOW): Remove fallback.
4428         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
4429         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
4430
4431         * lib/snprintf.c (EOVERFLOW): Remove fallback.
4432         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
4433         * modules/snprintf (Depends-on): Add EOVERFLOW.
4434
4435         * lib/poll.c (EOVERFLOW): Remove fallback.
4436         * modules/poll (Depends-on): Add EOVERFLOW.
4437
4438         * lib/getugroups.c (EOVERFLOW): Remove fallback.
4439         * modules/getugroups (Depends-on): Add EOVERFLOW.
4440
4441         * lib/getdelim.c (EOVERFLOW): Remove fallback.
4442         * modules/getdelim (Depends-on): Add EOVERFLOW.
4443
4444         * lib/ftell.c (EOVERFLOW): Remove fallback.
4445         * modules/ftell (Depends-on): Add EOVERFLOW.
4446
4447         * lib/fprintf.c (EOVERFLOW): Remove fallback.
4448         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
4449         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
4450
4451         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
4452
4453         * modules/EOVERFLOW-tests: New file.
4454         * tests/test-EOVERFLOW.c: New file.
4455
4456         * modules/EOVERFLOW: New file.
4457         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
4458
4459 2008-03-30  Bruno Haible  <bruno@clisp.org>
4460
4461         Fix bug introduced on 2007-06-10.
4462         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
4463         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
4464
4465 2008-03-30  Bruno Haible  <bruno@clisp.org>
4466
4467         Improve freadseek's efficiency after ungetc.
4468         * lib/freadseek.c: Include freadahead.h.
4469         (freadptrinc): New function, extracted from freadseek.
4470         (freadseek): Use it in a loop. Use freadahead to determine the number
4471         of loop iterations.
4472         * modules/freadseek (Depends-on): Add freadahead.
4473         (configure.ac): Require AC_C_INLINE.
4474
4475 2008-03-30  Bruno Haible  <bruno@clisp.org>
4476
4477         * lib/freadseek.c (freadseek): Don't ignore the return value of
4478         freadptr.
4479
4480 2008-03-29  Eric Blake  <ebb9@byu.net>
4481
4482         Add hex float support.
4483         * modules/strtod (Depends-on): Add c-ctype.
4484         (Link): Mention POW_LIB.
4485         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
4486         whitespace between 'e' and exponent.
4487         * tests/test-strtod.c (main): Enable hex float tests.
4488         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
4489         now provides.
4490
4491         Document various strtod bugs, with some fixes.
4492         * doc/posix-functions/strtod.texi (strtod): Document bugs with
4493         "-0x", "inf", "nan", and hex constants.
4494         * doc/posix-functions/atof.texi (atof): Likewise.
4495         * modules/stdlib (Makefile.am): Support strtod.
4496         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
4497         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
4498         detect additional strtod bugs.
4499         * lib/stdlib.in.h (rpl_strtod): Add declarations.
4500         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
4501         bool where appropriate.  Parse 'inf' and 'nan'.
4502         * tests/test-strtod.c: New file.
4503         * modules/strtod (Depends-on): Add stdbool, stdlib.
4504         (configure.ac): Turn on module indicator.
4505         * modules/strtod-tests: New module.
4506
4507 2008-03-29  Eric Blake  <ebb9@byu.net>
4508
4509         Fix ftell on mingw.
4510         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
4511         * modules/ftell-tests (Depends-on): Add binary-io.
4512         * modules/ftello-tests (Depends-on): Likewise.
4513         * tests/test-ftell.c (main): Enhance test to cover behavior after
4514         ungetc.  Enforce binary mode.
4515         * tests/test-ftello.c (main): Likewise.
4516
4517         Pass test-freadseek on cygwin.
4518         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
4519         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
4520         ungetc buffer.
4521
4522         * tests/test-fflush2.c (main): Fix typo.
4523
4524 2008-03-29  Bruno Haible  <bruno@clisp.org>
4525
4526         * tests/test-fflush2.c (main): Temporarily disable the contents of
4527         this test.
4528         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
4529         Reported by Eric Blake.
4530
4531 2008-03-28  Simon Josefsson  <simon@josefsson.org>
4532
4533         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
4534         (GC_SHA224_DIGEST_SIZE): Add.
4535
4536         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
4537         (gc_hash_digest_length): Likewise.
4538         (gc_hash_buffer): Likewise.
4539
4540 2008-03-25  Bruno Haible  <bruno@clisp.org>
4541
4542         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
4543         detail which gettext release to use.
4544         Reported by Simon Josefsson.
4545
4546 2008-03-26  Jim Meyering  <meyering@redhat.com>
4547
4548         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
4549         * modules/gnumakefile (clean-GNUmakefile): Also, use
4550         test ... && ... || : syntax rather than if-then ... fi.
4551
4552         gnumakefile: Don't double-quote-expand $(VPATH) value.
4553         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
4554
4555 2008-03-24  Eric Blake  <ebb9@byu.net>
4556
4557         Alter GNUmakefile to install into top directory.
4558         * modules/maintainer-makefile: Split, and add dependency...
4559         * modules/gnumakefile: to this new module.
4560         * build-aux/GNUmakefile: Move...
4561         * top/GNUmakefile: ...here.
4562         * build-aux/maint.mk: Move...
4563         * top/maint.mk: ...here.
4564         * MODULES.html.sh (Support for maintaining...): Document new
4565         module.
4566
4567 2008-03-23  Bruno Haible  <bruno@clisp.org>
4568
4569         * gnulib-tool: New options --vc-files, --no-vc-files.
4570         (func_usage): Document them.
4571         (vc_files): New variable.
4572         (func_import): Consider vc_files.
4573         (func_create_testdir): Set vc_files to empty.
4574         Suggested by Jim Meyering and Karl Berry.
4575
4576 2008-03-23  Bruno Haible  <bruno@clisp.org>
4577
4578         Fix regex compilation error on HP-UX 11.
4579         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
4580         * modules/regex (Files): Add m4/mbstate_t.m4.
4581         Reported by Ton Voon <ton.voon@altinity.com>.
4582
4583 2008-03-23  Bruno Haible  <bruno@clisp.org>
4584
4585         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
4586
4587 2008-03-23  Eric Blake  <ebb9@byu.net>
4588             Bruno Haible  <bruno@clisp.org>
4589
4590         Install files from top/ in the destination directory.
4591         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
4592         augmentation also for the files from top/.
4593         (func_import, func_create_testdir): Rewrite file names:
4594         top/filename -> filename.
4595
4596 2008-03-23  Bruno Haible  <bruno@clisp.org>
4597
4598         Tweak "gnulib --version" output.
4599         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
4600
4601 2008-03-23  Bruno Haible  <bruno@clisp.org>
4602
4603         Tweak "gnulib --version" output.
4604         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
4605         rather than contents of ChangeLog, when possible.
4606
4607 2008-03-21  Eric Blake  <ebb9@byu.net>
4608
4609         More --version tweaks.
4610         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
4611         date of last ChangeLog entry.
4612
4613 2008-03-21  Jim Meyering  <meyering@redhat.com>
4614
4615         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
4616
4617 2008-03-20  Eric Blake  <ebb9@byu.net>
4618
4619         VPATH fix.
4620         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
4621
4622 2008-03-20  Simon Josefsson  <simon@josefsson.org>
4623
4624         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
4625         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
4626
4627 2008-03-20  Eric Blake  <ebb9@byu.net>
4628
4629         Sync GNUmakefile with coreutils.
4630         * build-aux/GNUmakefile (have-Makefile): Rename...
4631         (_have-Makefile): ...to this, for namespace consideration.
4632         (GNUmakefile.cfg): Include, if present.
4633         (_autoreconf): Define a default.
4634         (_is-dist-target): New rule for rebuilds to pick up intra-release
4635         version.
4636         (maint-cfg.mk): Rename...
4637         (cfg.mk): ...to this.
4638
4639 2008-03-18  Jim Meyering  <meyering@redhat.com>
4640
4641         New script and module: mktempd
4642         * MODULES.html.sh (maint+release support): Add mktempd.
4643         * build-aux/mktempd: New file.
4644         * modules/mktempd: New file.
4645
4646 2008-03-15  Jim Meyering  <meyering@redhat.com>
4647
4648         Undo last change.
4649         * lib/sha1.c, lib/md5.c: 63 != ~63.
4650         Reported by Andreas Schwab.
4651
4652         sha1.c, md5.c: Hoist a redundant expression.
4653         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
4654         "ctx->buflen" only once, before calling *_process_block.
4655         * lib/md5.c (md5_process_bytes): Likewise.
4656
4657 2008-03-14  Eric Blake  <ebb9@byu.net>
4658
4659         Bump copyright year in files generated by gnulib-tool.
4660         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
4661         gnulib-tool, rather than hard-coding it.
4662
4663         Fix 'gnulib-tool --version' output to work with git.
4664         * gnulib-tool (func_gnulib_dir): New function, extracted from...
4665         (startup): ...here.
4666         (func_version): Use it to invoke git-version-gen, rather than
4667         relying on CVS keyword expansion.  Modernize wording.
4668         (cvsdatestamp, last_checkin_date, version): Kill unused
4669         variables.
4670
4671 2008-03-12  Jim Meyering  <meyering@redhat.com>
4672
4673         Recognize optional cast of the argument to free.
4674         * build-aux/useless-if-before-free: Update regexps.
4675
4676         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
4677
4678 2008-03-11  Bruno Haible  <bruno@clisp.org>
4679
4680         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
4681         by a single package.
4682         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
4683         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
4684         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
4685         Reported by Sam Steingold <sds@gnu.org>.
4686
4687 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4688
4689         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
4690         repositories.
4691
4692 2008-03-11  Bruno Haible  <bruno@clisp.org>
4693
4694         Avoid conflicts between local macro definitions.
4695         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
4696         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
4697
4698 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
4699             Bruno Haible  <bruno@clisp.org>
4700
4701         Make va_copy work with some version of xlc on AIX 5.1.
4702         * lib/stdarg.in.h: New file.
4703         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
4704         On AIX, use a <stdarg.h> file substitute.
4705         * modules/stdarg (Files): Add lib/stdarg.in.h.
4706         (Depends-on): Add include_next.
4707         (Makefile.am): Build a stdarg.h substitute if requested.
4708         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
4709
4710 2008-03-10  Bruno Haible  <bruno@clisp.org>
4711
4712         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
4713         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4714         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4715
4716 2008-03-10  Bruno Haible  <bruno@clisp.org>
4717
4718         * modules/stdlib (Depends-on): Add include_next, remove
4719         absolute-header.
4720
4721 2008-03-09  Bruno Haible  <bruno@clisp.org>
4722
4723         * lib/freadahead.h (freadahead): Document more precisely.
4724         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
4725         the sum of both buffer sizes.
4726         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
4727         * NEWS: Document the change.
4728
4729 2008-03-09  Bruno Haible  <bruno@clisp.org>
4730
4731         Extend freadptr to return also the buffer size.
4732         * lib/freadptr.h (freadptr): Add sizep argument.
4733         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
4734         (freadptr): Add sizep argument. Determine buffer size like freadahead
4735         does.
4736         * tests/test-freadptr.c: Don't include freadahead.h.
4737         (main): Adapt for new calling convention of freadptr.
4738         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
4739         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
4740         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
4741         tests/test-freadptr2.sh.
4742         (Depends): Remove freadahead.
4743         (TESTS): Add test-freadptr2.sh.
4744         (check_PROGRAMS): Add test-freadptr2.
4745
4746 2008-03-09  Bruno Haible  <bruno@clisp.org>
4747
4748         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
4749         Report and solution by Simon Josefsson.
4750
4751 2008-03-06  Bruno Haible  <bruno@clisp.org>
4752
4753         Make fflush after ungetc work on BSD platforms.
4754         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
4755         * tests/test-fflush2.c: New file.
4756         * tests/test-fflush2.sh: New file.
4757         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
4758         tests/test-fflush2.c.
4759         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
4760         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
4761
4762 2008-03-06  Eric Blake  <ebb9@byu.net>
4763
4764         Likewise for ftello.
4765         * modules/ftello (Dependencies): Add extensions.
4766         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
4767
4768 2008-03-06  Bruno Haible  <bruno@clisp.org>
4769
4770         * modules/fseeko (Dependencies): Add extensions.
4771         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
4772         Needed on glibc systems.
4773
4774 2008-03-06  Bruno Haible  <bruno@clisp.org>
4775
4776         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
4777         email address.
4778         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4779
4780 2008-03-06  Bruno Haible  <bruno@clisp.org>
4781
4782         * users.txt: Add libgnupdf.
4783
4784 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4785
4786         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
4787         (Header File Substitutes, Function Substitutes,
4788         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
4789         (Build robot for gnulib): Fix typo.
4790
4791 2008-03-06  Bruno Haible  <bruno@clisp.org>
4792
4793         * doc/gnulib-tool.texi (VCS Issues): Small updates.
4794         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
4795
4796 2008-03-06  Bruno Haible  <bruno@clisp.org>
4797
4798         * doc/func.texi: New file, extracted from doc/gnulib.texi.
4799         * doc/gnulib.texi: Include it.
4800
4801 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4802
4803         * modules/func (License): Change license to unlimited; there was
4804         no LGPL parts in the module anyway.
4805
4806 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4807
4808         * modules/__func__: Renamed to modules/func.
4809         * modules/__func__-tests: Renamed to modules/func-tests.
4810         * tests/test-__func__.c: Renamed to tests/test-func.c.
4811         * m4/__func__.m4: Renamed to m4/func.m4.
4812         * doc/gnulib.texi (__func__): Section renamed to func.
4813         Suggested by Eric Blake <ebb9@byu.net>.
4814
4815 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4816
4817         * doc/gnulib.texi (__func__): Use C99 terminology when talking
4818         about __func__.  Make example self-contained.  Suggested by Eric
4819         Blake <ebb9@byu.net>.
4820
4821         * tests/test-__func__.c (main): Avoid extraneous () around __func.
4822         Suggested by Eric Blake <ebb9@byu.net>.
4823
4824 2008-03-06  Simon Josefsson  <simon@josefsson.org>
4825
4826         * modules/__func__: New file.
4827         * modules/__func__-tests: New file.
4828         * tests/test-__func__.c: New file.
4829         * m4/__func__.m4: New file.
4830         * doc/gnulib.texi (__func__): Document __func__ module.
4831
4832 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4833
4834         * modules/byteswap (License): Re-license as LGPLv2+.
4835
4836 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4837
4838         * doc/Makefile: Add pdf target.
4839
4840 2008-03-05  Simon Josefsson  <simon@josefsson.org>
4841
4842         * modules/inline (License): Use 'unlimited', since there are only
4843         *.m4 files in this module.
4844
4845 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4846             Bruno Haible  <bruno@clisp.org>
4847
4848         Add support for HP C 7.1 on OpenVMS 8.3.
4849         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
4850
4851 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
4852
4853         Update VMS specifics.
4854         * lib/getopt.c [VMS]: Remove include of unixlib.h.
4855
4856 2008-03-02  Jim Meyering  <meyering@redhat.com>
4857
4858         Remove the last dependency on the "free" module.
4859         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
4860         Reported by Bob Proulx.
4861
4862         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
4863
4864         Remove useless "if" tests before free.  Deprecate "free" module.
4865         * doc/posix-functions/free.texi: Mention that this
4866         module is no longer useful.
4867         * modules/free (Notice): Say this module is obsolete.
4868         * modules/readutmp (Depends-on): Remove free.
4869         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
4870         * lib/putenv.c (putenv): Likewise.
4871         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
4872         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
4873         * tests/test-c-strcasestr.c (main): Likewise.
4874         * tests/test-c-strstr.c (main): Likewise.
4875         * tests/test-mbscasestr1.c (main): Likewise.
4876         * tests/test-mbscasestr2.c (main): Likewise.
4877         * tests/test-mbsstr1.c (main): Likewise.
4878         * tests/test-mbsstr2.c (main): Likewise.
4879         * tests/test-memmem.c (main): Likewise.
4880         * tests/test-strcasestr.c (main): Likewise.
4881         * tests/test-striconv.c (main): Likewise.
4882         * tests/test-striconveh.c (main): Likewise.
4883         * tests/test-striconveha.c (main): Likewise.
4884         * tests/test-strstr.c (main): Likewise.
4885
4886         * build-aux/git-version-gen: Adjust a comment and the Usage string.
4887
4888         bootstrap: sync from coreutils again
4889         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
4890
4891 2008-03-01  Jim Meyering  <meyering@redhat.com>
4892
4893         bootstrap: sync from coreutils
4894         * build-aux/bootstrap (update_po_files): Copy a .po file into place
4895         also when the target doesn't exist.
4896
4897 2008-03-01  Eric Blake  <ebb9@byu.net>
4898
4899         Fix bugs in last patch.
4900         * lib/memchr2.c (memchr2): Fix typo.
4901         * tests/test-memchr2.c: Test previous bug, and don't use GNU
4902         extension.
4903         Reported by Bruce Korb.
4904
4905         New module 'memchr2'.
4906         * modules/memchr2: New file.
4907         * modules/memchr2-tests: Likewise.
4908         * lib/memchr2.h: Likewise.
4909         * lib/memchr2.c: Likewise, based on memchr.c.
4910         * tests/test-memchr2.c: New test.
4911         * MODULES.html.sh (String handling): Add memchr2.
4912
4913 2008-02-29  Bruno Haible  <bruno@clisp.org>
4914
4915         * modules/freadseek-tests: New file.
4916         * tests/test-freadseek.sh: New file.
4917         * tests/test-freadseek.c: New file.
4918
4919         New module 'freadseek'.
4920         * modules/freadseek: New file.
4921         * lib/freadseek.h: New file.
4922         * lib/freadseek.c: New file.
4923         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
4924
4925 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4926
4927         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
4928         wydawca.
4929
4930         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
4931         program_invocation_name and program_invocation_short_name are
4932         present.
4933
4934 2008-02-28  Bruno Haible  <bruno@clisp.org>
4935
4936         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
4937         * tests/test-freadptr.sh: Also test non-seekable stdin.
4938
4939 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
4940
4941         * build-aux/bootstrap (source_base, m4_base)
4942         (doc_base, tests_base): New variables.
4943         (gnulib_tool_options): Do not hardcode base directories, use
4944         the above variables instead.
4945
4946 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
4947
4948         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
4949
4950 2008-02-28  Bruno Haible  <bruno@clisp.org>
4951
4952         * modules/freadptr-tests: New file.
4953         * tests/test-freadptr.sh: New file.
4954         * tests/test-freadptr.c: New file.
4955
4956         New module 'freadptr'.
4957         * modules/freadptr: New file.
4958         * lib/freadptr.h: New file.
4959         * lib/freadptr.c: New file.
4960         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
4961
4962 2008-02-26  Karl Berry  <karl@freefriends.org>
4963
4964         Sync from Libtool:
4965         * libltdl/argz.c (argz_add, argz_count): New functions.
4966         * libltdl/argz.in.h: Declare them.
4967         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
4968
4969 2008-02-22  Bruno Haible  <bruno@clisp.org>
4970
4971         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
4972         is a pointer type.  Needed for HP-UX 10.
4973         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
4974         * doc/posix-functions/gmtime_r.texi: Likewise.
4975         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
4976
4977 2008-02-24  Bruno Haible  <bruno@clisp.org>
4978
4979         * modules/environ-tests: New file.
4980         * tests/test-environ.c: New file.
4981
4982         New module 'environ'.
4983         * modules/environ: New file.
4984         * lib/unistd.in.h (environ): New declaration.
4985         * m4/environ.m4: New file.
4986         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
4987         after use.
4988         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
4989         HAVE_DECL_ENVIRON.
4990         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
4991         HAVE_DECL_ENVIRON.
4992         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
4993         wrong claim that 'environ' is missing on some systems.
4994         * modules/execute (Depends-on): Add environ.
4995         * lib/execute.c (environ): Remove fallback declaration.
4996         * modules/pipe (Depends-on): Add environ.
4997         * lib/pipe.c (environ): Remove fallback declaration.
4998         * modules/setenv (Depends-on): Add environ.
4999         * lib/setenv.c (environ): Remove fallback declaration.
5000         * modules/unsetenv (Depends-on): Add environ.
5001         * lib/unsetenv.c (environ): Remove fallback declaration.
5002         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
5003         m4/environ.m4.
5004         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
5005         (gl_PREREQ_UNSETENV): Likewise.
5006
5007 2008-02-24  Bruno Haible  <bruno@clisp.org>
5008
5009         * doc/posix-functions/environ.texi: Document the MacOS X problem.
5010
5011 2008-02-20  Bob Proulx  <bob@proulx.com>
5012
5013         Enable use of older two part flavor 'git describe'.
5014         * build-aux/git-version-gen: If using the older two part flavor of
5015         git version then recreate the third part now present in the
5016         newer three part flavor of git describe.
5017
5018 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
5019
5020         * lib/fts.c (fts_build): Typo correction to comment.
5021
5022 2008-02-17  Bruno Haible  <bruno@clisp.org>
5023
5024         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
5025         generating no-op conflicts.
5026
5027 2008-02-17  Bruno Haible  <bruno@clisp.org>
5028
5029         Speed up by 10%.
5030         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
5031         result_entries, rather than an index-based loop.
5032
5033 2008-02-17  Bruno Haible  <bruno@clisp.org>
5034
5035         Speed up by 25%.
5036         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
5037         'hashcode_cached'.
5038         (entry_create): New function.
5039         (entry_hashcode): Use the cached hashcode if possible.
5040         (read_changelog_file, try_split_merged_entry): Use entry_create.
5041
5042 2008-02-17  Bruno Haible  <bruno@clisp.org>
5043
5044         Speed up from O(n^2) to O(n) for long ChangeLog files.
5045         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
5046         (read_changelog_file): Change implementation of entries_reversed list
5047         to rbtreehash.
5048         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
5049
5050 2008-02-17  Bruno Haible  <bruno@clisp.org>
5051
5052         New option --split-merged-entry.
5053         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
5054         (find_paragraph_end, try_split_merged_entry): New functions.
5055         (long_options): Add option --split-merged-entry.
5056         (usage): Document option --split-merged-entry.
5057         (main): Implement option --split-merged-entry.
5058         Reported by Eric Blake.
5059
5060 2008-02-17  Bruno Haible  <bruno@clisp.org>
5061
5062         * lib/git-merge-changelog.c: Include c-strstr.h.
5063         (main): Support the "git pull --rebase" situation.
5064         * modules/git-merge-changelog (Depends-on): Add c-strstr.
5065         Reported by Eric Blake.
5066
5067 2008-02-16  Eric Blake  <ebb9@byu.net>
5068
5069         Avoid doubling \ in common case of "c-maybe" quoting style.
5070         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
5071         eliding outer quotes.
5072         * lib/quotearg.h: Document this.
5073         * tests/test-quotearg.c (result_strings, inputs, results_g)
5074         (flag_results, locale_results): Test it by adding a new string to
5075         each test group.
5076         (compare_strings): Test new string.
5077
5078 2008-02-13  Eric Blake  <ebb9@byu.net>
5079
5080         Avoid trigraph quoting in default output.
5081         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
5082         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
5083         unless explicitly requested.
5084         * tests/test-quotearg.c (flag_results, main): Add additional tests.
5085
5086 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
5087
5088         Don't rely on signed integer overflowing to negative value.
5089         * lib/getugroups.c (getugroups): Include <limits.h>.
5090         Instead, compare against INT_MAX, and increment only if the test passes.
5091
5092 2008-02-13  Jim Meyering  <meyering@redhat.com>
5093         and Eric Blake  <ebb9@byu.net>
5094
5095         Avoid shadowing warning and compile errors on Linux.
5096         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
5097         forwarding macros on Linux.
5098         (dcgettext): Define a stub, for Linux.
5099         (results_g, main): Avoid warnings.
5100
5101 2008-02-12  Eric Blake  <ebb9@byu.net>
5102
5103         Silence warning in last patch.
5104         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
5105
5106         Quotearg part 4: add tests, fix c-maybe colon quoting.
5107         * lib/quotearg.h: Improve documentation.
5108         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
5109         escapes when adding outer quotes.  When quoting trigraphs, use
5110         valid C notation.  When quoting NUL, omit extra characters if next
5111         character is not digit.  Alter prototype.
5112         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
5113         callers.
5114         * modules/quotearg-tests: New module.
5115         * tests/test-quotearg.c: New test.
5116
5117 2008-02-07  Eric Blake  <ebb9@byu.net>
5118
5119         Quotearg part 3: add flag to control outer quote elision.
5120         * lib/quotearg.h (c_maybe_quoting_style): New style.
5121         (enum quoting_flags): Better documentation of flags.
5122         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
5123         c-maybe style.
5124         (quotearg_buffer_restyled): Handle new flag to elide outer
5125         quotes.
5126
5127         Quotearg part 2: add flag that can control NUL elision.
5128         * lib/quotearg.h (set_quoting_flags): New prototype.
5129         * lib/quotearg.c (struct quoting_options): Add flag field.
5130         (set_quoting_flags): New function.
5131         (quotearg_buffer_restyled): Add flags parameter.
5132         (quotearg_alloc_mem): Set the flag if length cannot be returned.
5133         (quotearg_n_options): Set the flag, since length cannot be
5134         returned.
5135         (quoting_options_from_style): Default flags correctly.
5136
5137         Quotearg part 1: more wrappers, restore quotearg_char state.
5138         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
5139         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
5140         (quotearg_colon_mem): New wrappers.
5141         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
5142         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
5143         functions.
5144         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
5145         (quotearg_colon_mem): New functions.
5146
5147 2008-02-11  Bruno Haible  <bruno@clisp.org>
5148
5149         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
5150         library in the current directory: it does not work with parallel make.
5151         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5152
5153 2008-02-11  Bruno Haible  <bruno@clisp.org>
5154
5155         * .gitattributes: New file.
5156
5157 2008-02-11  Jim Meyering  <meyering@redhat.com>
5158
5159         useless-if-before-free: Fix reversed exit values.
5160         * build-aux/useless-if-before-free: Use correct values
5161         for EXIT_MATCH and EXIT_NO_MATCH.
5162
5163         * build-aux/useless-if-before-free: Close stdout carefully.
5164
5165 2008-02-10  Bruno Haible  <bruno@clisp.org>
5166
5167         New module 'git-merge-changelog'.
5168         * modules/git-merge-changelog: New file.
5169         * lib/git-merge-changelog.c: New file.
5170
5171 2008-02-10  Jim Meyering  <meyering@redhat.com>
5172
5173         useless-if-before-free: New option: --list (-l).
5174
5175         useless-if-before-free: Don't exit immediately upon open failure.
5176         * build-aux/useless-if-before-free: Exit 2 for errors.
5177         Upon failure to open a file, don't exit immediately.
5178         Rather, just warn and continue with any remaining files.
5179
5180 2008-02-10  Bruno Haible  <bruno@clisp.org>
5181
5182         New abstract list operation 'node_set_value'.
5183         * lib/gl_list.h (gl_list_node_set_value): New function.
5184         (struct gl_list_implementation): New field node_set_value.
5185         * lib/gl_list.c (gl_list_node_set_value): New function.
5186         * lib/gl_array_list.c (gl_array_node_set_value): New function.
5187         (gl_array_list_implementation): Update.
5188         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
5189         (gl_carray_list_implementation): Update.
5190         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
5191         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
5192         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
5193         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
5194         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
5195         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
5196         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
5197         Update.
5198         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
5199         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
5200         (gl_sublist_list_implementation): Update.
5201
5202 2008-02-10  Bruno Haible  <bruno@clisp.org>
5203
5204         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
5205         Needed when ELEMENT is #defined to 'some_type *'.
5206
5207 2008-02-10  Jim Meyering  <meyering@redhat.com>
5208
5209         New script and module: useless-if-before-free
5210         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
5211         * build-aux/useless-if-before-free: New file.
5212         * modules/useless-if-before-free: New file.
5213
5214         * build-aux/gitlog-to-changelog: Use committer date, not author date.
5215
5216         xstrtol_error: Fix typo.
5217         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
5218         s/exit_failure/exit_status/.
5219
5220 2008-02-09  Jim Meyering  <meyering@redhat.com>
5221
5222         New script and module: gitlog-to-changelog
5223         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
5224         * modules/gitlog-to-changelog: New file.
5225         * build-aux/gitlog-to-changelog: New file.
5226
5227 2008-02-08  Jim Meyering  <meyering@redhat.com>
5228
5229         Avoid two "parameter unused" warnings.
5230         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
5231         Mark "st" as used.
5232
5233         Use "git COMMAND", not "git-COMMAND".
5234         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
5235         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
5236         * build-aux/git-version-gen: Use "git status", not "git-status".
5237
5238 2008-02-07  Bruno Haible  <bruno@clisp.org>
5239
5240         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
5241         Avoids a crash on Windows Vista.
5242         Reported by Adam Strzelecki <ono@java.pl> via
5243         Simon Josefsson <simon@josefsson.org>.
5244
5245 2008-02-06  Bruno Haible  <bruno@clisp.org>
5246
5247         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
5248         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
5249         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
5250         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
5251         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5252         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5253         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
5254         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
5255         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5256         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5257         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5258         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5259         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5260         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5261         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5262         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
5263         left-adjust flag.
5264         * tests/test-snprintf-posix.h (test_function): Likewise.
5265         * tests/test-sprintf-posix.h (test_function): Likewise.
5266         * tests/test-vasprintf-posix.c (test_function): Likewise.
5267         * doc/posix-functions/fprintf.texi: Update.
5268         * doc/posix-functions/printf.texi: Update.
5269         * doc/posix-functions/snprintf.texi: Update.
5270         * doc/posix-functions/sprintf.texi: Update.
5271         * doc/posix-functions/vfprintf.texi: Update.
5272         * doc/posix-functions/vprintf.texi: Update.
5273         * doc/posix-functions/vsnprintf.texi: Update.
5274         * doc/posix-functions/vsprintf.texi: Update.
5275         Reported by Peter Fales <psfales@alcatel-lucent.com>.
5276
5277 2008-02-06  Bruno Haible  <bruno@clisp.org>
5278
5279         Fix bug introduced on 2008-01-26.
5280         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
5281
5282 2008-02-06  Bruno Haible  <bruno@clisp.org>
5283
5284         Fix bug introduced on 2007-06-10.
5285         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
5286         !NEED_PRINTF_FLAG_ZERO.
5287
5288 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
5289
5290         getloadavg: use libperfstat on AIX5
5291         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
5292
5293 2008-02-03  Bruno Haible  <bruno@clisp.org>
5294
5295         * lib/diffseq.h: Add comments about required #includes.
5296         Reported by Michael Biggs <gnulib@doubleplum.net>.
5297
5298 2008-02-01  Bruno Haible  <bruno@clisp.org>
5299
5300         * users.txt: Add gnuit.
5301
5302 2008-01-31  Bruno Haible  <bruno@clisp.org>
5303
5304         * lib/md4.c (set_uint32): Mark as inline.
5305         * lib/md5.c (set_uint32): Likewise.
5306         * lib/sha1.c (set_uint32): Likewise.
5307         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
5308         * m4/md5.m4 (gl_MD5): Likewise.
5309         * m4/sha1.m4 (gl_SHA1): Likewise.
5310
5311 2008-01-31  Jim Meyering  <meyering@redhat.com>
5312
5313         Use "sizeof VAR", rather than a literal "4".
5314         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
5315         * lib/md4.c (md4_read_ctx): Likewise.
5316         * lib/sha1.c (sha1_read_ctx): Likewise.
5317
5318 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5319
5320         * tests/test-sha1.c: New file, based on test-md5.c.
5321
5322         * modules/crypto/sha1-tests: New file.
5323
5324 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5325
5326         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
5327
5328 2008-01-31  Jim Meyering  <meyering@redhat.com>
5329
5330         Prefer "sizeof v" over the equivalent "4".
5331         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
5332         * lib/md5.c (set_uint32): Likewise.
5333         * lib/sha1.c (set_uint32): Likewise.
5334
5335 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5336
5337         * lib/sha1.c (set_uint32): Mark function as static.
5338
5339 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5340
5341         md2: clarify comments to say that alignment is not required.
5342         * lib/md2.h: Remove warning about alignment in comment.
5343         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
5344         never been required.
5345
5346 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5347
5348         md4: adapt alignment constraint fix from sha1.
5349         * lib/md4.c (set_uint32): New function, from sha1.c
5350         (md4_read_ctx): Use it.
5351         (md4_finish_ctx): Doc fix.
5352         * lib/md4.h: Doc fix.
5353
5354 2008-01-31  Simon Josefsson  <simon@josefsson.org>
5355
5356         md5: adapt alignment constraint fix from sha1.
5357         * lib/md5.c (set_uint32): New function, from sha1.c
5358         (md5_read_ctx): Use it.
5359         (md5_finish_ctx): Doc fix.
5360         * lib/md5.h: Doc fix.
5361
5362 2008-01-30  Peter Palfrader  <weasel@debian.org>
5363
5364         sha1: remove the result buffer alignment constraint
5365         * lib/sha1.c (set_uint32): New function.
5366         (sha1_read_ctx): Rewrite to remove the result buffer alignment
5367         constraint.
5368         (sha1_finish_ctx): Remove comment warning about alignment constraint.
5369         * lib/sha1.h: Likewise.
5370
5371 2008-01-30  Andreas Schwab  <schwab@suse.de>
5372             Bruno Haible  <bruno@clisp.org>
5373
5374         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
5375         correct definition of LDBL_MIN_EXP.
5376
5377 2008-01-30  Karl Berry  <karl@gnu.org>
5378
5379         * config/srclist-update: try to preserve x bit on updates.
5380         * config/srclistvars.sh: update for karl.
5381
5382 2008-01-29  Jim Meyering  <meyering@redhat.com>
5383
5384         vasnprintf.c: Avoid warning about unused label
5385         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
5386         "overflow" label definition and associated code with the
5387         same cpp condition that guards the sole use of that label.
5388
5389 2008-01-26  Bruno Haible  <bruno@clisp.org>
5390
5391         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
5392         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
5393         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
5394         * lib/isnanl-nolibm.h (isnanl): Likewise.
5395         Reported by Paul Eggert <eggert@cs.ucla.edu>.
5396
5397 2008-01-26  Bruno Haible  <bruno@clisp.org>
5398
5399         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
5400         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
5401
5402 2008-01-26  Bruno Haible  <bruno@clisp.org>
5403
5404         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
5405         GCC >= 4.0 built-in.
5406         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
5407
5408 2008-01-26  Bruno Haible  <bruno@clisp.org>
5409
5410         Rename isnan, applicable to 'double' only, to isnand.
5411         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
5412         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
5413         (configure.ac): Update.
5414         (Include): Replace "isnan.h" with "isnand.h".
5415         * m4/isnand.m4: Renamed from m4/isnan.m4.
5416         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
5417         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
5418         instead of isnan.c.
5419         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
5420         instead of HAVE_ISNAN_IN_LIBC.
5421         (isnand): Renamed from isnan.
5422         * lib/isnand.c: New file.
5423         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
5424         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
5425         (Makefile.am): Update.
5426         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
5427         Include isnand.h instead of isnan.h.
5428         (main): Test isnand instead of isnan.
5429         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
5430         isnan-nolibm.
5431         * modules/frexp (Depends-on): Likewise.
5432         * modules/frexp-tests (Depends-on): Likewise.
5433         * modules/frexp-nolibm (Depends-on): Likewise.
5434         * modules/frexp-nolibm-tests (Depends-on): Likewise.
5435         * modules/isfinite (Depends-on): Likewise.
5436         * modules/round-tests (Depends-on): Likewise.
5437         * modules/signbit (Depends-on): Likewise.
5438         * modules/signbit-tests (Depends-on): Likewise.
5439         * modules/snprintf-posix (Depends-on): Likewise.
5440         * modules/sprintf-posix (Depends-on): Likewise.
5441         * modules/trunc-tests (Depends-on): Likewise.
5442         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5443         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5444         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5445         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5446         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5447         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5448         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5449         * modules/vasnprintf-posix (Depends-on): Likewise.
5450         * modules/vasprintf-posix (Depends-on): Likewise.
5451         * modules/vfprintf-posix (Depends-on): Likewise.
5452         * modules/vsnprintf-posix (Depends-on): Likewise.
5453         * modules/vsprintf-posix (Depends-on): Likewise.
5454         * lib/frexp.c: Include isnand.h instead of isnan.h.
5455         (ISNAN): Set to isnand instead of isnan.
5456         * lib/isfinite.c: Include isnand.h instead of isnan.h.
5457         (gl_isfinited): Use isnand instead of isnan.
5458         * lib/signbitd.c: Include isnand.h instead of isnan.h.
5459         (gl_signbitd): Use isnand instead of isnan.
5460         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
5461         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
5462         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
5463         (main): Use isnand instead of isnan.
5464         * tests/test-round1.c: Include isnand.h.
5465         (main): Use isnand instead of isnan.
5466         * tests/test-round2.c: Include isnand.h instead of isnan.h.
5467         (ISNAN): Set to isnand instead of isnan.
5468         * tests/test-trunc1.c: Include isnand.h.
5469         (main): Use isnand instead of isnan.
5470         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
5471         (equal): Use isnand instead of isnan.
5472         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
5473         isnand-nolibm.
5474         * NEWS: Mention the change.
5475
5476 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
5477             Bruno Haible  <bruno@clisp.org>
5478
5479         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
5480         the GCC builtins for signbits are present and set
5481         REPLACE_SIGNBIT_USING_GCC if so.
5482         * lib/math.in.h (signbit): Define using GCC builtins if
5483         REPLACE_SIGNBIT_USING_GCC is set.
5484         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
5485         REPLACE_SIGNBIT_USING_GCC.
5486         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
5487
5488 2008-01-25  Jim Meyering  <meyering@redhat.com>
5489
5490         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
5491         * lib/poll.c: Include <config.h>, not "config.h".
5492         * tests/test-getaddrinfo.c: Likewise.
5493
5494 2008-01-25  Simon Josefsson  <simon@josefsson.org>
5495
5496         * modules/sockets-tests: New file.
5497
5498 2008-01-24  Simon Josefsson  <simon@josefsson.org>
5499
5500         * modules/sockets: New module, can be used to call WSA_Startup and
5501         WSA_Cleanup when needed.
5502
5503         * lib/sockets.h, lib/sockets.c: New files.
5504
5505         * m4/sockets.m4: New file.
5506
5507         * tests/test-sockets.c: New file.
5508
5509 2008-01-19  Bruno Haible  <bruno@clisp.org>
5510
5511         * doc/posix-headers: Renamed from doc/headers.
5512         * doc/posix-functions: Renamed from doc/functions.
5513         * doc/gnulib.texi: Update.
5514
5515 2008-01-19  Bruno Haible  <bruno@clisp.org>
5516
5517         * doc/glibc-functions/strcasestr.texi: Include contents of
5518         doc/functions/strcasestr.texi, fixing the list of platforms.
5519         * doc/functions/strcasestr.texi: Remove file.
5520
5521 2008-01-19  Bruno Haible  <bruno@clisp.org>
5522
5523         * doc/glibc-functions/memmem.texi: Include contents of
5524         doc/functions/memmem.texi.
5525         * doc/functions/memmem.texi: Remove file.
5526
5527 2008-01-18  Bruno Haible  <bruno@clisp.org>
5528
5529         * doc/glibc-functions/*.texi: New files.
5530         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
5531         to use the new files.
5532
5533 2008-01-17  Bruno Haible  <bruno@clisp.org>
5534
5535         * tests/test-gethostname.c (main): Fix printf statement.
5536
5537 2008-01-17  Simon Josefsson  <simon@josefsson.org>
5538
5539         * modules/gethostname-tests: New file.
5540
5541         * tests/test-gethostname.c: New file.
5542
5543 2008-01-17  Simon Josefsson  <simon@josefsson.org>
5544
5545         * lib/gethostname.c: Include string.h unconditionally, strncpy is
5546         used by the UNAME case.  Reported by Bruno Haible
5547         <bruno@clisp.org>.
5548
5549 2008-01-17  Eric Blake  <ebb9@byu.net>
5550
5551         Convert c-strcasestr to be more efficient.
5552         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
5553         (Depends-on): Add c-strcase, remove malloca, strnlen.
5554         * tests/test-c-strcasestr.c (main): Enhance test.
5555         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
5556
5557 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
5558
5559         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
5560         Use it in creating po/Makevars.
5561
5562 2008-01-15  Simon Josefsson  <simon@josefsson.org>
5563
5564         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
5565         Applications that requires it should initialize libgcrypt
5566         manually.
5567
5568 2008-01-16  Simon Josefsson  <simon@josefsson.org>
5569
5570         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
5571
5572 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
5573
5574         Fix problem with getdate on mingw32 reported by Simon Josefsson
5575         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
5576         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
5577         tzname", when deciding whether to declare tzname.
5578         * lib/strftime.c (tzname): Likewise.
5579
5580 2008-01-15  Bruno Haible  <bruno@clisp.org>
5581
5582         Work around a MacOS X 10.5 bug in frexpl().
5583         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
5584         * doc/functions/frexpl.texi: Document the bug.
5585         Reported by Elias Pipping <pipping@gentoo.org>.
5586
5587 2008-01-14  Eric Blake  <ebb9@byu.net>
5588
5589         Touch up previous patch.
5590         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
5591         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
5592
5593         Convert strcasestr module to use Two-Way algorithm.
5594         * modules/strcasestr-simple: New module, based on the old
5595         strcasestr, but with Two-Way rather than KMP.
5596         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
5597         * lib/string.in.h (rpl_strcasestr): Declare.
5598         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
5599         performance.
5600         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
5601         * modules/string (Makefile.am): Support strcasestr.
5602         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
5603         * modules/strcasestr-tests (Depends-on): Check for alarm.
5604         * tests/test-strcasestr.c: Augment test.
5605         * lib/str-two-way.h: Clean up stray macro.
5606         * NEWS: Document new module.
5607         * MODULES.html.sh (string handling): Likewise.
5608         * doc/functions/strcasestr.texi: New file.
5609         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
5610         here, since it is not a POSIX function.
5611
5612 2008-01-14  Colin Watson  <cjwatson@debian.org>
5613             Bruno Haible  <bruno@clisp.org>
5614
5615         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
5616         works fine; if not, set REPLACE_STRSIGNAL.
5617         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
5618         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
5619         REPLACE_STRSIGNAL.
5620         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
5621         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
5622         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
5623
5624 2008-01-14  Bruno Haible  <bruno@clisp.org>
5625
5626         * modules/strsignal (Include): Change to <string.h>.
5627
5628 2008-01-14  Colin Watson  <cjwatson@debian.org>
5629
5630         * modules/argp (Notice): Add a notice recommending to change
5631         XGETTEXT_OPTIONS.
5632         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
5633
5634 2008-01-13  Colin Watson  <cjwatson@debian.org>
5635
5636         * modules/strsignal-tests: New file.
5637         * tests/test-strsignal.c: New file.
5638
5639         * lib/strsignal.c: New file, from glibc with modifications.
5640         * lib/siglist.h: New file, from glibc with modifications.
5641         * lib/string.in.h (strsignal): New declaration.
5642         * m4/strsignal.m4: New file.
5643         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
5644         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
5645         * modules/strsignal: New file.
5646         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
5647         HAVE_DECL_STRSIGNAL.
5648
5649 2008-01-13  Bruno Haible  <bruno@clisp.org>
5650
5651         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
5652         locale encoding is not ASCII. Needed for OpenBSD 4.0.
5653         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
5654         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
5655
5656 2008-01-13  Bruno Haible  <bruno@clisp.org>
5657
5658         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
5659         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
5660         * lib/argp.h (__attribute__): Likewise.
5661         * lib/c-stack.c (__attribute__): Likewise.
5662         * lib/error.h (__attribute__): Likewise.
5663         * lib/fts.c (__attribute__): Likewise.
5664         * lib/openat.h (__attribute__): Likewise.
5665         * lib/stdio.in.h (__attribute__): Likewise.
5666         * lib/string.in.h (__attribute__): Likewise.
5667         * lib/utimens.c (__attribute__): Likewise.
5668         * lib/vasnprintf.h (__attribute__): Likewise.
5669         * lib/xalloc.h (__attribute__): Likewise.
5670         * lib/xprintf.h (__attribute__): Likewise.
5671         * lib/xstrtol.h (__attribute__): Likewise.
5672         * lib/xvasprintf.h (__attribute__): Likewise.
5673
5674 2008-01-12  Bruno Haible  <bruno@clisp.org>
5675
5676         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
5677         * doc/glibc-headers/a.out.texi: New file.
5678         * doc/glibc-headers/aliases.texi: New file.
5679         * doc/glibc-headers/alloca.texi: New file.
5680         * doc/glibc-headers/ar.texi: New file.
5681         * doc/glibc-headers/argp.texi: New file.
5682         * doc/glibc-headers/argz.texi: New file.
5683         * doc/glibc-headers/byteswap.texi: New file.
5684         * doc/glibc-headers/crypt.texi: New file.
5685         * doc/glibc-headers/endian.texi: New file.
5686         * doc/glibc-headers/envz.texi: New file.
5687         * doc/glibc-headers/err.texi: New file.
5688         * doc/glibc-headers/error.texi: New file.
5689         * doc/glibc-headers/execinfo.texi: New file.
5690         * doc/glibc-headers/fpu_control.texi: New file.
5691         * doc/glibc-headers/fstab.texi: New file.
5692         * doc/glibc-headers/fts.texi: New file.
5693         * doc/glibc-headers/getopt.texi: New file.
5694         * doc/glibc-headers/ieee754.texi: New file.
5695         * doc/glibc-headers/ifaddrs.texi: New file.
5696         * doc/glibc-headers/libintl.texi: New file.
5697         * doc/glibc-headers/mcheck.texi: New file.
5698         * doc/glibc-headers/mntent.texi: New file.
5699         * doc/glibc-headers/obstack.texi: New file.
5700         * doc/glibc-headers/paths.texi: New file.
5701         * doc/glibc-headers/printf.texi: New file.
5702         * doc/glibc-headers/pty.texi: New file.
5703         * doc/glibc-headers/resolv.texi: New file.
5704         * doc/glibc-headers/shadow.texi: New file.
5705         * doc/glibc-headers/sysexits.texi: New file.
5706         * doc/glibc-headers/ttyent.texi: New file.
5707
5708 2008-01-12  Jim Meyering  <meyering@redhat.com>
5709
5710         announce-gen: emit Gnulib's git-based version string.
5711         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
5712         New option --gnulib-version=V, where V is expected to be
5713         the output of running git describe in the gnulib directory.
5714         (get_tool_versions): Request feedback on xdelta.  I suspect it's
5715         not useful, and plan to stop publishing an xdelta file with each
5716         coreutils release.
5717
5718         * build-aux/announce-gen: Also check for lzma-compressed files.
5719
5720 2008-01-11  Bruno Haible  <bruno@clisp.org>
5721
5722         * tests/test-memmem.c (main): Increase maximum allowed time.
5723         * tests/test-strstr.c (main): Likewise.
5724
5725 2008-01-11  Bruno Haible  <bruno@clisp.org>
5726
5727         * doc/functions/memmem.texi: Add more precisions about platforms.
5728         * doc/functions/strstr.texi: Likewise.
5729
5730 2008-01-10  Eric Blake  <ebb9@byu.net>
5731
5732         * m4/strstr.m4: Delete cruft from copy-n-paste.
5733         Reported by Bruno Haible.
5734
5735 2008-01-10  Bruno Haible  <bruno@clisp.org>
5736
5737         Make c-strstr rely on strstr.
5738         * lib/c-strstr.c: Don't include str-kmp.h.
5739         (c_strstr): Define in terms of strstr.
5740         * modules/c-strstr (Files): Remove lib/str-kmp.h.
5741         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
5742
5743 2008-01-10  Bruno Haible  <bruno@clisp.org>
5744
5745         * doc/gnulib.texi (String Functions in C Locale): New section.
5746         * doc/c-ctype.texi: New file.
5747         * doc/c-strcase.texi: New file.
5748         * doc/c-strcaseeq.texi: New file.
5749         * doc/c-strcasestr.texi: New file.
5750         * doc/c-strstr.texi: New file.
5751         * doc/c-strtod.texi: New file.
5752         * doc/c-strtold.texi: New file.
5753
5754 2008-01-10  Eric Blake  <ebb9@byu.net>
5755
5756         * lib/relocatable.h: Fix a comment.
5757
5758 2008-01-10  Eric Blake  <ebb9@byu.net>
5759
5760         Share two-way algorithm.
5761         * lib/str-two-way.h: New file, merged from...
5762         * lib/memmem.c: ...here...
5763         * lib/strstr.c: ...and here.
5764         * modules/memmem (Files): Use it.
5765         * modules/strstr (Files): Likewise.
5766
5767         Avoid quadratic strstr implementations.
5768         * lib/strstr.c: New file.
5769         * m4/strstr.m4: Likewise.
5770         * modules/strstr: Likewise.
5771         * modules/strstr-tests: Likewise.
5772         * tests/test-strstr.c: Likewise.
5773         * lib/string.in.h (rpl_strstr): Declare.
5774         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
5775         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
5776         * modules/string (Makefile.am): Likewise.
5777         * MODULES.html.sh (string handling): Mention new module.
5778         * doc/functions/strstr.texi (strstr): Document the bug.
5779
5780 2008-01-10  Bruno Haible  <bruno@clisp.org>
5781
5782         * lib/relocatable.h (relocate): State whether result is freshly
5783         allocated or not.
5784         * lib/relocatable.c (relocate): Return a freshly allocated string
5785         instead of a pointer to a privately held string.
5786         Reported by Sylvain Beucler <beuc@gnu.org>.
5787
5788 2008-01-10  Colin Watson  <cjwatson@debian.org>
5789
5790         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
5791         s/S_ISNLK/S_ISLNK/.
5792
5793 2008-01-09  Bruno Haible  <bruno@clisp.org>
5794
5795         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
5796         and other files.
5797         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
5798         if it's only a guess.
5799         * modules/memmem: Simplify by depending on memmem-simple.
5800
5801 2008-01-09  Bruno Haible  <bruno@clisp.org>
5802
5803         Work around OpenBSD 4.0 tdelete() bug.
5804         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
5805         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
5806         macros and don't redefine the enum values.
5807         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
5808         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
5809         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
5810
5811 2008-01-09  Bruno Haible  <bruno@clisp.org>
5812
5813         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
5814         (main): Don't perform the tests if setlocale did not install a UTF-8
5815         locale. Needed on OpenBSD 4.0.
5816         * modules/wcwidth-tests (Depends-on): Add localcharset.
5817
5818 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5819
5820         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
5821         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
5822         * NEWS: announce this.
5823         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
5824
5825 2008-01-09  Simon Josefsson  <simon@josefsson.org>
5826         and Eric Blake  <ebb9@byu.net>
5827
5828         Add memmem-simple module.
5829         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
5830         (gl_FUNC_MEMMEM): Separate performance from presence checks.
5831         * modules/memmem-simple: New file.
5832         * modules/memmem (Description): Tweak.
5833         * MODULES.html.sh (string handling): Mention new module.
5834         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
5835         addressed by memmem-simple.
5836         * NEWS: Document the difference.
5837
5838 2008-01-09  Eric Blake  <ebb9@byu.net>
5839
5840         Give gcc some memmem optimization hints.
5841         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
5842         (strcasestr): Declare as pure.
5843         * modules/memmem (Maintainer): Claim my implementation.
5844
5845 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5846
5847         Support AIX 6.1 and higher.
5848         * build-aux/config.libpath: Likewise.
5849         * build-aux/config.rpath: Likewise.
5850
5851 2008-01-08  Jim Meyering  <meyering@redhat.com>
5852             Bruno Haible  <bruno@clisp.org>
5853
5854         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
5855         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
5856         Reported by Peter Fales in
5857         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
5858
5859 2008-01-08  Bruno Haible  <bruno@clisp.org>
5860
5861         * modules/unictype/category-of (Depends-on): Add
5862         unictype/category-none.
5863         * modules/unictype/category-and-tests (Depends-on): Add
5864         unictype/category-{L,N,Lu,Nd}.
5865         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
5866         * modules/unictype/category-or-tests (Depends-on): Add
5867         unictype/category-{L,N}.
5868         * modules/unictype/category-name-tests (Depends-on): Add
5869         unictype/category-{Z,Nl}.
5870         Reported by Simon Josefsson.
5871
5872 2008-01-08  Bruno Haible  <bruno@clisp.org>
5873
5874         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
5875         convention better.
5876         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
5877         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
5878         Reported by Peter Miller <millerp@canb.auug.org.au>.
5879
5880 2008-01-08  Eric Blake  <ebb9@byu.net>
5881
5882         Rewrite memmem to guarantee linear complexity without malloc.
5883         * lib/memmem.c (memmem): Use Two-Way rather than
5884         Knuth-Morris-Pratt, to allow O(1) space usage.
5885         (critical_factorization, two_way_short_needle)
5886         (two_way_long_needle): New functions.
5887         (knuth_morris_pratt): Delete.
5888         * modules/memmem (Depends-on): No longer need malloca or stdbool.
5889         Add stdint.
5890         * tests/test-memmem.c (main): Add tests for periodic needle and
5891         sublinear performance.
5892         * doc/functions/memmem.texi (memmem): Document other deficiencies
5893         in cygwin and older glibc.
5894
5895 2008-01-08  Bruno Haible  <bruno@clisp.org>
5896
5897         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
5898         augmentation.
5899
5900 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
5901
5902         Add a configure time option: --disable-acl.
5903         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
5904         AC_ARG_ENABLE(acl).
5905
5906 2008-01-06  Simon Josefsson  <simon@josefsson.org>
5907
5908         * tests/test-localename.c: Don't include obsolete "setenv.h".
5909
5910         * modules/localename-tests (Depends-on): Need unsetenv.
5911
5912 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5913
5914         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
5915
5916 2008-01-06  Colin Watson  <cjwatson@debian.org>
5917
5918         * users.txt: Add man-db.
5919
5920 2008-01-07  Bruno Haible  <bruno@clisp.org>
5921
5922         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
5923         previous section name.
5924
5925 2008-01-07  Bruno Haible  <bruno@clisp.org>
5926
5927         * lib/progname.c (set_program_name): Don't strip off a leading
5928         "lt-" prefix outside a .libs directory.
5929         Suggested by Paul Eggert.
5930
5931 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
5932             Bruno Haible  <bruno@clisp.org>
5933
5934         Improve memory cleanup in 'relocatable' module.
5935         * lib/relocatable.h (compute_curr_prefix): Change return type to
5936         'char *'.
5937         * lib/relocatable.c (compute_curr_prefix): Change return type to
5938         'char *'. Free curr_installdir after use.
5939         (relocate): Free curr_prefix_better after use.
5940         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
5941
5942 2008-01-01  Bruno Haible  <bruno@clisp.org>
5943
5944         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
5945         failure on older glibc systems.
5946         Reported by Peter Fales <psfales@alcatel-lucent.com>.
5947
5948 2008-01-05  Eric Blake  <ebb9@byu.net>
5949
5950         Avoid quadratic system memmem.
5951         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
5952         Reported by Ralf Wildenhues.
5953
5954         Fix memmem test for mingw.
5955         * modules/memmem-tests (configure.ac): Check for alarm.
5956         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
5957         it.
5958         * doc/functions/memmem.texi: New file.
5959         * doc/gnulib.texi (Function Substitutes): Add memmem.
5960         Reported by Bruno Haible.
5961
5962 2008-01-04  Bruno Haible  <bruno@clisp.org>
5963
5964         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
5965         Require gl_HEADER_STRINGS_H_DEFAULTS, not
5966         gl_HEADER_STRING_H_DEFAULTS.
5967
5968 2008-01-04  Eric Blake  <ebb9@byu.net>
5969
5970         Shorten duration of memmem test.
5971         * tests/test-memmem.c (main): Use alarm to declare failure if test
5972         is taking too long.
5973         Reported by Ralf Wildenhues.
5974
5975 2007-12-21  Simon Josefsson  <simon@josefsson.org>
5976
5977         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
5978         string, needed by strerror.
5979
5980 2008-01-03  Colin Watson  <cjwatson@debian.org>
5981             Bruno Haible  <bruno@clisp.org>
5982
5983         * doc/gnulib-tool.texi (Localization): New section.
5984
5985 2008-01-02  Bruno Haible  <bruno@clisp.org>
5986
5987         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
5988         variables to 'unsigned char *' type.
5989         Reported by Paul Eggert.
5990
5991 2008-01-02  Jim Meyering  <jim@meyering.net>
5992
5993         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
5994
5995 2007-12-31  Jim Meyering  <jim@meyering.net>
5996
5997         Avoid use of private FTS type name.
5998         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
5999
6000 2007-12-30  Karl Berry  <karl@gnu.org>
6001
6002         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
6003         work around defect in Texinfo and/or the standalone Info browser.
6004
6005 2007-12-30  Bruno Haible  <bruno@clisp.org>
6006
6007         Unify 5 copies of the KMP code.
6008         * lib/str-kmp.h: New file.
6009         * lib/c-strcasestr.c: Include str-kmp.h.
6010         (knuth_morris_pratt): Remove function.
6011         (c_strcasestr): Update.
6012         * lib/c-strstr.c: Include str-kmp.h.
6013         (knuth_morris_pratt): Remove function.
6014         (c_strcasestr): Update.
6015         * lib/mbscasestr.c: Include str-kmp.h.
6016         (knuth_morris_pratt_unibyte): Remove function.
6017         * lib/mbsstr.c: Include str-kmp.h.
6018         (knuth_morris_pratt_unibyte): Remove function.
6019         * lib/strcasestr.c: Include str-kmp.h.
6020         (knuth_morris_pratt): Remove function.
6021         (strcasestr): Update.
6022         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
6023         * modules/c-strstr (Files): Likewise.
6024         * modules/mbscasestr (Files): Likewise.
6025         * modules/mbsstr (Files): Likewise.
6026         * modules/strcasestr (Files): Likewise.
6027         Suggested by Paul Eggert.
6028
6029 2007-12-30  Bruno Haible  <bruno@clisp.org>
6030
6031         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
6032         defined.
6033
6034 2007-12-30  Bruno Haible  <bruno@clisp.org>
6035
6036         * lib/xmalloca.h: Include xalloc.h.
6037         (xnmalloca): New macro.
6038
6039 2007-12-30  Bruno Haible  <bruno@clisp.org>
6040
6041         * lib/malloca.h (nmalloca): New macro.
6042         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
6043         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
6044         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
6045         knuth_morris_pratt_multibyte): Likewise.
6046         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
6047         knuth_morris_pratt_multibyte): Likewise.
6048         * lib/memmem.c (knuth_morris_pratt): Likewise.
6049         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
6050
6051 2007-12-25  Bruno Haible  <bruno@clisp.org>
6052
6053         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
6054         * lib/glob.c: Don't include openat.h.
6055         (link_exists2_p): Add back the code that deals with the
6056         !GLOB_ALTDIRFUNC case.
6057         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
6058         let it do the filename concatenation.
6059         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
6060         * modules/glob (Depends-on): Remove openat.
6061
6062 2007-12-31  Bruno Haible  <bruno@clisp.org>
6063
6064         * modules/dirfd (License): Change to LGPLv2+.
6065         Approved by Jim Meyering.
6066
6067 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
6068
6069         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
6070         when multiplying M by sizeof (size_t).
6071
6072 2007-12-10  Martin Lambers  <marlam@marlam.de>
6073
6074         Override getpagesize on mingw.
6075         * lib/getpagesize.c: New file.
6076         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
6077         * modules/getpagesize (Files): Add lib/getpagesize.c.
6078         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
6079         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
6080         REPLACE_GETPAGESIZE.
6081         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
6082
6083 2007-12-25  Bruno Haible  <bruno@clisp.org>
6084
6085         * modules/localcharset (Notice): New field.
6086         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
6087         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
6088
6089 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
6090             Bruno Haible  <bruno@clisp.org>
6091
6092         Avoid using the syntax symbol() in formatted documentation.
6093         * MODULES.html.sh (func_module): When replacing symbol() with a
6094         hyperlink, remove the parentheses. Show an error if some remain.
6095         Recognize and render the '...' syntax.
6096         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
6097         Rework. Add paragraph about GCC's inlining.
6098         * doc/alloca.texi: Likewise.
6099         * doc/error.texi: Remove parentheses from symbol reference.
6100         * doc/gnulib-intro.texi: Likewise.
6101         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
6102         * modules/fnmatch (Description): Reword to say "the ... function".
6103         * modules/full-read (Description): Likewise.
6104         * modules/full-write (Description): Likewise.
6105         * modules/safe-read (Description): Likewise.
6106         * modules/safe-write (Description): Likewise.
6107         * modules/strchrnul (Description): Likewise.
6108         * modules/trim (Description): Likewise.
6109         * modules/error (Description): Remove parentheses from symbol
6110         references.
6111         * modules/verror (Description): Likewise.
6112         Reported by Karl Berry.
6113
6114 2007-12-25  Bruno Haible  <bruno@clisp.org>
6115
6116         Fixup after 2007-10-16 commit.
6117         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
6118
6119 2007-12-24  Bruno Haible  <bruno@clisp.org>
6120
6121         Make --enable-relocatable work with DESTDIR.
6122         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
6123         to compute installdir from destprog.
6124         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
6125         also set the RELOC_DESTDIR variable.
6126         Reported by Левашев Иван <octagram@bluebottle.com>.
6127
6128 2007-12-24  Bruno Haible  <bruno@clisp.org>
6129
6130         Fix link error due to xalloc_die().
6131         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
6132         of xreadlink.
6133         * lib/relocwrapper.c: Update comments.
6134         * build-aux/install-reloc: Remove xreadlink.c from file list.
6135         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
6136         xreadlink.c.
6137         Reported by Левашев Иван <octagram@bluebottle.com>.
6138
6139 2007-12-24  Bruno Haible  <bruno@clisp.org>
6140
6141         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
6142         * lib/setenv.h: Remove file.
6143         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
6144         lib/setenv.h.
6145         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
6146         (Depends-on): Add stdlib.
6147         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
6148         gl_FUNC_UNSETENV.
6149         (Include): Replace setenv.h with <stdlib.h>.
6150         * modules/unsetenv: New file.
6151         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
6152         * lib/unsetenv.c: Include <stdlib.h> first.
6153         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
6154         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
6155         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
6156         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
6157         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
6158         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
6159         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
6160         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
6161         * doc/functions/unsetenv.texi: Update.
6162         * modules/xsetenv (Depends-on): Add unsetenv.
6163         * modules/getdate (Depends-on): Likewise.
6164         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
6165         * lib/xsetenv.c: Don't include setenv.h.
6166         * lib/getdate.y: Likewise.
6167         * lib/relocwrapper.c: Likewise.
6168         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
6169         (Depends-on): Add stdlib.
6170         * NEWS: Mention the changes.
6171         Reported by Левашев Иван <octagram@bluebottle.com>.
6172
6173 2007-12-23  Bruno Haible  <bruno@clisp.org>
6174
6175         * lib/memmem.c (memmem): Use lowercase variable names. Tab
6176         indentation.
6177
6178 2007-12-23  Bruno Haible  <bruno@clisp.org>
6179
6180         * lib/c-strcasestr.c: Add more comments.
6181         * lib/c-strstr.c: Likewise.
6182         * lib/mbscasestr.c: Likewise.
6183         * lib/mbsstr.c: Likewise.
6184         * lib/strcasestr.c: Likewise.
6185         * lib/memmem.c: Likewise.
6186
6187 2007-12-23  Bruno Haible  <bruno@clisp.org>
6188
6189         * tests/test-memmem.c: Include <string.h> first.
6190
6191 2007-12-22  Bruno Haible  <bruno@clisp.org>
6192
6193         * gnulib-tool (func_create_testdir): Change $auxdir while generating
6194         the contents of $testsbase.
6195         Reported by Ralf Wildenhues.
6196
6197 2007-12-22  Bruno Haible  <bruno@clisp.org>
6198
6199         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
6200         two variables local_ldadd_before, local_ldadd_last.
6201
6202 2007-12-20  Eric Blake  <ebb9@byu.net>
6203
6204         Work around circular library issue when cross-compiling.
6205         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
6206         that progname.o does not need to pull in rpl_memcmp.
6207
6208 2007-12-19  Eric Blake  <ebb9@byu.net>
6209
6210         Fix memmem to avoid O(n^2) worst-case complexity.
6211         * lib/memmem.c (knuth_morris_pratt): New function.
6212         (memmem): Use it if first few naive iterations fail.
6213         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
6214         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
6215         * modules/memchr (License): Likewise.
6216         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
6217         malloca.
6218         * tests/test-memmem.c: Rewrite, borrowing ideas from
6219         test-mbsstr1.c; the old version wouldn't even compile!
6220         * modules/memmem-tests: New file.
6221         * lib/string.in.h (rpl_memmem): Add declaration.
6222         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
6223         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
6224         REPLACE_MEMMEM.
6225
6226 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
6227
6228         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
6229         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
6230         before any system include files, and undef after them all.  This
6231         should fix a problem on VMS reported by John E. Malmberg in
6232         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
6233
6234 2007-12-17  Eric Blake  <ebb9@byu.net>
6235
6236         Revert addition of verify, for BSD/OS.
6237         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
6238         can't handle large files, for the sake of obsolete platforms.
6239         * modules/fseeko (Depends-on): Remove verify.
6240         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
6241         * doc/functions/ftello.texi (ftello): Likewise.
6242         * doc/functions/fgetpos.texi (fgetpos): Likewise.
6243         Reported by Larry Jones.
6244
6245 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
6246
6247         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
6248         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
6249
6250 2007-12-17  Jim Meyering  <meyering@redhat.com>
6251
6252         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
6253         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
6254         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
6255         * modules/getcwd (Depends-on): Add openat.
6256         Reported by Petr Salinger.
6257
6258 2007-12-17  Bruno Haible  <bruno@clisp.org>
6259
6260         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
6261         avoid a segmentation fault of the configure test on x86_64 systems.
6262
6263 2007-12-15  Jim Meyering  <meyering@redhat.com>
6264
6265         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
6266
6267 2007-12-13  Eric Blake  <ebb9@byu.net>
6268
6269         Another fseek test.
6270         * tests/test-fseek.c (main): Also test ungetc handling.
6271         * tests/test-fseeko.c (main): Likewise.
6272         * modules/fseeko (Depends-on): Add verify.
6273         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
6274         large.
6275         Reported by Larry Jones.
6276
6277         Fix fseeko on mingw.
6278         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
6279         seek.
6280
6281         Beef up fseek tests.
6282         * tests/test-fseek.c (main): Also test eof handling.
6283         * tests/test-fseeko.c (main): Likewise.
6284         Reported by Larry Jones.
6285
6286 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
6287
6288         Fix fseeko on BSD-based platforms.
6289         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
6290         successful seek.
6291
6292 2007-12-12  Eric Blake  <ebb9@byu.net>
6293
6294         Allow circular dependency of separate libtests.a
6295         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
6296         when use_libtests.
6297
6298 2007-12-11  Eric Blake  <ebb9@byu.net>
6299
6300         Fix bug with -0.0L in previous patch.
6301         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
6302         * tests/test-isnan.c (main): Also test on zeroes.
6303         * tests/test-isnanf.c (main): Likewise.
6304         * tests/test-isnanl.h (main): Likewise.
6305
6306         Detect pseudo-denormals on x86 even when cross-compiling.
6307         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
6308         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
6309         invalid bit patterns that happen to satisfy ==.
6310
6311         Avoid link failures with separate libtests.a.
6312         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
6313         last, to satisfy circular dependencies.
6314
6315 2007-12-11  Eric Blake  <ebb9@byu.net>
6316         and Bruno Haible  <bruno@clisp.org>
6317
6318         Fix OpenBSD 4.0 <float.h> handling of long double.
6319         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
6320         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
6321         * doc/headers/float.texi (float.h): Document OpenBSD bug.
6322
6323 2007-12-11  Jim Meyering  <meyering@redhat.com>
6324
6325         * users.txt: Add libvirt.
6326
6327         Support versions of autoconf prior to 2.59c.
6328         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
6329         if it is not already defined.
6330
6331 2007-12-09  Bruno Haible  <bruno@clisp.org>
6332
6333         Let 'gnulib-tool --import' collect sources needed for the tests in
6334         tests/ rather than in lib/.
6335         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
6336         argument. If true, add rules to generate libtests.a, and put libtests.a
6337         into $(LDADD). Consider source files in subdirectories and set
6338         uses_subdirs.
6339         (func_emit_initmacro_start, func_emit_initmacro_end,
6340         func_emit_initmacro_done): Pass all arguments explicitly.
6341         (func_import): Determine two module lists main_modules,
6342         testsrelated_modules. Determine use_libtests. Determine two variables
6343         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
6344         instead of just sed_transform_lib_file. Determine two variables
6345         main_files and testsrelated_files. Compute 'files' as the union of
6346         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
6347         func_add_or_update. In the generated gnulib-comp.m4, collect the
6348         object files for tests/ in different variables than those for lib/.
6349         Substitute LIBTESTS_LIBDEPS.
6350         (func_create_testdir): Combine the uses_subdirs results from
6351         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
6352
6353 2007-12-09  Bruno Haible  <bruno@clisp.org>
6354
6355         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
6356         the build-aux directory.
6357
6358 2007-12-09  Bruno Haible  <bruno@clisp.org>
6359
6360         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
6361         introduced on 2006-09-09.
6362
6363 2007-12-07  Jim Meyering  <meyering@redhat.com>
6364
6365         Let these macros work also with autoconf-2.59.
6366         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
6367         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
6368         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
6369
6370 2007-12-06  Jim Meyering  <meyering@redhat.com>
6371
6372         Avoid a configure-time syntax error in gl_FUNC_ACL.
6373         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
6374         function in each branch, before testing the cache variable.
6375
6376 2007-12-04  Eric Blake  <ebb9@byu.net>
6377
6378         Make scripts executable.
6379         * build-aux/config.guess: Add execute permissions.
6380         * build-aux/config.sub: Likewise.
6381         * build-aux/gendocs.sh: Likewise.
6382
6383         Fix frexp on mingw.
6384         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
6385         cross-compiling.
6386         * doc/functions/frexp.texi (frexp): Document the bug.
6387
6388         Make cygwin fseeko check more reliable.
6389         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
6390         version numbers, rather than unrelated feature check.
6391         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
6392         * doc/functions/ftello.texi (ftello): Likewise.
6393         Reported by Bruno Haible.
6394
6395         * m4/strerror.m4: Bump version number.
6396
6397 2007-12-03  Bruno Haible  <bruno@clisp.org>
6398
6399         * doc/functions/mprotect.texi: Mention the mingw problem.
6400
6401 2007-12-03  Eric Blake  <ebb9@byu.net>
6402
6403         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
6404         REPLACE_STRERROR is initialized before this macro.
6405
6406 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
6407
6408         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
6409         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
6410         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
6411         put -lsec in even for programs other than 'ls'.  This fixes a problem
6412         for gettext reported by Bruno Haible in
6413         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
6414         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
6415         Add support for Solaris 10.  This isn't efficient, but should get the
6416         job done for now.
6417
6418 2007-12-03  James Youngman  <jay@gnu.org>
6419
6420         * doc/regexprops-generic.texi: change "an close-group" to "a
6421         close-group" and "illegal" to "not allowed".
6422
6423 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6424
6425         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
6426         pr_byname.h. Needed for the rare case when the maintainer has done
6427         "make maintainer-clean" in the source directory and then attempts a
6428         build outside the source directory.
6429         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
6430         scripts_byname.h.
6431
6432 2007-12-02  Martin Lambers <marlam@marlam.de>
6433             Bruno Haible  <bruno@clisp.org>
6434
6435         * lib/getpagesize.h: Remove file.
6436         * lib/unistd.in.h: Include declaration of getpagesize here.
6437         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
6438         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
6439         HAVE_SYS_PARAM_H.
6440         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
6441         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
6442         * modules/getpagesize (Files): Remove lib/getpagesize.h.
6443         (Depends-on): Add unistd.
6444         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6445         (Include): Use <unistd.h> instead of getpagesize.h.
6446         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
6447         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
6448         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
6449         gl_GETPAGESIZE invocation, already handled by module dependency.
6450         * lib/pagealign_alloc.c: Don't include getpagesize.h.
6451
6452 2007-12-02  Bruno Haible  <bruno@clisp.org>
6453
6454         * modules/strings-tests: New file.
6455         * tests/test-strings.c: New file.
6456
6457         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
6458         * lib/strings.in.h: New file.
6459         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
6460         * m4/strings_h.m4: New file.
6461         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
6462         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
6463         * modules/strings: New file.
6464         * modules/string (Makefile.am): Update.
6465         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
6466         Reported by Karl Berry.
6467
6468 2007-12-01  Eric Blake  <ebb9@byu.net>
6469
6470         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
6471         accomodate fix in cygwin 1.5.25.
6472
6473 2007-12-01  Jim Meyering  <meyering@redhat.com>
6474
6475         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
6476         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
6477         that would inhibit utf8-optimization of a regexp containing line-
6478         or buffer-anchors, e.g., `^', `$'.
6479
6480 2007-11-30  Bruno Haible  <bruno@clisp.org>
6481
6482         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
6483         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
6484         glthread_recursive_lock_init.
6485         * lib/lock.c (glthread_recursive_lock_init)
6486         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
6487         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6488
6489 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
6490
6491         New function qset_acl, like set_acl but with syscall semantics.
6492         * lib/acl.h (qset_acl): New decl.
6493         * lib/acl.c (qset_acl): New function.
6494         (set_acl): Use new function.  Use more-consistent diagnostics.
6495
6496 2007-11-28  Jim Meyering  <meyering@redhat.com>
6497
6498         * modules/physmem (License): Change from GPL to LGPLv2+.
6499
6500 2007-11-26  Bruno Haible  <bruno@clisp.org>
6501
6502         * lib/vasnprintf.c (decode_long_double): Don't abort if the
6503         'long double' type has excess precision.
6504         Reported by Jim Meyering in
6505         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
6506
6507 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6508
6509         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
6510         Sync from <http://gnu.org/licenses>.
6511         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
6512         with license text from same location.
6513         * doc/maintain.texi, doc/standards.texi:  Sync from
6514         <http://savannah.gnu.org/projects/gnustandards>.
6515
6516 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
6517         and Jim Meyering  <meyering@redhat.com>
6518
6519         Adjust getdate' grammar to accept a slightly more regular language.
6520         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
6521         Before, the former was rejected.
6522         * lib/getdate.y (digits_to_date_time): New function, factored
6523         out of ...
6524         (number): ...here.  Just call digits_to_date_time.
6525         (hybrid): New non-terminal to handle an <unsigned number,
6526         signed relative offset> sequence consistently.
6527
6528 2007-11-18  Jim Meyering  <meyering@redhat.com>
6529
6530         Pull my changes from coreutils:
6531         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
6532         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
6533         use of $gnulib_tool_option_extras, so that it's separated from the
6534         preceding argument.
6535
6536         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
6537         * build-aux/bootstrap (cp_mark_as_generated): Create any required
6538         parent destination directories before copying a file into place.
6539
6540 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
6541
6542         bootstrap: work also with 4-argument variant of AC_INIT
6543         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
6544
6545 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
6546
6547         Port test-getaddrinfo to Solaris.
6548         Problem reported by Bruno Haible in
6549         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
6550         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
6551         explanation of setting 'hints'.
6552         Don't reject an implementation merely because it returns EAI_SERVICE.
6553         (EAI_SERVICE): Define to 0 if not defined.
6554
6555 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
6556
6557         The license of gnu-make and posix-shell is now "GPLed build tool".
6558         * modules/gnu-make (License): Likewise.
6559         * modules/posix-shell (License): Likewise.
6560
6561         New module posix-shell, for determining a POSIX shell
6562         or perhaps something that is close enough to a POSIX shell.
6563         * m4/posix-shell.m4: New file.
6564         * modules/posix-shell: New file.
6565
6566         * MODULES.html.sh: Mention new module.
6567
6568         New module gnu-make, for determining whether we're using GNU Make.
6569         * m4/gnu-make.m4: New file.
6570         * modules/gnu-make: New file.
6571         * MODULES.html.sh: Mention new module.
6572
6573 2007-11-14  Jim Meyering  <meyering@redhat.com>
6574
6575         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
6576         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
6577         use this macro to create a function _definition_.
6578         Remove useless "#undef ARGMATCH_DIE".
6579
6580 2007-11-14  Bruno Haible  <bruno@clisp.org>
6581
6582         * lib/config.charset: Update for OpenBSD 4.1.
6583         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
6584
6585 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
6586
6587         Document 64-bit #if problems in stdint.texi.
6588         * doc/headers/stdint.texi (stdint.h): Mention problems with
6589         64-bit-#if, and how to work around them.
6590
6591         Don't insist on 'long long int' support in the preprocessor.  It
6592         breaks too many things.  For example, PRIdMAX still uses a 'long
6593         long int' format with the latest Sun compiler, even though
6594         HAVE_LONG_LONG_INT isn't defined due to that compiler's
6595         preprocessor problem.  This causes the latest coreutils to dump
6596         core on Solaris 10 sparc with the Sun C compiler.
6597         Instead, fix the 2007-10-16 problem in a different way, by evaluating
6598         the troublesome expressions at configure-time, not at #if-time.
6599         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
6600         preprocessor.
6601         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
6602         compile-time C checks, done at 'configure'-time.
6603         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
6604         * modules/inttypes (Makefile): Substitute the new symbols that
6605         gl_INTTYPES_H now generates.
6606         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
6607
6608 2007-11-12  Bruno Haible  <bruno@clisp.org>
6609
6610         Tests for Unicode character classification functions.
6611
6612         * modules/unictype/bidicategory-byname-tests: New file.
6613         * modules/unictype/bidicategory-name-tests: New file.
6614         * modules/unictype/bidicategory-of-tests: New file.
6615         * modules/unictype/bidicategory-test-tests: New file.
6616         * modules/unictype/block-list-tests: New file.
6617         * modules/unictype/block-of-tests: New file.
6618         * modules/unictype/block-test-tests: New file.
6619         * modules/unictype/category-C-tests: New file.
6620         * modules/unictype/category-Cc-tests: New file.
6621         * modules/unictype/category-Cf-tests: New file.
6622         * modules/unictype/category-Cn-tests: New file.
6623         * modules/unictype/category-Co-tests: New file.
6624         * modules/unictype/category-Cs-tests: New file.
6625         * modules/unictype/category-L-tests: New file.
6626         * modules/unictype/category-Ll-tests: New file.
6627         * modules/unictype/category-Lm-tests: New file.
6628         * modules/unictype/category-Lo-tests: New file.
6629         * modules/unictype/category-Lt-tests: New file.
6630         * modules/unictype/category-Lu-tests: New file.
6631         * modules/unictype/category-M-tests: New file.
6632         * modules/unictype/category-Mc-tests: New file.
6633         * modules/unictype/category-Me-tests: New file.
6634         * modules/unictype/category-Mn-tests: New file.
6635         * modules/unictype/category-N-tests: New file.
6636         * modules/unictype/category-Nd-tests: New file.
6637         * modules/unictype/category-Nl-tests: New file.
6638         * modules/unictype/category-No-tests: New file.
6639         * modules/unictype/category-P-tests: New file.
6640         * modules/unictype/category-Pc-tests: New file.
6641         * modules/unictype/category-Pd-tests: New file.
6642         * modules/unictype/category-Pe-tests: New file.
6643         * modules/unictype/category-Pf-tests: New file.
6644         * modules/unictype/category-Pi-tests: New file.
6645         * modules/unictype/category-Po-tests: New file.
6646         * modules/unictype/category-Ps-tests: New file.
6647         * modules/unictype/category-S-tests: New file.
6648         * modules/unictype/category-Sc-tests: New file.
6649         * modules/unictype/category-Sk-tests: New file.
6650         * modules/unictype/category-Sm-tests: New file.
6651         * modules/unictype/category-So-tests: New file.
6652         * modules/unictype/category-Z-tests: New file.
6653         * modules/unictype/category-Zl-tests: New file.
6654         * modules/unictype/category-Zp-tests: New file.
6655         * modules/unictype/category-Zs-tests: New file.
6656         * modules/unictype/category-and-not-tests: New file.
6657         * modules/unictype/category-and-tests: New file.
6658         * modules/unictype/category-byname-tests: New file.
6659         * modules/unictype/category-name-tests: New file.
6660         * modules/unictype/category-none-tests: New file.
6661         * modules/unictype/category-of-tests: New file.
6662         * modules/unictype/category-or-tests: New file.
6663         * modules/unictype/category-test-withtable-tests: New file.
6664         * modules/unictype/combining-class-tests: New file.
6665         * modules/unictype/ctype-alnum-tests: New file.
6666         * modules/unictype/ctype-alpha-tests: New file.
6667         * modules/unictype/ctype-blank-tests: New file.
6668         * modules/unictype/ctype-cntrl-tests: New file.
6669         * modules/unictype/ctype-digit-tests: New file.
6670         * modules/unictype/ctype-graph-tests: New file.
6671         * modules/unictype/ctype-lower-tests: New file.
6672         * modules/unictype/ctype-print-tests: New file.
6673         * modules/unictype/ctype-punct-tests: New file.
6674         * modules/unictype/ctype-space-tests: New file.
6675         * modules/unictype/ctype-upper-tests: New file.
6676         * modules/unictype/ctype-xdigit-tests: New file.
6677         * modules/unictype/decimal-digit-tests: New file.
6678         * modules/unictype/digit-tests: New file.
6679         * modules/unictype/mirror-tests: New file.
6680         * modules/unictype/numeric-tests: New file.
6681         * modules/unictype/property-alphabetic-tests: New file.
6682         * modules/unictype/property-ascii-hex-digit-tests: New file.
6683         * modules/unictype/property-bidi-arabic-digit-tests: New file.
6684         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
6685         * modules/unictype/property-bidi-block-separator-tests: New file.
6686         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
6687         * modules/unictype/property-bidi-common-separator-tests: New file.
6688         * modules/unictype/property-bidi-control-tests: New file.
6689         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
6690         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
6691         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
6692         * modules/unictype/property-bidi-european-digit-tests: New file.
6693         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
6694         * modules/unictype/property-bidi-left-to-right-tests: New file.
6695         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
6696         * modules/unictype/property-bidi-other-neutral-tests: New file.
6697         * modules/unictype/property-bidi-pdf-tests: New file.
6698         * modules/unictype/property-bidi-segment-separator-tests: New file.
6699         * modules/unictype/property-bidi-whitespace-tests: New file.
6700         * modules/unictype/property-byname-tests: New file.
6701         * modules/unictype/property-combining-tests: New file.
6702         * modules/unictype/property-composite-tests: New file.
6703         * modules/unictype/property-currency-symbol-tests: New file.
6704         * modules/unictype/property-dash-tests: New file.
6705         * modules/unictype/property-decimal-digit-tests: New file.
6706         * modules/unictype/property-default-ignorable-code-point-tests: New file.
6707         * modules/unictype/property-deprecated-tests: New file.
6708         * modules/unictype/property-diacritic-tests: New file.
6709         * modules/unictype/property-extender-tests: New file.
6710         * modules/unictype/property-format-control-tests: New file.
6711         * modules/unictype/property-grapheme-base-tests: New file.
6712         * modules/unictype/property-grapheme-extend-tests: New file.
6713         * modules/unictype/property-grapheme-link-tests: New file.
6714         * modules/unictype/property-hex-digit-tests: New file.
6715         * modules/unictype/property-hyphen-tests: New file.
6716         * modules/unictype/property-id-continue-tests: New file.
6717         * modules/unictype/property-id-start-tests: New file.
6718         * modules/unictype/property-ideographic-tests: New file.
6719         * modules/unictype/property-ids-binary-operator-tests: New file.
6720         * modules/unictype/property-ids-trinary-operator-tests: New file.
6721         * modules/unictype/property-ignorable-control-tests: New file.
6722         * modules/unictype/property-iso-control-tests: New file.
6723         * modules/unictype/property-join-control-tests: New file.
6724         * modules/unictype/property-left-of-pair-tests: New file.
6725         * modules/unictype/property-line-separator-tests: New file.
6726         * modules/unictype/property-logical-order-exception-tests: New file.
6727         * modules/unictype/property-lowercase-tests: New file.
6728         * modules/unictype/property-math-tests: New file.
6729         * modules/unictype/property-non-break-tests: New file.
6730         * modules/unictype/property-not-a-character-tests: New file.
6731         * modules/unictype/property-numeric-tests: New file.
6732         * modules/unictype/property-other-alphabetic-tests: New file.
6733         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
6734         * modules/unictype/property-other-grapheme-extend-tests: New file.
6735         * modules/unictype/property-other-id-continue-tests: New file.
6736         * modules/unictype/property-other-id-start-tests: New file.
6737         * modules/unictype/property-other-lowercase-tests: New file.
6738         * modules/unictype/property-other-math-tests: New file.
6739         * modules/unictype/property-other-uppercase-tests: New file.
6740         * modules/unictype/property-paired-punctuation-tests: New file.
6741         * modules/unictype/property-paragraph-separator-tests: New file.
6742         * modules/unictype/property-pattern-syntax-tests: New file.
6743         * modules/unictype/property-pattern-white-space-tests: New file.
6744         * modules/unictype/property-private-use-tests: New file.
6745         * modules/unictype/property-punctuation-tests: New file.
6746         * modules/unictype/property-quotation-mark-tests: New file.
6747         * modules/unictype/property-radical-tests: New file.
6748         * modules/unictype/property-sentence-terminal-tests: New file.
6749         * modules/unictype/property-soft-dotted-tests: New file.
6750         * modules/unictype/property-space-tests: New file.
6751         * modules/unictype/property-terminal-punctuation-tests: New file.
6752         * modules/unictype/property-test-tests: New file.
6753         * modules/unictype/property-titlecase-tests: New file.
6754         * modules/unictype/property-unassigned-code-value-tests: New file.
6755         * modules/unictype/property-unified-ideograph-tests: New file.
6756         * modules/unictype/property-uppercase-tests: New file.
6757         * modules/unictype/property-variation-selector-tests: New file.
6758         * modules/unictype/property-white-space-tests: New file.
6759         * modules/unictype/property-xid-continue-tests: New file.
6760         * modules/unictype/property-xid-start-tests: New file.
6761         * modules/unictype/property-zero-width-tests: New file.
6762         * modules/unictype/scripts-tests: New file.
6763         * modules/unictype/syntax-c-ident-tests: New file.
6764         * modules/unictype/syntax-c-whitespace-tests: New file.
6765         * modules/unictype/syntax-java-ident-tests: New file.
6766         * modules/unictype/syntax-java-whitespace-tests: New file.
6767         * tests/unictype/test-bidi_byname.c: New file.
6768         * tests/unictype/test-bidi_name.c: New file.
6769         * tests/unictype/test-bidi_of.c: New file.
6770         * tests/unictype/test-bidi_test.c: New file.
6771         * tests/unictype/test-block_list.c: New file.
6772         * tests/unictype/test-block_of.c: New file.
6773         * tests/unictype/test-block_test.c: New file.
6774         * tests/unictype/test-categ_and.c: New file.
6775         * tests/unictype/test-categ_and_not.c: New file.
6776         * tests/unictype/test-categ_byname.c: New file.
6777         * tests/unictype/test-categ_name.c: New file.
6778         * tests/unictype/test-categ_none.c: New file.
6779         * tests/unictype/test-categ_of.c: New file.
6780         * tests/unictype/test-categ_or.c: New file.
6781         * tests/unictype/test-categ_test_withtable.c: New file.
6782         * tests/unictype/test-combining.c: New file.
6783         * tests/unictype/test-decdigit.c: New file.
6784         * tests/unictype/test-digit.c: New file.
6785         * tests/unictype/test-mirror.c: New file.
6786         * tests/unictype/test-numeric.c: New file.
6787         * tests/unictype/test-pr_byname.c: New file.
6788         * tests/unictype/test-pr_test.c: New file.
6789         * tests/unictype/test-predicate-part1.h: New file.
6790         * tests/unictype/test-predicate-part2.h: New file.
6791         * tests/unictype/test-scripts.c: New file.
6792         * tests/unictype/test-sy_c_ident.c: New file.
6793         * tests/unictype/test-sy_java_ident.c: New file.
6794
6795         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
6796         for Unicode 5.0.0.
6797         * tests/unictype/test-categ_Cc.c: Likewise.
6798         * tests/unictype/test-categ_Cf.c: Likewise.
6799         * tests/unictype/test-categ_Cn.c: Likewise.
6800         * tests/unictype/test-categ_Co.c: Likewise.
6801         * tests/unictype/test-categ_Cs.c: Likewise.
6802         * tests/unictype/test-categ_L.c: Likewise.
6803         * tests/unictype/test-categ_Ll.c: Likewise.
6804         * tests/unictype/test-categ_Lm.c: Likewise.
6805         * tests/unictype/test-categ_Lo.c: Likewise.
6806         * tests/unictype/test-categ_Lt.c: Likewise.
6807         * tests/unictype/test-categ_Lu.c: Likewise.
6808         * tests/unictype/test-categ_M.c: Likewise.
6809         * tests/unictype/test-categ_Mc.c: Likewise.
6810         * tests/unictype/test-categ_Me.c: Likewise.
6811         * tests/unictype/test-categ_Mn.c: Likewise.
6812         * tests/unictype/test-categ_N.c: Likewise.
6813         * tests/unictype/test-categ_Nd.c: Likewise.
6814         * tests/unictype/test-categ_Nl.c: Likewise.
6815         * tests/unictype/test-categ_No.c: Likewise.
6816         * tests/unictype/test-categ_P.c: Likewise.
6817         * tests/unictype/test-categ_Pc.c: Likewise.
6818         * tests/unictype/test-categ_Pd.c: Likewise.
6819         * tests/unictype/test-categ_Pe.c: Likewise.
6820         * tests/unictype/test-categ_Pf.c: Likewise.
6821         * tests/unictype/test-categ_Pi.c: Likewise.
6822         * tests/unictype/test-categ_Po.c: Likewise.
6823         * tests/unictype/test-categ_Ps.c: Likewise.
6824         * tests/unictype/test-categ_S.c: Likewise.
6825         * tests/unictype/test-categ_Sc.c: Likewise.
6826         * tests/unictype/test-categ_Sk.c: Likewise.
6827         * tests/unictype/test-categ_Sm.c: Likewise.
6828         * tests/unictype/test-categ_So.c: Likewise.
6829         * tests/unictype/test-categ_Z.c: Likewise.
6830         * tests/unictype/test-categ_Zl.c: Likewise.
6831         * tests/unictype/test-categ_Zp.c: Likewise.
6832         * tests/unictype/test-categ_Zs.c: Likewise.
6833         * tests/unictype/test-ctype_alnum.c: Likewise.
6834         * tests/unictype/test-ctype_alpha.c: Likewise.
6835         * tests/unictype/test-ctype_blank.c: Likewise.
6836         * tests/unictype/test-ctype_cntrl.c: Likewise.
6837         * tests/unictype/test-ctype_digit.c: Likewise.
6838         * tests/unictype/test-ctype_graph.c: Likewise.
6839         * tests/unictype/test-ctype_lower.c: Likewise.
6840         * tests/unictype/test-ctype_print.c: Likewise.
6841         * tests/unictype/test-ctype_punct.c: Likewise.
6842         * tests/unictype/test-ctype_space.c: Likewise.
6843         * tests/unictype/test-ctype_upper.c: Likewise.
6844         * tests/unictype/test-ctype_xdigit.c: Likewise.
6845         * tests/unictype/test-decdigit.h: Likewise.
6846         * tests/unictype/test-digit.h: Likewise.
6847         * tests/unictype/test-numeric.h: Likewise.
6848         * tests/unictype/test-pr_alphabetic.c: Likewise.
6849         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
6850         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
6851         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
6852         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
6853         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
6854         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
6855         * tests/unictype/test-pr_bidi_control.c: Likewise.
6856         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
6857         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
6858         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
6859         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
6860         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
6861         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
6862         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
6863         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
6864         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
6865         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
6866         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
6867         * tests/unictype/test-pr_combining.c: Likewise.
6868         * tests/unictype/test-pr_composite.c: Likewise.
6869         * tests/unictype/test-pr_currency_symbol.c: Likewise.
6870         * tests/unictype/test-pr_dash.c: Likewise.
6871         * tests/unictype/test-pr_decimal_digit.c: Likewise.
6872         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
6873         * tests/unictype/test-pr_deprecated.c: Likewise.
6874         * tests/unictype/test-pr_diacritic.c: Likewise.
6875         * tests/unictype/test-pr_extender.c: Likewise.
6876         * tests/unictype/test-pr_format_control.c: Likewise.
6877         * tests/unictype/test-pr_grapheme_base.c: Likewise.
6878         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
6879         * tests/unictype/test-pr_grapheme_link.c: Likewise.
6880         * tests/unictype/test-pr_hex_digit.c: Likewise.
6881         * tests/unictype/test-pr_hyphen.c: Likewise.
6882         * tests/unictype/test-pr_id_continue.c: Likewise.
6883         * tests/unictype/test-pr_id_start.c: Likewise.
6884         * tests/unictype/test-pr_ideographic.c: Likewise.
6885         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
6886         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
6887         * tests/unictype/test-pr_ignorable_control.c: Likewise.
6888         * tests/unictype/test-pr_iso_control.c: Likewise.
6889         * tests/unictype/test-pr_join_control.c: Likewise.
6890         * tests/unictype/test-pr_left_of_pair.c: Likewise.
6891         * tests/unictype/test-pr_line_separator.c: Likewise.
6892         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
6893         * tests/unictype/test-pr_lowercase.c: Likewise.
6894         * tests/unictype/test-pr_math.c: Likewise.
6895         * tests/unictype/test-pr_non_break.c: Likewise.
6896         * tests/unictype/test-pr_not_a_character.c: Likewise.
6897         * tests/unictype/test-pr_numeric.c: Likewise.
6898         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
6899         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
6900         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
6901         * tests/unictype/test-pr_other_id_continue.c: Likewise.
6902         * tests/unictype/test-pr_other_id_start.c: Likewise.
6903         * tests/unictype/test-pr_other_lowercase.c: Likewise.
6904         * tests/unictype/test-pr_other_math.c: Likewise.
6905         * tests/unictype/test-pr_other_uppercase.c: Likewise.
6906         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
6907         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
6908         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
6909         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
6910         * tests/unictype/test-pr_private_use.c: Likewise.
6911         * tests/unictype/test-pr_punctuation.c: Likewise.
6912         * tests/unictype/test-pr_quotation_mark.c: Likewise.
6913         * tests/unictype/test-pr_radical.c: Likewise.
6914         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
6915         * tests/unictype/test-pr_soft_dotted.c: Likewise.
6916         * tests/unictype/test-pr_space.c: Likewise.
6917         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
6918         * tests/unictype/test-pr_titlecase.c: Likewise.
6919         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
6920         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
6921         * tests/unictype/test-pr_uppercase.c: Likewise.
6922         * tests/unictype/test-pr_variation_selector.c: Likewise.
6923         * tests/unictype/test-pr_white_space.c: Likewise.
6924         * tests/unictype/test-pr_xid_continue.c: Likewise.
6925         * tests/unictype/test-pr_xid_start.c: Likewise.
6926         * tests/unictype/test-pr_zero_width.c: Likewise.
6927         * tests/unictype/test-sy_c_whitespace.c: Likewise.
6928         * tests/unictype/test-sy_java_whitespace.c: Likewise.
6929
6930 2007-11-12  Bruno Haible  <bruno@clisp.org>
6931
6932         Unicode character classification functions.
6933         * lib/unictype.h: New file.
6934         * modules/unictype/base: New file.
6935         * modules/unictype/category-L: New file.
6936         * modules/unictype/category-Lu: New file.
6937         * modules/unictype/category-Ll: New file.
6938         * modules/unictype/category-Lt: New file.
6939         * modules/unictype/category-Lm: New file.
6940         * modules/unictype/category-Lo: New file.
6941         * modules/unictype/category-M: New file.
6942         * modules/unictype/category-Mn: New file.
6943         * modules/unictype/category-Mc: New file.
6944         * modules/unictype/category-Me: New file.
6945         * modules/unictype/category-N: New file.
6946         * modules/unictype/category-Nd: New file.
6947         * modules/unictype/category-Nl: New file.
6948         * modules/unictype/category-No: New file.
6949         * modules/unictype/category-P: New file.
6950         * modules/unictype/category-Pc: New file.
6951         * modules/unictype/category-Pd: New file.
6952         * modules/unictype/category-Ps: New file.
6953         * modules/unictype/category-Pe: New file.
6954         * modules/unictype/category-Pi: New file.
6955         * modules/unictype/category-Pf: New file.
6956         * modules/unictype/category-Po: New file.
6957         * modules/unictype/category-S: New file.
6958         * modules/unictype/category-Sm: New file.
6959         * modules/unictype/category-Sc: New file.
6960         * modules/unictype/category-Sk: New file.
6961         * modules/unictype/category-So: New file.
6962         * modules/unictype/category-Z: New file.
6963         * modules/unictype/category-Zs: New file.
6964         * modules/unictype/category-Zl: New file.
6965         * modules/unictype/category-Zp: New file.
6966         * modules/unictype/category-C: New file.
6967         * modules/unictype/category-Cc: New file.
6968         * modules/unictype/category-Cf: New file.
6969         * modules/unictype/category-Cs: New file.
6970         * modules/unictype/category-Co: New file.
6971         * modules/unictype/category-Cn: New file.
6972         * modules/unictype/category-or: New file.
6973         * modules/unictype/category-of: New file.
6974         * modules/unictype/category-test: New file.
6975         * modules/unictype/category-test-withtable: New file.
6976         * modules/unictype/category-byname: New file.
6977         * modules/unictype/category-none: New file.
6978         * modules/unictype/category-and: New file.
6979         * modules/unictype/category-and-not: New file.
6980         * modules/unictype/category-name: New file.
6981         * modules/unictype/combining-class: New file.
6982         * modules/unictype/category-all: New file.
6983         * modules/unictype/bidicategory-all: New file.
6984         * modules/unictype/bidicategory-byname: New file.
6985         * modules/unictype/bidicategory-name: New file.
6986         * modules/unictype/bidicategory-of: New file.
6987         * modules/unictype/bidicategory-test: New file.
6988         * modules/unictype/decimal-digit: New file.
6989         * modules/unictype/digit: New file.
6990         * modules/unictype/numeric: New file.
6991         * modules/unictype/mirror: New file.
6992         * modules/unictype/property-white-space: New file.
6993         * modules/unictype/property-alphabetic: New file.
6994         * modules/unictype/property-other-alphabetic: New file.
6995         * modules/unictype/property-not-a-character: New file.
6996         * modules/unictype/property-default-ignorable-code-point: New file.
6997         * modules/unictype/property-other-default-ignorable-code-point: New
6998         file.
6999         * modules/unictype/property-deprecated: New file.
7000         * modules/unictype/property-logical-order-exception: New file.
7001         * modules/unictype/property-variation-selector: New file.
7002         * modules/unictype/property-private-use: New file.
7003         * modules/unictype/property-unassigned-code-value: New file.
7004         * modules/unictype/property-uppercase: New file.
7005         * modules/unictype/property-other-uppercase: New file.
7006         * modules/unictype/property-lowercase: New file.
7007         * modules/unictype/property-other-lowercase: New file.
7008         * modules/unictype/property-titlecase: New file.
7009         * modules/unictype/property-soft-dotted: New file.
7010         * modules/unictype/property-id-start: New file.
7011         * modules/unictype/property-other-id-start: New file.
7012         * modules/unictype/property-id-continue: New file.
7013         * modules/unictype/property-other-id-continue: New file.
7014         * modules/unictype/property-xid-start: New file.
7015         * modules/unictype/property-xid-continue: New file.
7016         * modules/unictype/property-pattern-white-space: New file.
7017         * modules/unictype/property-pattern-syntax: New file.
7018         * modules/unictype/property-join-control: New file.
7019         * modules/unictype/property-grapheme-base: New file.
7020         * modules/unictype/property-grapheme-extend: New file.
7021         * modules/unictype/property-other-grapheme-extend: New file.
7022         * modules/unictype/property-grapheme-link: New file.
7023         * modules/unictype/property-bidi-control: New file.
7024         * modules/unictype/property-bidi-left-to-right: New file.
7025         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
7026         * modules/unictype/property-bidi-arabic-right-to-left: New file.
7027         * modules/unictype/property-bidi-european-digit: New file.
7028         * modules/unictype/property-bidi-eur-num-separator: New file.
7029         * modules/unictype/property-bidi-eur-num-terminator: New file.
7030         * modules/unictype/property-bidi-arabic-digit: New file.
7031         * modules/unictype/property-bidi-common-separator: New file.
7032         * modules/unictype/property-bidi-block-separator: New file.
7033         * modules/unictype/property-bidi-segment-separator: New file.
7034         * modules/unictype/property-bidi-whitespace: New file.
7035         * modules/unictype/property-bidi-non-spacing-mark: New file.
7036         * modules/unictype/property-bidi-boundary-neutral: New file.
7037         * modules/unictype/property-bidi-pdf: New file.
7038         * modules/unictype/property-bidi-embedding-or-override: New file.
7039         * modules/unictype/property-bidi-other-neutral: New file.
7040         * modules/unictype/property-hex-digit: New file.
7041         * modules/unictype/property-ascii-hex-digit: New file.
7042         * modules/unictype/property-ideographic: New file.
7043         * modules/unictype/property-unified-ideograph: New file.
7044         * modules/unictype/property-radical: New file.
7045         * modules/unictype/property-ids-binary-operator: New file.
7046         * modules/unictype/property-ids-trinary-operator: New file.
7047         * modules/unictype/property-zero-width: New file.
7048         * modules/unictype/property-space: New file.
7049         * modules/unictype/property-non-break: New file.
7050         * modules/unictype/property-iso-control: New file.
7051         * modules/unictype/property-format-control: New file.
7052         * modules/unictype/property-dash: New file.
7053         * modules/unictype/property-hyphen: New file.
7054         * modules/unictype/property-punctuation: New file.
7055         * modules/unictype/property-line-separator: New file.
7056         * modules/unictype/property-paragraph-separator: New file.
7057         * modules/unictype/property-quotation-mark: New file.
7058         * modules/unictype/property-sentence-terminal: New file.
7059         * modules/unictype/property-terminal-punctuation: New file.
7060         * modules/unictype/property-currency-symbol: New file.
7061         * modules/unictype/property-math: New file.
7062         * modules/unictype/property-other-math: New file.
7063         * modules/unictype/property-paired-punctuation: New file.
7064         * modules/unictype/property-left-of-pair: New file.
7065         * modules/unictype/property-combining: New file.
7066         * modules/unictype/property-composite: New file.
7067         * modules/unictype/property-decimal-digit: New file.
7068         * modules/unictype/property-numeric: New file.
7069         * modules/unictype/property-diacritic: New file.
7070         * modules/unictype/property-extender: New file.
7071         * modules/unictype/property-ignorable-control: New file.
7072         * modules/unictype/property-test: New file.
7073         * modules/unictype/property-byname: New file.
7074         * modules/unictype/property-all: New file.
7075         * modules/unictype/scripts: New file.
7076         * modules/unictype/scripts-all: New file.
7077         * modules/unictype/block-of: New file.
7078         * modules/unictype/block-test: New file.
7079         * modules/unictype/block-list: New file.
7080         * modules/unictype/block-all: New file.
7081         * modules/unictype/syntax-c-whitespace: New file.
7082         * modules/unictype/syntax-java-whitespace: New file.
7083         * modules/unictype/syntax-c-ident: New file.
7084         * modules/unictype/syntax-java-ident: New file.
7085         * modules/unictype/ctype-alnum: New file.
7086         * modules/unictype/ctype-alpha: New file.
7087         * modules/unictype/ctype-cntrl: New file.
7088         * modules/unictype/ctype-digit: New file.
7089         * modules/unictype/ctype-graph: New file.
7090         * modules/unictype/ctype-lower: New file.
7091         * modules/unictype/ctype-print: New file.
7092         * modules/unictype/ctype-punct: New file.
7093         * modules/unictype/ctype-space: New file.
7094         * modules/unictype/ctype-upper: New file.
7095         * modules/unictype/ctype-xdigit: New file.
7096         * modules/unictype/ctype-blank: New file.
7097         * lib/unictype/bidi_byname.c: New file.
7098         * lib/unictype/bidi_name.c: New file.
7099         * lib/unictype/bidi_of.c: New file.
7100         * lib/unictype/bidi_test.c: New file.
7101         * lib/unictype/bitmap.h: New file.
7102         * lib/unictype/block_test.c: New file.
7103         * lib/unictype/blocks.c: New file.
7104         * lib/unictype/categ_C.c: New file.
7105         * lib/unictype/categ_Cc.c: New file.
7106         * lib/unictype/categ_Cf.c: New file.
7107         * lib/unictype/categ_Cn.c: New file.
7108         * lib/unictype/categ_Co.c: New file.
7109         * lib/unictype/categ_Cs.c: New file.
7110         * lib/unictype/categ_L.c: New file.
7111         * lib/unictype/categ_Ll.c: New file.
7112         * lib/unictype/categ_Lm.c: New file.
7113         * lib/unictype/categ_Lo.c: New file.
7114         * lib/unictype/categ_Lt.c: New file.
7115         * lib/unictype/categ_Lu.c: New file.
7116         * lib/unictype/categ_M.c: New file.
7117         * lib/unictype/categ_Mc.c: New file.
7118         * lib/unictype/categ_Me.c: New file.
7119         * lib/unictype/categ_Mn.c: New file.
7120         * lib/unictype/categ_N.c: New file.
7121         * lib/unictype/categ_Nd.c: New file.
7122         * lib/unictype/categ_Nl.c: New file.
7123         * lib/unictype/categ_No.c: New file.
7124         * lib/unictype/categ_P.c: New file.
7125         * lib/unictype/categ_Pc.c: New file.
7126         * lib/unictype/categ_Pd.c: New file.
7127         * lib/unictype/categ_Pe.c: New file.
7128         * lib/unictype/categ_Pf.c: New file.
7129         * lib/unictype/categ_Pi.c: New file.
7130         * lib/unictype/categ_Po.c: New file.
7131         * lib/unictype/categ_Ps.c: New file.
7132         * lib/unictype/categ_S.c: New file.
7133         * lib/unictype/categ_Sc.c: New file.
7134         * lib/unictype/categ_Sk.c: New file.
7135         * lib/unictype/categ_Sm.c: New file.
7136         * lib/unictype/categ_So.c: New file.
7137         * lib/unictype/categ_Z.c: New file.
7138         * lib/unictype/categ_Zl.c: New file.
7139         * lib/unictype/categ_Zp.c: New file.
7140         * lib/unictype/categ_Zs.c: New file.
7141         * lib/unictype/categ_and.c: New file.
7142         * lib/unictype/categ_and_not.c: New file.
7143         * lib/unictype/categ_byname.c: New file.
7144         * lib/unictype/categ_name.c: New file.
7145         * lib/unictype/categ_none.c: New file.
7146         * lib/unictype/categ_of.c: New file.
7147         * lib/unictype/categ_or.c: New file.
7148         * lib/unictype/categ_test.c: New file.
7149         * lib/unictype/combining.c: New file.
7150         * lib/unictype/ctype_alnum.c: New file.
7151         * lib/unictype/ctype_alpha.c: New file.
7152         * lib/unictype/ctype_blank.c: New file.
7153         * lib/unictype/ctype_cntrl.c: New file.
7154         * lib/unictype/ctype_digit.c: New file.
7155         * lib/unictype/ctype_graph.c: New file.
7156         * lib/unictype/ctype_lower.c: New file.
7157         * lib/unictype/ctype_print.c: New file.
7158         * lib/unictype/ctype_punct.c: New file.
7159         * lib/unictype/ctype_space.c: New file.
7160         * lib/unictype/ctype_upper.c: New file.
7161         * lib/unictype/ctype_xdigit.c: New file.
7162         * lib/unictype/decdigit.c: New file.
7163         * lib/unictype/digit.c: New file.
7164         * lib/unictype/identsyntaxmap.h: New file.
7165         * lib/unictype/mirror.c: New file.
7166         * lib/unictype/numeric.c: New file.
7167         * lib/unictype/pr_alphabetic.c: New file.
7168         * lib/unictype/pr_ascii_hex_digit.c: New file.
7169         * lib/unictype/pr_bidi_arabic_digit.c: New file.
7170         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
7171         * lib/unictype/pr_bidi_block_separator.c: New file.
7172         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
7173         * lib/unictype/pr_bidi_common_separator.c: New file.
7174         * lib/unictype/pr_bidi_control.c: New file.
7175         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
7176         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
7177         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
7178         * lib/unictype/pr_bidi_european_digit.c: New file.
7179         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
7180         * lib/unictype/pr_bidi_left_to_right.c: New file.
7181         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
7182         * lib/unictype/pr_bidi_other_neutral.c: New file.
7183         * lib/unictype/pr_bidi_pdf.c: New file.
7184         * lib/unictype/pr_bidi_segment_separator.c: New file.
7185         * lib/unictype/pr_bidi_whitespace.c: New file.
7186         * lib/unictype/pr_byname.c: New file.
7187         * lib/unictype/pr_byname.gperf: New file.
7188         * lib/unictype/pr_combining.c: New file.
7189         * lib/unictype/pr_composite.c: New file.
7190         * lib/unictype/pr_currency_symbol.c: New file.
7191         * lib/unictype/pr_dash.c: New file.
7192         * lib/unictype/pr_decimal_digit.c: New file.
7193         * lib/unictype/pr_default_ignorable_code_point.c: New file.
7194         * lib/unictype/pr_deprecated.c: New file.
7195         * lib/unictype/pr_diacritic.c: New file.
7196         * lib/unictype/pr_extender.c: New file.
7197         * lib/unictype/pr_format_control.c: New file.
7198         * lib/unictype/pr_grapheme_base.c: New file.
7199         * lib/unictype/pr_grapheme_extend.c: New file.
7200         * lib/unictype/pr_grapheme_link.c: New file.
7201         * lib/unictype/pr_hex_digit.c: New file.
7202         * lib/unictype/pr_hyphen.c: New file.
7203         * lib/unictype/pr_id_continue.c: New file.
7204         * lib/unictype/pr_id_start.c: New file.
7205         * lib/unictype/pr_ideographic.c: New file.
7206         * lib/unictype/pr_ids_binary_operator.c: New file.
7207         * lib/unictype/pr_ids_trinary_operator.c: New file.
7208         * lib/unictype/pr_ignorable_control.c: New file.
7209         * lib/unictype/pr_iso_control.c: New file.
7210         * lib/unictype/pr_join_control.c: New file.
7211         * lib/unictype/pr_left_of_pair.c: New file.
7212         * lib/unictype/pr_line_separator.c: New file.
7213         * lib/unictype/pr_logical_order_exception.c: New file.
7214         * lib/unictype/pr_lowercase.c: New file.
7215         * lib/unictype/pr_math.c: New file.
7216         * lib/unictype/pr_non_break.c: New file.
7217         * lib/unictype/pr_not_a_character.c: New file.
7218         * lib/unictype/pr_numeric.c: New file.
7219         * lib/unictype/pr_other_alphabetic.c: New file.
7220         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
7221         * lib/unictype/pr_other_grapheme_extend.c: New file.
7222         * lib/unictype/pr_other_id_continue.c: New file.
7223         * lib/unictype/pr_other_id_start.c: New file.
7224         * lib/unictype/pr_other_lowercase.c: New file.
7225         * lib/unictype/pr_other_math.c: New file.
7226         * lib/unictype/pr_other_uppercase.c: New file.
7227         * lib/unictype/pr_paired_punctuation.c: New file.
7228         * lib/unictype/pr_paragraph_separator.c: New file.
7229         * lib/unictype/pr_pattern_syntax.c: New file.
7230         * lib/unictype/pr_pattern_white_space.c: New file.
7231         * lib/unictype/pr_private_use.c: New file.
7232         * lib/unictype/pr_punctuation.c: New file.
7233         * lib/unictype/pr_quotation_mark.c: New file.
7234         * lib/unictype/pr_radical.c: New file.
7235         * lib/unictype/pr_sentence_terminal.c: New file.
7236         * lib/unictype/pr_soft_dotted.c: New file.
7237         * lib/unictype/pr_space.c: New file.
7238         * lib/unictype/pr_terminal_punctuation.c: New file.
7239         * lib/unictype/pr_test.c: New file.
7240         * lib/unictype/pr_titlecase.c: New file.
7241         * lib/unictype/pr_unassigned_code_value.c: New file.
7242         * lib/unictype/pr_unified_ideograph.c: New file.
7243         * lib/unictype/pr_uppercase.c: New file.
7244         * lib/unictype/pr_variation_selector.c: New file.
7245         * lib/unictype/pr_white_space.c: New file.
7246         * lib/unictype/pr_xid_continue.c: New file.
7247         * lib/unictype/pr_xid_start.c: New file.
7248         * lib/unictype/pr_zero_width.c: New file.
7249         * lib/unictype/scripts.c: New file.
7250         * lib/unictype/sy_c_ident.c: New file.
7251         * lib/unictype/sy_c_whitespace.c: New file.
7252         * lib/unictype/sy_java_ident.c: New file.
7253         * lib/unictype/sy_java_whitespace.c: New file.
7254
7255         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
7256         Unicode 5.0.0.
7257         * lib/unictype/blocks.h: Likewise.
7258         * lib/unictype/categ_C.h: Likewise.
7259         * lib/unictype/categ_Cc.h: Likewise.
7260         * lib/unictype/categ_Cf.h: Likewise.
7261         * lib/unictype/categ_Cn.h: Likewise.
7262         * lib/unictype/categ_Co.h: Likewise.
7263         * lib/unictype/categ_Cs.h: Likewise.
7264         * lib/unictype/categ_L.h: Likewise.
7265         * lib/unictype/categ_Ll.h: Likewise.
7266         * lib/unictype/categ_Lm.h: Likewise.
7267         * lib/unictype/categ_Lo.h: Likewise.
7268         * lib/unictype/categ_Lt.h: Likewise.
7269         * lib/unictype/categ_Lu.h: Likewise.
7270         * lib/unictype/categ_M.h: Likewise.
7271         * lib/unictype/categ_Mc.h: Likewise.
7272         * lib/unictype/categ_Me.h: Likewise.
7273         * lib/unictype/categ_Mn.h: Likewise.
7274         * lib/unictype/categ_N.h: Likewise.
7275         * lib/unictype/categ_Nd.h: Likewise.
7276         * lib/unictype/categ_Nl.h: Likewise.
7277         * lib/unictype/categ_No.h: Likewise.
7278         * lib/unictype/categ_P.h: Likewise.
7279         * lib/unictype/categ_Pc.h: Likewise.
7280         * lib/unictype/categ_Pd.h: Likewise.
7281         * lib/unictype/categ_Pe.h: Likewise.
7282         * lib/unictype/categ_Pf.h: Likewise.
7283         * lib/unictype/categ_Pi.h: Likewise.
7284         * lib/unictype/categ_Po.h: Likewise.
7285         * lib/unictype/categ_Ps.h: Likewise.
7286         * lib/unictype/categ_S.h: Likewise.
7287         * lib/unictype/categ_Sc.h: Likewise.
7288         * lib/unictype/categ_Sk.h: Likewise.
7289         * lib/unictype/categ_Sm.h: Likewise.
7290         * lib/unictype/categ_So.h: Likewise.
7291         * lib/unictype/categ_Z.h: Likewise.
7292         * lib/unictype/categ_Zl.h: Likewise.
7293         * lib/unictype/categ_Zp.h: Likewise.
7294         * lib/unictype/categ_Zs.h: Likewise.
7295         * lib/unictype/categ_of.h: Likewise.
7296         * lib/unictype/combining.h: Likewise.
7297         * lib/unictype/ctype_alnum.h: Likewise.
7298         * lib/unictype/ctype_alpha.h: Likewise.
7299         * lib/unictype/ctype_blank.h: Likewise.
7300         * lib/unictype/ctype_cntrl.h: Likewise.
7301         * lib/unictype/ctype_digit.h: Likewise.
7302         * lib/unictype/ctype_graph.h: Likewise.
7303         * lib/unictype/ctype_lower.h: Likewise.
7304         * lib/unictype/ctype_print.h: Likewise.
7305         * lib/unictype/ctype_punct.h: Likewise.
7306         * lib/unictype/ctype_space.h: Likewise.
7307         * lib/unictype/ctype_upper.h: Likewise.
7308         * lib/unictype/ctype_xdigit.h: Likewise.
7309         * lib/unictype/decdigit.h: Likewise.
7310         * lib/unictype/digit.h: Likewise.
7311         * lib/unictype/mirror.h: Likewise.
7312         * lib/unictype/numeric.h: Likewise.
7313         * lib/unictype/pr_alphabetic.h: Likewise.
7314         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
7315         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
7316         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
7317         * lib/unictype/pr_bidi_block_separator.h: Likewise.
7318         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
7319         * lib/unictype/pr_bidi_common_separator.h: Likewise.
7320         * lib/unictype/pr_bidi_control.h: Likewise.
7321         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
7322         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
7323         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
7324         * lib/unictype/pr_bidi_european_digit.h: Likewise.
7325         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
7326         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
7327         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
7328         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
7329         * lib/unictype/pr_bidi_pdf.h: Likewise.
7330         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
7331         * lib/unictype/pr_bidi_whitespace.h: Likewise.
7332         * lib/unictype/pr_combining.h: Likewise.
7333         * lib/unictype/pr_composite.h: Likewise.
7334         * lib/unictype/pr_currency_symbol.h: Likewise.
7335         * lib/unictype/pr_dash.h: Likewise.
7336         * lib/unictype/pr_decimal_digit.h: Likewise.
7337         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
7338         * lib/unictype/pr_deprecated.h: Likewise.
7339         * lib/unictype/pr_diacritic.h: Likewise.
7340         * lib/unictype/pr_extender.h: Likewise.
7341         * lib/unictype/pr_format_control.h: Likewise.
7342         * lib/unictype/pr_grapheme_base.h: Likewise.
7343         * lib/unictype/pr_grapheme_extend.h: Likewise.
7344         * lib/unictype/pr_grapheme_link.h: Likewise.
7345         * lib/unictype/pr_hex_digit.h: Likewise.
7346         * lib/unictype/pr_hyphen.h: Likewise.
7347         * lib/unictype/pr_id_continue.h: Likewise.
7348         * lib/unictype/pr_id_start.h: Likewise.
7349         * lib/unictype/pr_ideographic.h: Likewise.
7350         * lib/unictype/pr_ids_binary_operator.h: Likewise.
7351         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
7352         * lib/unictype/pr_ignorable_control.h: Likewise.
7353         * lib/unictype/pr_iso_control.h: Likewise.
7354         * lib/unictype/pr_join_control.h: Likewise.
7355         * lib/unictype/pr_left_of_pair.h: Likewise.
7356         * lib/unictype/pr_line_separator.h: Likewise.
7357         * lib/unictype/pr_logical_order_exception.h: Likewise.
7358         * lib/unictype/pr_lowercase.h: Likewise.
7359         * lib/unictype/pr_math.h: Likewise.
7360         * lib/unictype/pr_non_break.h: Likewise.
7361         * lib/unictype/pr_not_a_character.h: Likewise.
7362         * lib/unictype/pr_numeric.h: Likewise.
7363         * lib/unictype/pr_other_alphabetic.h: Likewise.
7364         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
7365         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
7366         * lib/unictype/pr_other_id_continue.h: Likewise.
7367         * lib/unictype/pr_other_id_start.h: Likewise.
7368         * lib/unictype/pr_other_lowercase.h: Likewise.
7369         * lib/unictype/pr_other_math.h: Likewise.
7370         * lib/unictype/pr_other_uppercase.h: Likewise.
7371         * lib/unictype/pr_paired_punctuation.h: Likewise.
7372         * lib/unictype/pr_paragraph_separator.h: Likewise.
7373         * lib/unictype/pr_pattern_syntax.h: Likewise.
7374         * lib/unictype/pr_pattern_white_space.h: Likewise.
7375         * lib/unictype/pr_private_use.h: Likewise.
7376         * lib/unictype/pr_punctuation.h: Likewise.
7377         * lib/unictype/pr_quotation_mark.h: Likewise.
7378         * lib/unictype/pr_radical.h: Likewise.
7379         * lib/unictype/pr_sentence_terminal.h: Likewise.
7380         * lib/unictype/pr_soft_dotted.h: Likewise.
7381         * lib/unictype/pr_space.h: Likewise.
7382         * lib/unictype/pr_terminal_punctuation.h: Likewise.
7383         * lib/unictype/pr_titlecase.h: Likewise.
7384         * lib/unictype/pr_unassigned_code_value.h: Likewise.
7385         * lib/unictype/pr_unified_ideograph.h: Likewise.
7386         * lib/unictype/pr_uppercase.h: Likewise.
7387         * lib/unictype/pr_variation_selector.h: Likewise.
7388         * lib/unictype/pr_white_space.h: Likewise.
7389         * lib/unictype/pr_xid_continue.h: Likewise.
7390         * lib/unictype/pr_xid_start.h: Likewise.
7391         * lib/unictype/pr_zero_width.h: Likewise.
7392         * lib/unictype/scripts.h: Likewise.
7393         * lib/unictype/scripts_byname.gperf: Likewise.
7394         * lib/unictype/sy_c_ident.h: Likewise.
7395         * lib/unictype/sy_c_whitespace.h: Likewise.
7396         * lib/unictype/sy_java_ident.h: Likewise.
7397         * lib/unictype/sy_java_whitespace.h: Likewise.
7398
7399         * lib/unictype/Makefile: New file.
7400         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
7401         glibc.
7402         * lib/unictype/3level.h: New file, copied from glibc.
7403         * lib/unictype/3levelbit.h: New file.
7404
7405 2007-11-11  Bruno Haible  <bruno@clisp.org>
7406
7407         * modules/gperf: New file.
7408         * modules/iconv_open (Depends-on): Add it.
7409         (Makefile.am): Remove the GPERF definition.
7410
7411 2007-11-11  Bruno Haible  <bruno@clisp.org>
7412
7413         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
7414         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
7415
7416 2007-11-11  Bruno Haible  <bruno@clisp.org>
7417
7418         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
7419         (usage): Remove function.
7420
7421 2007-11-11  Bruno Haible  <bruno@clisp.org>
7422
7423         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
7424         gl_FUNC_CEILF_LIBS.
7425         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
7426         gl_FUNC_CEIL_LIBS.
7427         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
7428         gl_FUNC_CEILL_LIBS.
7429         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
7430         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
7431         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
7432
7433 2007-11-11  Bruno Haible  <bruno@clisp.org>
7434
7435         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
7436         roundf were declared but do not exist on functions.
7437         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
7438         roundl were declared but do not exist on functions.
7439         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
7440         HAVE_FLOORL_AND_CEILL, respectively.
7441         Needed for Sun C on Solaris 10.
7442
7443 2007-11-11  Bruno Haible  <bruno@clisp.org>
7444
7445         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
7446         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
7447         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
7448         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
7449         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
7450         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
7451         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
7452         HAVE_DECL_ROUNDF.
7453         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
7454         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
7455         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
7456         of HAVE_DECL_ROUND*.
7457         * modules/math (Makefile.am): Update.
7458
7459 2007-11-10  Bruno Haible  <bruno@clisp.org>
7460
7461         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
7462         ptrdiff_t as m4/intl.m4.
7463
7464 2007-11-10  Jim Meyering  <meyering@redhat.com>
7465
7466         Avoid link failure for the argmatch test.
7467         * tests/test-argmatch.c (usage): Define function to avoid a link
7468         failure: argmatch_die requires a usage function.
7469
7470 2007-11-09  Bruno Haible  <bruno@clisp.org>
7471
7472         * doc/functions/snprintf.texi: Mention BeOS deficiency.
7473         * doc/functions/vsnprintf.texi: Likewise.
7474         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
7475         with a size argument < 2.
7476
7477 2007-11-09  Bruno Haible  <bruno@clisp.org>
7478
7479         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
7480         buffer. Fixes an inefficiency introduced on 2007-11-03.
7481
7482 2007-11-09  Bruno Haible  <bruno@clisp.org>
7483
7484         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
7485         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
7486
7487 2007-11-08  Jim Meyering  <meyering@redhat.com>
7488
7489         Change cache variable name prefix "jm_" to "gl_" everywhere.
7490         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
7491         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
7492         * m4/uptime.m4: s/gl_/jm_/
7493
7494 2007-11-07  Bruno Haible  <bruno@clisp.org>
7495
7496         Update to GNU gettext 0.17.
7497         * m4/intl.m4: Update to GNU gettext 0.17.
7498         * m4/po.m4: Likewise.
7499         * modules/gettext (Files): Remove m4/ulonglong.m4.
7500         (configure.ac): Require gettext infrastructure from version 0.17.
7501
7502 2007-11-06  Bruno Haible  <bruno@clisp.org>
7503
7504         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
7505         symbolic values are not defined in a public header.
7506         * lib/freadable.c (freadable) [QNX]: Likewise.
7507         * lib/freadahead.c (freadahead) [QNX]: Likewise.
7508         * lib/freading.c (freading) [QNX]: Likewise.
7509         * lib/fseterr.c (fseterr) [QNX]: Likewise.
7510         * lib/fwritable.c (fwritable) [QNX]: Likewise.
7511         * lib/fwriting.c (fwriting) [QNX]: Likewise.
7512         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
7513         Reported by Alain Magloire.
7514
7515         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
7516
7517 2007-11-05  Bruno Haible  <bruno@clisp.org>
7518
7519         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
7520         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
7521         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
7522         Reported by Eric Blake.
7523
7524 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7525             Bruno Haible  <bruno@clisp.org>
7526
7527         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
7528         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
7529         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
7530         (malloc): Undefine also before including <stdlib.h>.
7531         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
7532         Needed on OSF/1 4.0.
7533
7534 2007-11-05  Jim Meyering  <meyering@redhat.com>
7535
7536         git-version-gen: sync from coreutils.
7537         * build-aux/git-version-gen: Add comments.
7538         Change the first '-' to '.' in the snapshot version string,
7539         e.g., 6.9-377-08144 -> 6.9.377-08144
7540         Remove first parameter.
7541         Don't declare a version "-dirty" merely because a time
7542         stamp has changed.
7543
7544 2007-11-04  Bruno Haible  <bruno@clisp.org>
7545
7546         * lib/lock.h: Protect all macro definitions containing an 'if'
7547         statement through a "do { ... } while (0)".
7548         * lib/tls.h: Likewise.
7549
7550 2007-11-04  Bruno Haible  <bruno@clisp.org>
7551
7552         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
7553
7554 2007-11-04  Bruno Haible  <bruno@clisp.org>
7555
7556         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
7557         * modules/fprintf-posix (Depends-on): Add nocrash.
7558         * modules/snprintf-posix (Depends-on): Likewise.
7559         * modules/sprintf-posix (Depends-on): Likewise.
7560         * modules/vasnprintf-posix (Depends-on): Likewise.
7561         * modules/vasprintf-posix (Depends-on): Likewise.
7562         * modules/vfprintf-posix (Depends-on): Likewise.
7563         * modules/vsnprintf-posix (Depends-on): Likewise.
7564         * modules/vsprintf-posix (Depends-on): Likewise.
7565         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
7566         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
7567         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
7568         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
7569         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
7570         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
7571         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
7572
7573 2007-11-04  Bruno Haible  <bruno@clisp.org>
7574
7575         * modules/nocrash: New file.
7576         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
7577         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
7578
7579 2007-11-04  Bruno Haible  <bruno@clisp.org>
7580
7581         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
7582         precision handling.
7583         * tests/test-vasprintf-posix.c (test_function): Likewise.
7584         * tests/test-snprintf-posix.h (test_function): Likewise.
7585         * tests/test-sprintf-posix.h (test_function): Likewise.
7586
7587         Fix *printf behaviour for large precisions on mingw and BeOS.
7588         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
7589         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
7590         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
7591         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
7592         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7593         gl_PRINTF_PRECISION and test its result. Invoke
7594         gl_PREREQ_VASNPRINTF_PRECISION.
7595         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7596         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7597         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7598         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7599         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7600         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7601         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7602         * doc/functions/fprintf.texi: Update.
7603         * doc/functions/printf.texi: Update.
7604         * doc/functions/snprintf.texi: Update.
7605         * doc/functions/sprintf.texi: Update.
7606         * doc/functions/vfprintf.texi: Update.
7607         * doc/functions/vprintf.texi: Update.
7608         * doc/functions/vsnprintf.texi: Update.
7609         * doc/functions/vsprintf.texi: Update.
7610
7611 2007-11-04  Bruno Haible  <bruno@clisp.org>
7612
7613         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
7614
7615 2007-11-04  Bruno Haible  <bruno@clisp.org>
7616
7617         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
7618         Reported by Sylvain Beucler <beuc@gnu.org>.
7619
7620 2007-11-03  Bruno Haible  <bruno@clisp.org>
7621
7622         * tests/test-fprintf-posix2.sh: New file.
7623         * tests/test-fprintf-posix2.c: New file.
7624         * modules/fprintf-posix-tests (Files): Add them.
7625         (TESTS): Add test-fprintf-posix2.sh.
7626         (configure.ac): Check for getrlimit and setrlimit.
7627         (check_PROGRAMS): Add test-fprintf-posix2.
7628
7629         * tests/test-printf-posix2.sh: New file.
7630         * tests/test-printf-posix2.c: New file.
7631         * modules/printf-posix-tests (Files): Add them.
7632         (TESTS): Add test-printf-posix2.sh.
7633         (configure.ac): Check for getrlimit and setrlimit.
7634         (check_PROGRAMS): Add test-printf-posix2.
7635
7636         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
7637         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
7638         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
7639         (decode_double): New function, copied from decode_long_double.
7640         (scale10_round_decimal_decoded): New function, extracted from
7641         scale10_round_decimal_long_double.
7642         (scale10_round_decimal_long_double): Use it.
7643         (scale10_round_decimal_double): New function.
7644         (floorlog10): New function.
7645         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
7646         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
7647         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
7648         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7649         gl_PRINTF_ENOMEM and test its result. Invoke
7650         gl_PREREQ_VASNPRINTF_ENOMEM.
7651         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
7652         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7653         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7654         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7655         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7656         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7657         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7658         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
7659         * modules/snprintf-posix (Depends-on): Likewise.
7660         * modules/sprintf-posix (Depends-on): Likewise.
7661         * modules/vasnprintf-posix (Depends-on): Likewise.
7662         * modules/vasprintf-posix (Depends-on): Likewise.
7663         * modules/vfprintf-posix (Depends-on): Likewise.
7664         * modules/vsnprintf-posix (Depends-on): Likewise.
7665         * modules/vsprintf-posix (Depends-on): Likewise.
7666         * doc/functions/fprintf.texi: Update.
7667         * doc/functions/printf.texi: Update.
7668         * doc/functions/snprintf.texi: Update.
7669         * doc/functions/sprintf.texi: Update.
7670         * doc/functions/vfprintf.texi: Update.
7671         * doc/functions/vprintf.texi: Update.
7672         * doc/functions/vsnprintf.texi: Update.
7673         * doc/functions/vsprintf.texi: Update.
7674
7675 2007-11-03  Bruno Haible  <bruno@clisp.org>
7676
7677         * modules/frexp-nolibm-tests: New file.
7678
7679         * modules/frexp-nolibm: New file.
7680         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
7681
7682 2007-11-03  Bruno Haible  <bruno@clisp.org>
7683
7684         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
7685         value is C99 compliant.
7686         Needed for OSF/1 5.1.
7687
7688 2007-11-03  Bruno Haible  <bruno@clisp.org>
7689
7690         Fix out-of-memory handling of vasnprintf.
7691         * lib/printf-parse.c: Include <errno.h>.
7692         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
7693         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
7694         is already set.
7695
7696 2007-11-02  Eric Blake  <ebb9@byu.net>
7697
7698         Fix tests on cygwin.
7699         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
7700
7701 2007-11-01  Bruno Haible  <bruno@clisp.org>
7702
7703         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
7704         warning.
7705         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
7706         needed for POSIX compatibility.
7707
7708 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
7709
7710         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
7711         for compatibility with GNU.
7712
7713 2007-11-01  Bruno Haible  <bruno@clisp.org>
7714
7715         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
7716         (putenv): Renamed from rpl_putenv. Change argument type from
7717         'const char *' to 'char *'.
7718         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
7719         of defining putenv in config.h, just set REPLACE_PUTENV.
7720         * modules/putenv (Depends-on): Add stdlib.
7721         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7722         (Include): Use <stdlib.h>.
7723         * lib/stdlib.in.h (putenv): New declaration.
7724         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
7725         REPLACE_PUTENV.
7726         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
7727         REPLACE_PUTENV.
7728         Needed for MacOS X 10.5.0.
7729         Reported by Peter O'Gorman <peter@pogma.com>.
7730
7731 2007-11-01  Jim Meyering  <meyering@redhat.com>
7732
7733         Treat an empty date string exactly like "0".
7734         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
7735         if the remaining date string (to be parsed) is empty, use "0".
7736         Reported by Mischa Molhoek and discussed in this thread:
7737         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
7738
7739 2007-10-31  Bruno Haible  <bruno@clisp.org>
7740
7741         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
7742         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
7743         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
7744         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
7745         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
7746         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
7747
7748 2007-10-31  Bruno Haible  <bruno@clisp.org>
7749
7750         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
7751         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
7752         (AC_TYPE_LONG_LONG_INT): Use it.
7753         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
7754         it as well.
7755         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
7756         to m4/longlong.m4.
7757         * modules/stdint (Files): Remove m4/ulonglong.m4.
7758         * modules/strtoull (Files): Use m4/longlong.m4 instead of
7759         m4/ulonglong.m4.
7760         * modules/strtoumax (Files): Likewise.
7761
7762 2007-10-30  Bruno Haible  <bruno@clisp.org>
7763
7764         * modules/xvasprintf-posix: New file.
7765         Suggested by Eric Blake.
7766
7767 2007-10-30  Bruno Haible  <bruno@clisp.org>
7768
7769         * modules/xprintf-posix-tests: New file.
7770         * tests/test-xprintf-posix.sh: New file.
7771         * tests/test-xprintf-posix.c: New file.
7772         * tests/test-xfprintf-posix.c: New file.
7773
7774         * modules/xprintf-posix: New file.
7775
7776 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7777
7778         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
7779         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
7780         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
7781
7782 2007-10-29  Bruno Haible  <bruno@clisp.org>
7783
7784         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
7785         contain the special marker '_cv_'.
7786         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
7787         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
7788         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
7789         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
7790         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
7791         Reported by Ralf Wildenhues.
7792
7793 2007-10-29  Bruno Haible  <bruno@clisp.org>
7794
7795         * gnulib-tool (func_import): When --lgpl is not specified, set
7796         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
7797         GPLv3.
7798         Reported by Simon Josefsson.
7799
7800 2007-10-28  Bruno Haible  <bruno@clisp.org>
7801
7802         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
7803         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
7804         HAVE_DECL_ISFINITE.
7805         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7806         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
7807         HAVE_DECL_ISFINITE.
7808
7809 2007-10-28  Bruno Haible  <bruno@clisp.org>
7810
7811         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
7812         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
7813
7814 2007-10-28  Bruno Haible  <bruno@clisp.org>
7815
7816         Fix link errors with Sun C 5.0 on Solaris 10.
7817         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
7818         function is declared but not present in the compiler's libm.
7819         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
7820         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
7821         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
7822         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
7823         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
7824         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
7825         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
7826         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
7827         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
7828         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
7829         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
7830         HAVE_DECL_FLOORL.
7831
7832 2007-10-28  Bruno Haible  <bruno@clisp.org>
7833
7834         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
7835         gl_FUNC_FLOORL. Cache the result.
7836         (gl_FUNC_FLOORL): Use it.
7837         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
7838         gl_FUNC_CEILL. Cache the result.
7839         (gl_FUNC_CEILL): Use it.
7840
7841         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
7842         gl_FUNC_FLOOR. Cache the result.
7843         (gl_FUNC_FLOOR): Use it.
7844         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
7845         gl_FUNC_CEIL. Cache the result.
7846         (gl_FUNC_CEIL): Use it.
7847
7848         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
7849         gl_FUNC_FLOORF. Cache the result.
7850         (gl_FUNC_FLOORF): Use it.
7851         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
7852         gl_FUNC_CEILF. Cache the result.
7853         (gl_FUNC_CEILF): Use it.
7854
7855 2007-10-28  Bruno Haible  <bruno@clisp.org>
7856
7857         * gnulib-tool: Allow specifying the LGPL version number through
7858         --lgpl=2 or --lgpl=3.
7859         (func_usage): Document --lgpl with argument.
7860         Handle --lgpl=... arguments.
7861         (func_import): Recognize also gl_LGPL calls with an argument. When
7862         --lgpl=2 is used and the module's license is just LGPL, report an
7863         error. Set sed_transform_lib_file according to the lgpl variable. In
7864         the generated files, use --lgpl or gl_LGPL invocations with argument,
7865         if necessary.
7866         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
7867         an LGPv2+ license.
7868         * doc/gnulib-tool.texi (Modified imports): Update explanation of
7869         gl_LGPL macro.
7870
7871 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7872             Bruno Haible  <bruno@clisp.org>
7873
7874         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
7875         (u16_uctomb_aux): Likewise.
7876         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
7877         !HAVE_INLINE.
7878         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
7879
7880 2007-10-28  Bruno Haible  <bruno@clisp.org>
7881
7882         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
7883         Invoke AM_GETTEXT_OPTION if it exists.
7884         * modules/vasprintf: Likewise.
7885         * modules/verror: Likewise.
7886         * modules/xprintf: Likewise.
7887         * modules/xvasprintf: Likewise.
7888
7889 2007-10-27  Ben Pfaff  <blp@gnu.org>
7890
7891         * lib/math.in.h: Define isfinite macro and prototypes for
7892         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
7893         implementations.
7894         * m4/math_h.m4: New substitutions for isfinite module.
7895         * lib/isfinite.c: New file.
7896         * m4/isfinite.m4: New file.
7897         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
7898         * modules/isfinite: New file.
7899         * modules/isfinite-tests: New file.
7900         * tests/tests-isfinite.c: New file.
7901         * doc/functions/isfinite.texi: Mention isfinite module.
7902         * MODULES.html.sh: Mention new module.
7903
7904 2007-10-27  Ben Pfaff  <blp@gnu.org>
7905
7906         Ralf Wildenhues reported that Tru64 4.0D declares the round
7907         functions but does not have definitions.
7908         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
7909         cannot be found in any library, set the output variable to
7910         "missing" instead of "".
7911         * m4/round.m4: Also use our substitute if we cannot find round in
7912         any library, even if it is declared.
7913         * m4/roundf.m4: Likewise for roundf.
7914         * m4/roundl.m4: Likewise for roundl.
7915         * lib/math.in.h: Undefine roundf, round, roundl before defining
7916         their replacements, to allow for hypothetical systems where these
7917         may be defined as macros but not available in libraries.
7918
7919 2007-10-27  Bruno Haible  <bruno@clisp.org>
7920
7921         * doc/gnulib.texi: Invoke @firstparagraphindent.
7922         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
7923         changes in gnulib.
7924         (Source changes): New section.
7925
7926 2007-10-26  Bruno Haible  <bruno@clisp.org>
7927
7928         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
7929         borrowed from autoconf.
7930
7931 2007-10-26  Bruno Haible  <bruno@clisp.org>
7932
7933         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
7934         strerror returned the empty string. Needed on HP-UX 11.00.
7935
7936 2007-10-24  Micah Cowan  <micah@cowan.name>
7937
7938         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
7939         * build-aux/bootstrap: Remove support for now-unnecessary option,
7940         --cvs-user, and envvars CVS_USER, CVS_RSH.
7941
7942 2007-10-24  Jim Meyering  <meyering@redhat.com>
7943
7944         Avoid diagnostics from sha1sum when there is no cached checksum.
7945         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
7946         if the po.s1 file hasn't been created yet.
7947
7948         * build-aux/bootstrap: Sync from coreutils:
7949         2007-10-24  Jim Meyering  <meyering@redhat.com>
7950         Get gnulib from the git repository, not from an obsolete cvs one.
7951         * build-aux/bootstrap: Suggestion from Micah Cowan.
7952         2007-10-04  Jim Meyering  <jim@meyering.net>
7953         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
7954         (update_po_files): Work also when there are no .po files in po/.
7955
7956 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
7957
7958         * README: Append ".git" to git and cg examples.
7959         Problem reported by Benoit Sigoure.
7960
7961 2007-10-23  Micah Cowan  <micah@cowan.name>
7962
7963         * users.txt: Add wget.
7964
7965 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7966
7967         Fix linking of some unistdio tests on FreeBSD.
7968         * modules/unistdio/u16-vsnprintf-tests
7969         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
7970         * modules/unistdio/u16-vsprintf-tests
7971         (test_u16_vsnprintf1_LDADD): Likewise.
7972         * modules/unistdio/u32-vsnprintf-tests
7973         (test_u32_vsnprintf1_LDADD): Likewise.
7974         * modules/unistdio/u32-vsprintf-tests
7975         (test_u32_vsprintf1_LDADD): Likewise.
7976         * modules/unistdio/u8-vsnprintf-tests
7977         (test_u8_vsnprintf1_LDADD): Likewise.
7978         * modules/unistdio/u8-vsprintf-tests
7979         (test_u8_vsprintf1_LDADD): Likewise.
7980         * modules/unistdio/ulc-vsnprintf-tests
7981         (test_ulc_vsnprintf1_LDADD): Likewise.
7982         * modules/unistdio/ulc-vsprintf-tests
7983         (test_ulc_vsprintf1_LDADD): Likewise.
7984
7985         Fix linking of some uniconv tests on FreeBSD.
7986         * modules/uniconv/u16-conv-from-enc-tests
7987         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
7988         * modules/uniconv/u16-conv-to-enc-tests
7989         (test_u16_conv_to_enc_LDADD): Likewise.
7990         * modules/uniconv/u16-strconv-from-enc-tests
7991         (test_u16_strconv_from_enc_LDADD): Likewise.
7992         * modules/uniconv/u16-strconv-to-enc-tests
7993         (test_u16_strconv_to_enc_LDADD): Likewise.
7994         * modules/uniconv/u32-conv-from-enc-tests
7995         (test_u32_conv_from_enc_LDADD): Likewise.
7996         * modules/uniconv/u32-conv-to-enc-tests
7997         (test_u32_conv_to_enc_LDADD): Likewise.
7998         * modules/uniconv/u32-strconv-from-enc-tests
7999         (test_u32_strconv_from_enc_LDADD): Likewise.
8000         * modules/uniconv/u32-strconv-to-enc-tests
8001         (test_u32_strconv_to_enc_LDADD): Likewise.
8002         * modules/uniconv/u8-conv-from-enc-tests
8003         (test_u8_conv_from_enc_LDADD): Likewise.
8004         * modules/uniconv/u8-conv-to-enc-tests
8005         (test_u8_conv_to_enc_LDADD): Likewise.
8006         * modules/uniconv/u8-strconv-from-enc-tests
8007         (test_u8_strconv_from_enc_LDADD): Likewise.
8008         * modules/uniconv/u8-strconv-to-enc-tests
8009         (test_u8_strconv_to_enc_LDADD): Likewise.
8010
8011 2007-10-22  Bruno Haible  <bruno@clisp.org>
8012
8013         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
8014         size.
8015
8016 2007-10-22  Eric Blake  <ebb9@byu.net>
8017
8018         Tweak x*printf documentation.
8019         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
8020         variable name and comments.
8021         Suggested by Bruno Haible.
8022
8023 2007-10-22  Bruno Haible  <bruno@clisp.org>
8024
8025         * lib/acl.c (copy_acl): Fix file name in comment.
8026
8027 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
8028
8029         Fix Tru64 problem with stdbool.h.
8030         * lib/stdbool.in.h (false, true):
8031         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
8032         Don't declare as an enum in this situation; it runs afoul of Tru64.
8033         Problem reported by Steven M. Schweda in
8034         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
8035
8036 2007-10-22  Eric Blake  <ebb9@byu.net>
8037
8038         Also wrap vf?printf.
8039         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
8040         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
8041         (xvprintf, xvfprintf): New functions.
8042
8043 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8044
8045         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
8046         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
8047
8048         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
8049         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
8050
8051 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
8052
8053         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
8054         by Bruno Haible.
8055
8056 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8057
8058         * lib/getloadavg.c
8059         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
8060         Undef `sys' after including sys/table.h, for Tru64 4.0D.
8061
8062         * tests/test-i-ring.c: Work for C89.
8063
8064 2007-10-22  Bruno Haible  <bruno@clisp.org>
8065
8066         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
8067         -1u, in preprocessor expression, so that we don't test for the bug
8068         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
8069         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
8070
8071 2007-10-22  Eric Blake  <ebb9@byu.net>
8072
8073         * tests/test-yesno.sh: Silence stderr during test.
8074
8075 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8076
8077         * modules/crypto/gc-camellia: New file.
8078
8079         * m4/gc-camellia.m4: New file.
8080
8081         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
8082
8083         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
8084
8085 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8086
8087         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
8088         --help to stdout.  Reported by sms@antinode.org (Steven
8089         M. Schweda).
8090
8091 2007-10-22  Simon Josefsson  <simon@josefsson.org>
8092
8093         * users.txt: Fix link to libksba.
8094
8095 2007-10-21  Ben Pfaff  <blp@gnu.org>
8096
8097         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
8098         round.c roundf implementation that depends on floorf and ceilf to
8099         be tested unconditionally.
8100
8101 2007-10-21  Ben Pfaff  <blp@gnu.org>
8102
8103         * m4/check-libm-func.m4: Removed.
8104         * m4/check-math-lib.m4: New file.
8105         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
8106         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
8107         definition and lack of AC_LIBOBJ([roundf]).
8108         * m4/roundl.m4: Ditto, and similarly for roundl.
8109         * modules/round: Reference new m4 file.
8110         * modules/roundf: Ditto.
8111         * modules/roundl: Ditto.
8112         * tests/test-round2.c (main): Use ROUND instead of round.
8113         Bug report from Bruno Haible.
8114
8115 2007-10-21  Bruno Haible  <bruno@clisp.org>
8116
8117         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
8118         context.
8119
8120 2007-10-21  Bruno Haible  <bruno@clisp.org>
8121
8122         * tests/test-wcwidth.c (main): Allow negative result for some control
8123         characters.
8124
8125         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
8126         Needed on OSF/1 5.1.
8127
8128 2007-10-21  Bruno Haible  <bruno@clisp.org>
8129
8130         * tests/test-floorf1.c: Include isnanf.h.
8131         (main): Use isnanf() instead of isnan().
8132         * tests/test-ceilf1.c: Include isnanf.h.
8133         (main): Use isnanf() instead of isnan().
8134         * tests/test-truncf1.c: Include isnanf.h.
8135         (main): Use isnanf() instead of isnan().
8136         * tests/test-roundf1.c: Include isnanf.h.
8137         (main): Use isnanf() instead of isnan().
8138
8139 2007-10-21  Eric Blake  <ebb9@byu.net>
8140
8141         * users.txt: Update URL for m4.
8142
8143 2007-10-21  Bruno Haible  <bruno@clisp.org>
8144
8145         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
8146
8147 2007-10-21  Bruno Haible  <bruno@clisp.org>
8148
8149         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
8150         Git's management files if the CVS files are not present.
8151
8152 2007-10-20  Bruno Haible  <bruno@clisp.org>
8153
8154         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
8155         gcc-3.4.x.
8156
8157 2007-10-20  Ben Pfaff  <blp@gnu.org>
8158
8159         * lib/math.in.h: Declare round, roundf, roundl if we are providing
8160         implementations.
8161         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
8162         * lib/round.c: New file.
8163         * lib/roundf.c: New file.
8164         * lib/roundl.c: New file.
8165         * m4/round.m4: New file.
8166         * m4/roundf.m4: New file.
8167         * m4/roundl.m4: New file.
8168         * m4/check-libm-func-m4: New file.
8169         * modules/math: Replace round, roundf, roundl related @VARS@ in
8170         math.in.h.
8171         * modules/round: New file.
8172         * modules/round-tests: New file.
8173         * modules/roundf: New file.
8174         * modules/roundf-tests: New file.
8175         * modules/roundl: New file.
8176         * modules/roundl-tests: New file.
8177         * tests/test-round1.c: New file.
8178         * tests/test-round2.c: New file.
8179         * tests/test-roundf1.c: New file.
8180         * tests/test-roundf2.c: New file.
8181         * tests/test-roundl.c: New file.
8182         * doc/functions/round.texi: Mention round module.
8183         * doc/functions/roundf.texi: Mention roundf module.
8184         * doc/functions/roundl.texi: Mention roundl module.
8185         * MODULES.html.sh: Mention new modules.
8186         Thanks to Bruno Haible for suggestions.
8187
8188 2007-10-20  Jim Meyering  <meyering@redhat.com>
8189
8190         * lib/xprintf.c: Include <config.h> unconditionally.
8191
8192         Change xprintf's license to GPL.
8193         * modules/xprintf (License): s/LGPL/GPL/, since this module
8194         depends on modules (exit and exitfail) which are GPL.
8195         Suggestion from Bruno Haible.
8196
8197         xprintf fixes.
8198         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
8199         Use a clearer diagnostic.
8200         Patch from Bruno Haible.
8201
8202 2007-10-20  Bruno Haible  <bruno@clisp.org>
8203
8204         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
8205         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
8206         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8207
8208 2007-10-20  Bruno Haible  <bruno@clisp.org>
8209
8210         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
8211         precision in the comparison result > x - 1 or similar.
8212         * tests/test-ceilf2.c (correct_result_p): Likewise.
8213         * tests/test-truncf2.c (correct_result_p): Likewise.
8214         * tests/test-trunc2.c (correct_result_p): Likewise.
8215         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8216
8217 2007-10-20  Bruno Haible  <bruno@clisp.org>
8218
8219         * modules/ceil: New file.
8220         * m4/ceil.m4: New file.
8221         * doc/functions/ceil.texi: Mention the 'ceil' module.
8222
8223 2007-10-20  Bruno Haible  <bruno@clisp.org>
8224
8225         * modules/floor: New file.
8226         * m4/floor.m4: New file.
8227         * doc/functions/floor.texi: Mention the 'floor' module.
8228
8229 2007-10-20  Bruno Haible  <bruno@clisp.org>
8230
8231         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
8232         of %a.
8233         * modules/floorf-tests (Depends-on): Likewise.
8234         * modules/truncf-tests (Depends-on): Likewise.
8235         * modules/trunc-tests (Depends-on): Likewise.
8236         Reported by Ben Pfaff.
8237
8238 2007-10-19  Jim Meyering  <meyering@redhat.com>
8239
8240         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
8241         Don't bother testing specific errno values.  Just test ferror.
8242
8243         New module: xprintf
8244         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
8245
8246 2007-10-19  Bruno Haible  <bruno@clisp.org>
8247
8248         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
8249         syntax.
8250         * modules/javaexec (Makefile.am): Likewise.
8251         * modules/relocatable-prog (Makefile.am): Likewise.
8252         Suggested by Jim Meyering.
8253
8254 2007-10-18  Bruno Haible  <bruno@clisp.org>
8255
8256         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
8257         Reported by Jim Meyering.
8258
8259 2007-10-18  Eric Blake  <ebb9@byu.net>
8260
8261         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
8262
8263 2007-10-18  Bruno Haible  <bruno@clisp.org>
8264
8265         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
8266         the format string into writable memory. Needed in Fortify conditions.
8267
8268 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
8269             Bruno Haible  <bruno@clisp.org>
8270
8271         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
8272         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
8273         * modules/trim (Depends-on): Add mbchar.
8274         (configure.ac): Add gl_FUNC_MBRTOWC.
8275         (Makefile.am): Augment lib_SOURCES.
8276
8277 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
8278
8279         Modify glob.c to use fstatat and dirfd, to simplify it.
8280         Suggested by Eric Blake.
8281         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
8282         Don't include <stdbool.h>; not used.
8283         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
8284         (link_exists_p): Simplify implementation, since we can now assume
8285         dirfd and fstatat.
8286         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
8287
8288 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8289
8290         * gnulib-tool (func_get_dependencies): Fix sed script to
8291         match only tests.
8292
8293 2007-10-17  Bruno Haible  <bruno@clisp.org>
8294
8295         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
8296         allow locale names without encoding suffix.
8297         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
8298         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
8299
8300 2007-10-16  Bruno Haible  <bruno@clisp.org>
8301
8302         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
8303         * lib/getgroups.c (getgroups): Likewise.
8304         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
8305
8306 2007-10-16  Bruno Haible  <bruno@clisp.org>
8307
8308         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
8309         * modules/malloc-posix (License): Likewise.
8310         * modules/realloc-posix (License): Likewise.
8311         * modules/calloc-posix (License): Likewise.
8312         * modules/intprops (License): Change from GPL to LGPL, with
8313         Paul Eggert's approval.
8314
8315 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
8316
8317         Merge glibc changes into lib/glob.c.
8318
8319         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
8320         2007-10-15 04:59:03 UTC.  Here are the changes:
8321
8322         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
8323
8324         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
8325
8326         * lib/glob.c: Add some branch prediction throughout.
8327
8328         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
8329
8330         [BZ #5103]
8331         * lib/glob.c (glob): Recognize patterns starting \/.
8332
8333         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
8334
8335         [BZ #3996]
8336         * lib/glob.c (attribute_hidden): Define if not defined.
8337         (glob): Unescape dirname, filename or username when needed and not
8338         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
8339         is NULL.  Handle unescaped [ in pattern without closing ].
8340         Don't pass GLOB_CHECK down to recursive glob for directories.
8341         (__glob_pattern_type): New function.
8342         (__glob_pattern_p): Implement using __glob_pattern_type.
8343         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
8344         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
8345         Remove unreachable code.
8346
8347         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
8348
8349         * lib/glob.c (glob_in_dir): Add some comments and asserts to
8350         explain why there are no leaks.
8351
8352         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
8353
8354         [BZ #3253]
8355         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
8356         time, rather allocate increasingly bigger arrays of pointers, if
8357         possible with alloca, if too large with malloc.
8358
8359 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
8360
8361         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
8362         Problem reported by H.Merijn Brand in
8363         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
8364         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
8365         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
8366
8367 2007-10-15  Bruno Haible  <bruno@clisp.org>
8368
8369         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
8370         with explicit rpl_ prefix.
8371         * lib/fopen.c (fopen): Likewise.
8372         * lib/freopen.c (freopen): Likewise.
8373         * lib/iconv.c (iconv): Likewise.
8374         * lib/iconv_close.c (iconv_close): Likewise.
8375
8376 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8377
8378         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
8379
8380 2007-10-15  Bruno Haible  <bruno@clisp.org>
8381
8382         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
8383         <stddef.h> instead of <stdlib.h> since we only need NULL.
8384         Reported by Ben Pfaff <blp@cs.stanford.edu>.
8385
8386 2007-10-15  Bruno Haible  <bruno@clisp.org>
8387
8388         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
8389         Replace paragraph talking about LIBOBJS.
8390         Reported by Colin Watson <cjwatson@debian.org>.
8391
8392 2007-10-15  Bruno Haible  <bruno@clisp.org>
8393
8394         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
8395         <stdlib.h> before using NULL.
8396
8397 2007-10-15  Simon Josefsson  <simon@josefsson.org>
8398
8399         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
8400         Reported by Albert Chin <china@thewrittenword.com>.
8401
8402 2007-10-14  Bruno Haible  <bruno@clisp.org>
8403
8404         * modules/iconv_open-utf-tests: New file.
8405         * tests/test-iconv-utf.c: New file.
8406
8407         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
8408         * modules/iconv_open-utf: New file.
8409         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
8410         (iconv, iconv_close): New declarations.
8411         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
8412         be defined.
8413         (iconv_open): Add special handling of conversion between UTF-8 and
8414         UTF-{16,32}{BE,LE}.
8415         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
8416         * lib/iconv_close.c: New file.
8417         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
8418         gl_FUNC_ICONV_OPEN.
8419         (gl_FUNC_ICONV_OPEN): Use it.
8420         (gl_FUNC_ICONV_OPEN_UTF): New macro.
8421         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
8422         and REPLACE_ICONV_UTF.
8423         * modules/iconv_open (Depends-on): Add c-strcase.
8424         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
8425         ICONV_CONST.
8426         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
8427
8428 2007-10-13  Albert Chin  <china@thewrittenword.com>
8429             Bruno Haible  <bruno@clisp.org>
8430
8431         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
8432         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
8433
8434 2007-10-13  Bruno Haible  <bruno@clisp.org>
8435
8436         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
8437         defined, use the ISO C99 inline semantics.
8438         * lib/argp.h (ARGP_EI): Likewise.
8439
8440 2007-10-13  Bruno Haible  <bruno@clisp.org>
8441
8442         Handle 'inline' change in gcc 4.3.0.
8443         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
8444         argp_fmtstream_write, argp_fmtstream_set_lmargin,
8445         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
8446         argp_fmtstream_point): Disable 'extern' declaration if the function
8447         definition is going to be provided inline.
8448         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
8449         semantics, not the ISO C99 inline semantics.
8450         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
8451         'extern' declaration if the function definition is going to be provided
8452         inline.
8453         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
8454         the GNU C inline semantics, not the ISO C99 inline semantics. With
8455         GCC 4.2, avoid a warning.
8456
8457 2007-10-13  Bruno Haible  <bruno@clisp.org>
8458
8459         * lib/freading.h (freading): Enable the use of __freading for
8460         glibc >= 2.7.
8461         * lib/freading.c (freading): Likewise.
8462
8463 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
8464
8465         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
8466         "warning: C99 inline functions are not supported; using GNU89".
8467
8468 2007-10-12  Bruno Haible  <bruno@clisp.org>
8469
8470         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
8471         of 2.
8472         * tests/test-ceilf2.c: New file.
8473         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
8474
8475         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
8476         * modules/ceilf-tests: Update.
8477
8478 2007-10-12  Bruno Haible  <bruno@clisp.org>
8479
8480         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
8481         of 2.
8482         * tests/test-floorf2.c: New file.
8483         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
8484
8485         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
8486         * modules/floorf-tests: Update.
8487
8488 2007-10-12  Bruno Haible  <bruno@clisp.org>
8489
8490         * tests/test-trunc2.c: New file.
8491         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
8492
8493         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
8494         * modules/trunc-tests: Update.
8495
8496 2007-10-12  Bruno Haible  <bruno@clisp.org>
8497
8498         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
8499         of 2.
8500         * tests/test-truncf2.c: New file.
8501         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
8502
8503         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
8504         * modules/truncf-tests: Update.
8505
8506 2007-10-11  Eric Blake  <ebb9@byu.net>
8507
8508         Don't claim strerror is broken on Interix.
8509         * doc/functions/strerror.texi (strerror): Known broken systems are
8510         now Solaris 8, and not Interix.
8511         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
8512         Interix on cross-compile.
8513         Reported by Martin Koeppe in
8514         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
8515
8516 2007-10-11  Bruno Haible  <bruno@clisp.org>
8517
8518         * modules/i-ring-tests: New file.
8519         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
8520         instead of assert.
8521
8522 2007-10-11  Bruno Haible  <bruno@clisp.org>
8523
8524         * modules/filenamecat-tests: New file.
8525         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
8526         * lib/filenamecat.c: Remove test code.
8527
8528 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
8529
8530         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
8531
8532         * lib/strerror.c: Include <string.h> always, to test interface,
8533         and to remove the need for the dummy.
8534         Include intprops.h to compute width instead of doing it ourselves
8535         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
8536         (strerror): Define it to return NULL if there's no system strerror.
8537         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
8538         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
8539         ancient pre-strerror Unix systems well any more.  Saying "unknown
8540         system error" is enough.
8541         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
8542         simpler strerror.c implementation.
8543         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
8544         Simplify the tests to reflect the simpler strerror implementation.
8545         * modules/strerror (Depends-on): Add intprops.
8546
8547 2007-10-09  Eric Blake  <ebb9@byu.net>
8548
8549         Silence test-fpending.
8550         * modules/fpending-tests (Files): Add wrapper script.
8551         * tests/test-fpending.sh: New file.
8552
8553 2007-10-09  Bruno Haible  <bruno@clisp.org>
8554
8555         * MODULES.html.sh (func_module): Don't create a hyperlink for
8556         function names like 'printf_frexp'.
8557         (Misc): Add crc, memxor.
8558         (Characteristics of floating types): New section.
8559         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
8560         isnanf-nolibm, signbit, trunc, truncf, truncl.
8561         (Enhancements for ISO C 99 functions): New subsection Input/output.
8562         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
8563         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
8564         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
8565         (Compatibility checks for POSIX:2001 functions): Add clock-time.
8566         (Enhancements for POSIX:2001 functions): Add chdir-long.
8567         (File system functions): Add areadlink, chdir-safer, read-file.
8568         Remove cycle-check.
8569         (File system as inode set): New section.
8570         (Date and time): Add gethrxtime.
8571         (Multithreading): Add openmp.
8572         (Internationalization functions): Add localename.
8573         (Unicode string functions): Add unistr/u*-mbsnlen.
8574         (Support for maintaining and releasing projects): Add git-version-gen.
8575         (Lone files): Remove directories.
8576
8577 2007-10-08  Ben Pfaff  <blp@gnu.org>
8578
8579         * lib/xmalloca.h: Fix typo in comment.
8580
8581 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
8582
8583         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
8584         when avoiding problems with integer overflow.  Use a portable test
8585         instead.
8586
8587 2007-10-08  Simon Josefsson  <simon@josefsson.org>
8588
8589         * modules/dummy (License): Change to LGPLv2+.
8590         * modules/float (License): Likewise
8591         * modules/realloc (License): Likewise
8592         * modules/stdlib (License): Likewise
8593
8594 2007-10-07  Bruno Haible  <bruno@clisp.org>
8595
8596         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
8597         * floor.c (TWO_MANT_DIG): Likewise.
8598         * ceil.c (TWO_MANT_DIG): Likewise.
8599         Reported by Ben Pfaff.
8600
8601 2007-10-07  Bruno Haible  <bruno@clisp.org>
8602
8603         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
8604         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
8605         * lib/frexp.c (FUNC): Likewise.
8606         * lib/printf-frexp.h (printf_frexp): Likewise.
8607         * lib/printf-frexpl.h (printf_frexpl): Likewise.
8608         * lib/printf-frexp.c (FUNC): Likewise.
8609         Suggested by Jim Meyering.
8610
8611 2007-10-07  Jim Meyering  <meyering@redhat.com>
8612
8613         Make xnanosleep's integer overflow test more robust.
8614         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
8615         so that gcc-4.3.0 doesn't optimize away this test for overflow.
8616
8617 2007-10-07  Bruno Haible  <bruno@clisp.org>
8618
8619         * NEWS: Mention the license change.
8620
8621         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
8622         abbreviations in the modules files.
8623
8624         Change copyright notice from GPLv2+ to GPLv3+.
8625         * README: Change copyright notice.
8626         * MODULES.html.sh: Likewise.
8627         * build-aux/bootstrap.conf: Likewise.
8628         * build-aux/config.libpath: Likewise.
8629         * build-aux/csharpcomp.sh.in: Likewise.
8630         * build-aux/csharpexec.sh.in: Likewise.
8631         * build-aux/install-reloc: Likewise.
8632         * build-aux/javacomp.sh.in: Likewise.
8633         * build-aux/javaexec.sh.in: Likewise.
8634         * build-aux/ldd.sh.in: Likewise.
8635         * build-aux/reloc-ldflags: Likewise.
8636         * build-aux/relocatable.sh.in: Likewise.
8637         * build-aux/x-to-1.in: Likewise.
8638         * check-module: Likewise.
8639         * config/srclistvars.sh: Likewise.
8640         * gnulib-tool: Likewise.
8641         * lib/acl-internal.h: Likewise.
8642         * lib/acl.c: Likewise.
8643         * lib/acl.h: Likewise.
8644         * lib/acl_entries.c: Likewise.
8645         * lib/areadlink-with-size.c: Likewise.
8646         * lib/areadlink.c: Likewise.
8647         * lib/areadlink.h: Likewise.
8648         * lib/argmatch.c: Likewise.
8649         * lib/argmatch.h: Likewise.
8650         * lib/argp-ba.c: Likewise.
8651         * lib/argp-eexst.c: Likewise.
8652         * lib/argp-fmtstream.c: Likewise.
8653         * lib/argp-fmtstream.h: Likewise.
8654         * lib/argp-fs-xinl.c: Likewise.
8655         * lib/argp-help.c: Likewise.
8656         * lib/argp-namefrob.h: Likewise.
8657         * lib/argp-parse.c: Likewise.
8658         * lib/argp-pin.c: Likewise.
8659         * lib/argp-pv.c: Likewise.
8660         * lib/argp-pvh.c: Likewise.
8661         * lib/argp-xinl.c: Likewise.
8662         * lib/argp.h: Likewise.
8663         * lib/at-func.c: Likewise.
8664         * lib/atanl.c: Likewise.
8665         * lib/backupfile.c: Likewise.
8666         * lib/backupfile.h: Likewise.
8667         * lib/basename.c: Likewise.
8668         * lib/binary-io.h: Likewise.
8669         * lib/byteswap.in.h: Likewise.
8670         * lib/c-stack.c: Likewise.
8671         * lib/c-stack.h: Likewise.
8672         * lib/c-strcasestr.c: Likewise.
8673         * lib/c-strcasestr.h: Likewise.
8674         * lib/c-strstr.c: Likewise.
8675         * lib/c-strstr.h: Likewise.
8676         * lib/c-strtod.c: Likewise.
8677         * lib/calloc.c: Likewise.
8678         * lib/canon-host.c: Likewise.
8679         * lib/canon-host.h: Likewise.
8680         * lib/canonicalize-lgpl.c: Likewise.
8681         * lib/canonicalize.c: Likewise.
8682         * lib/canonicalize.h: Likewise.
8683         * lib/ceil.c: Likewise.
8684         * lib/ceilf.c: Likewise.
8685         * lib/ceill.c: Likewise.
8686         * lib/chdir-long.c: Likewise.
8687         * lib/chdir-long.h: Likewise.
8688         * lib/chdir-safer.c: Likewise.
8689         * lib/chdir-safer.h: Likewise.
8690         * lib/chown.c: Likewise.
8691         * lib/classpath.c: Likewise.
8692         * lib/classpath.h: Likewise.
8693         * lib/clean-temp.c: Likewise.
8694         * lib/clean-temp.h: Likewise.
8695         * lib/cloexec.c: Likewise.
8696         * lib/close-stream.c: Likewise.
8697         * lib/closein.c: Likewise.
8698         * lib/closein.h: Likewise.
8699         * lib/closeout.c: Likewise.
8700         * lib/closeout.h: Likewise.
8701         * lib/concat-filename.c: Likewise.
8702         * lib/copy-file.c: Likewise.
8703         * lib/copy-file.h: Likewise.
8704         * lib/count-one-bits.h: Likewise.
8705         * lib/crc.c: Likewise.
8706         * lib/crc.h: Likewise.
8707         * lib/creat-safer.c: Likewise.
8708         * lib/csharpcomp.c: Likewise.
8709         * lib/csharpcomp.h: Likewise.
8710         * lib/csharpexec.c: Likewise.
8711         * lib/csharpexec.h: Likewise.
8712         * lib/cycle-check.c: Likewise.
8713         * lib/cycle-check.h: Likewise.
8714         * lib/diacrit.c: Likewise.
8715         * lib/diacrit.h: Likewise.
8716         * lib/diffseq.h: Likewise.
8717         * lib/dirchownmod.c: Likewise.
8718         * lib/dirent.in.h: Likewise.
8719         * lib/dirfd.c: Likewise.
8720         * lib/dirfd.h: Likewise.
8721         * lib/dirname.c: Likewise.
8722         * lib/dirname.h: Likewise.
8723         * lib/dummy.c: Likewise.
8724         * lib/dup-safer.c: Likewise.
8725         * lib/dup2.c: Likewise.
8726         * lib/eealloc.h: Likewise.
8727         * lib/error.c: Likewise.
8728         * lib/error.h: Likewise.
8729         * lib/euidaccess.c: Likewise.
8730         * lib/exclude.c: Likewise.
8731         * lib/exclude.h: Likewise.
8732         * lib/execute.c: Likewise.
8733         * lib/execute.h: Likewise.
8734         * lib/exitfail.c: Likewise.
8735         * lib/exitfail.h: Likewise.
8736         * lib/expl.c: Likewise.
8737         * lib/fatal-signal.c: Likewise.
8738         * lib/fatal-signal.h: Likewise.
8739         * lib/fbufmode.c: Likewise.
8740         * lib/fbufmode.h: Likewise.
8741         * lib/fchdir.c: Likewise.
8742         * lib/fchmodat.c: Likewise.
8743         * lib/fchownat.c: Likewise.
8744         * lib/fcntl--.h: Likewise.
8745         * lib/fcntl-safer.h: Likewise.
8746         * lib/fcntl.in.h: Likewise.
8747         * lib/fd-safer.c: Likewise.
8748         * lib/fflush.c: Likewise.
8749         * lib/file-has-acl.c: Likewise.
8750         * lib/file-set.c: Likewise.
8751         * lib/file-type.c: Likewise.
8752         * lib/file-type.h: Likewise.
8753         * lib/fileblocks.c: Likewise.
8754         * lib/filemode.c: Likewise.
8755         * lib/filemode.h: Likewise.
8756         * lib/filename.h: Likewise.
8757         * lib/filenamecat.c: Likewise.
8758         * lib/filenamecat.h: Likewise.
8759         * lib/findprog.c: Likewise.
8760         * lib/findprog.h: Likewise.
8761         * lib/float.in.h: Likewise.
8762         * lib/floor.c: Likewise.
8763         * lib/floorf.c: Likewise.
8764         * lib/floorl.c: Likewise.
8765         * lib/fopen-safer.c: Likewise.
8766         * lib/fopen.c: Likewise.
8767         * lib/fpending.c: Likewise.
8768         * lib/fpending.h: Likewise.
8769         * lib/fprintf.c: Likewise.
8770         * lib/fprintftime.h: Likewise.
8771         * lib/fpucw.h: Likewise.
8772         * lib/fpurge.c: Likewise.
8773         * lib/fpurge.h: Likewise.
8774         * lib/freadable.c: Likewise.
8775         * lib/freadable.h: Likewise.
8776         * lib/freadahead.c: Likewise.
8777         * lib/freadahead.h: Likewise.
8778         * lib/freading.c: Likewise.
8779         * lib/freading.h: Likewise.
8780         * lib/free.c: Likewise.
8781         * lib/freopen.c: Likewise.
8782         * lib/frexp.c: Likewise.
8783         * lib/frexpl.c: Likewise.
8784         * lib/fseek.c: Likewise.
8785         * lib/fseterr.c: Likewise.
8786         * lib/fseterr.h: Likewise.
8787         * lib/fstatat.c: Likewise.
8788         * lib/fstrcmp.c: Likewise.
8789         * lib/fstrcmp.h: Likewise.
8790         * lib/fsusage.c: Likewise.
8791         * lib/fsusage.h: Likewise.
8792         * lib/ftell.c: Likewise.
8793         * lib/ftello.c: Likewise.
8794         * lib/fts-cycle.c: Likewise.
8795         * lib/fts.c: Likewise.
8796         * lib/fts_.h: Likewise.
8797         * lib/full-read.c: Likewise.
8798         * lib/full-read.h: Likewise.
8799         * lib/full-write.c: Likewise.
8800         * lib/full-write.h: Likewise.
8801         * lib/fwritable.c: Likewise.
8802         * lib/fwritable.h: Likewise.
8803         * lib/fwriteerror.c: Likewise.
8804         * lib/fwriteerror.h: Likewise.
8805         * lib/fwriting.c: Likewise.
8806         * lib/fwriting.h: Likewise.
8807         * lib/gcd.c: Likewise.
8808         * lib/gcd.h: Likewise.
8809         * lib/getcwd.c: Likewise.
8810         * lib/getdate.h: Likewise.
8811         * lib/getdate.y: Likewise.
8812         * lib/getdomainname.c: Likewise.
8813         * lib/getdomainname.h: Likewise.
8814         * lib/getgroups.c: Likewise.
8815         * lib/gethostname.c: Likewise.
8816         * lib/gethrxtime.c: Likewise.
8817         * lib/gethrxtime.h: Likewise.
8818         * lib/getloadavg.c: Likewise.
8819         * lib/getndelim2.c: Likewise.
8820         * lib/getndelim2.h: Likewise.
8821         * lib/getnline.c: Likewise.
8822         * lib/getnline.h: Likewise.
8823         * lib/getopt.c: Likewise.
8824         * lib/getopt.in.h: Likewise.
8825         * lib/getopt1.c: Likewise.
8826         * lib/getopt_int.h: Likewise.
8827         * lib/getpagesize.h: Likewise.
8828         * lib/getsubopt.c: Likewise.
8829         * lib/gettime.c: Likewise.
8830         * lib/getugroups.c: Likewise.
8831         * lib/getugroups.h: Likewise.
8832         * lib/getusershell.c: Likewise.
8833         * lib/gl_anyavltree_list1.h: Likewise.
8834         * lib/gl_anyavltree_list2.h: Likewise.
8835         * lib/gl_anyhash_list1.h: Likewise.
8836         * lib/gl_anyhash_list2.h: Likewise.
8837         * lib/gl_anylinked_list1.h: Likewise.
8838         * lib/gl_anylinked_list2.h: Likewise.
8839         * lib/gl_anyrbtree_list1.h: Likewise.
8840         * lib/gl_anyrbtree_list2.h: Likewise.
8841         * lib/gl_anytree_list1.h: Likewise.
8842         * lib/gl_anytree_list2.h: Likewise.
8843         * lib/gl_anytree_oset.h: Likewise.
8844         * lib/gl_anytreehash_list1.h: Likewise.
8845         * lib/gl_anytreehash_list2.h: Likewise.
8846         * lib/gl_array_list.c: Likewise.
8847         * lib/gl_array_list.h: Likewise.
8848         * lib/gl_array_oset.c: Likewise.
8849         * lib/gl_array_oset.h: Likewise.
8850         * lib/gl_avltree_list.c: Likewise.
8851         * lib/gl_avltree_list.h: Likewise.
8852         * lib/gl_avltree_oset.c: Likewise.
8853         * lib/gl_avltree_oset.h: Likewise.
8854         * lib/gl_avltreehash_list.c: Likewise.
8855         * lib/gl_avltreehash_list.h: Likewise.
8856         * lib/gl_carray_list.c: Likewise.
8857         * lib/gl_carray_list.h: Likewise.
8858         * lib/gl_linked_list.c: Likewise.
8859         * lib/gl_linked_list.h: Likewise.
8860         * lib/gl_linkedhash_list.c: Likewise.
8861         * lib/gl_linkedhash_list.h: Likewise.
8862         * lib/gl_list.c: Likewise.
8863         * lib/gl_list.h: Likewise.
8864         * lib/gl_oset.c: Likewise.
8865         * lib/gl_oset.h: Likewise.
8866         * lib/gl_rbtree_list.c: Likewise.
8867         * lib/gl_rbtree_list.h: Likewise.
8868         * lib/gl_rbtree_oset.c: Likewise.
8869         * lib/gl_rbtree_oset.h: Likewise.
8870         * lib/gl_rbtreehash_list.c: Likewise.
8871         * lib/gl_rbtreehash_list.h: Likewise.
8872         * lib/gl_sublist.c: Likewise.
8873         * lib/gl_sublist.h: Likewise.
8874         * lib/group-member.c: Likewise.
8875         * lib/group-member.h: Likewise.
8876         * lib/hard-locale.c: Likewise.
8877         * lib/hard-locale.h: Likewise.
8878         * lib/hash-pjw.c: Likewise.
8879         * lib/hash-pjw.h: Likewise.
8880         * lib/hash-triple.c: Likewise.
8881         * lib/hash.c: Likewise.
8882         * lib/hash.h: Likewise.
8883         * lib/human.c: Likewise.
8884         * lib/human.h: Likewise.
8885         * lib/i-ring.c: Likewise.
8886         * lib/i-ring.h: Likewise.
8887         * lib/idcache.c: Likewise.
8888         * lib/imaxabs.c: Likewise.
8889         * lib/imaxdiv.c: Likewise.
8890         * lib/inet_pton.c: Likewise.
8891         * lib/inet_pton.h: Likewise.
8892         * lib/intprops.h: Likewise.
8893         * lib/inttostr.c: Likewise.
8894         * lib/inttostr.h: Likewise.
8895         * lib/inttypes.in.h: Likewise.
8896         * lib/isapipe.c: Likewise.
8897         * lib/isdir.c: Likewise.
8898         * lib/isnan.c: Likewise.
8899         * lib/isnan.h: Likewise.
8900         * lib/isnanf.c: Likewise.
8901         * lib/isnanf.h: Likewise.
8902         * lib/isnanl-nolibm.h: Likewise.
8903         * lib/isnanl.c: Likewise.
8904         * lib/isnanl.h: Likewise.
8905         * lib/javacomp.c: Likewise.
8906         * lib/javacomp.h: Likewise.
8907         * lib/javaexec.c: Likewise.
8908         * lib/javaexec.h: Likewise.
8909         * lib/javaversion.c: Likewise.
8910         * lib/javaversion.h: Likewise.
8911         * lib/javaversion.java: Likewise.
8912         * lib/lbrkprop.h: Likewise.
8913         * lib/lchmod.h: Likewise.
8914         * lib/lchown.c: Likewise.
8915         * lib/ldexpl.c: Likewise.
8916         * lib/linebreak.c: Likewise.
8917         * lib/linebreak.h: Likewise.
8918         * lib/linebuffer.c: Likewise.
8919         * lib/linebuffer.h: Likewise.
8920         * lib/locale.in.h: Likewise.
8921         * lib/logl.c: Likewise.
8922         * lib/long-options.c: Likewise.
8923         * lib/long-options.h: Likewise.
8924         * lib/lstat.c: Likewise.
8925         * lib/lstat.h: Likewise.
8926         * lib/math.in.h: Likewise.
8927         * lib/mbchar.c: Likewise.
8928         * lib/mbchar.h: Likewise.
8929         * lib/mbfile.h: Likewise.
8930         * lib/mbiter.h: Likewise.
8931         * lib/mbscasecmp.c: Likewise.
8932         * lib/mbscasestr.c: Likewise.
8933         * lib/mbschr.c: Likewise.
8934         * lib/mbscspn.c: Likewise.
8935         * lib/mbslen.c: Likewise.
8936         * lib/mbsncasecmp.c: Likewise.
8937         * lib/mbsnlen.c: Likewise.
8938         * lib/mbspbrk.c: Likewise.
8939         * lib/mbspcasecmp.c: Likewise.
8940         * lib/mbsrchr.c: Likewise.
8941         * lib/mbssep.c: Likewise.
8942         * lib/mbsspn.c: Likewise.
8943         * lib/mbsstr.c: Likewise.
8944         * lib/mbstok_r.c: Likewise.
8945         * lib/mbswidth.c: Likewise.
8946         * lib/mbswidth.h: Likewise.
8947         * lib/mbuiter.h: Likewise.
8948         * lib/memcasecmp.c: Likewise.
8949         * lib/memcasecmp.h: Likewise.
8950         * lib/memchr.c: Likewise.
8951         * lib/memcmp.c: Likewise.
8952         * lib/memcoll.c: Likewise.
8953         * lib/memcoll.h: Likewise.
8954         * lib/memcpy.c: Likewise.
8955         * lib/memrchr.c: Likewise.
8956         * lib/mkancesdirs.c: Likewise.
8957         * lib/mkdir-p.c: Likewise.
8958         * lib/mkdir-p.h: Likewise.
8959         * lib/mkdir.c: Likewise.
8960         * lib/mkdirat.c: Likewise.
8961         * lib/mkdtemp.c: Likewise.
8962         * lib/mkstemp-safer.c: Likewise.
8963         * lib/mkstemp.c: Likewise.
8964         * lib/modechange.c: Likewise.
8965         * lib/modechange.h: Likewise.
8966         * lib/mountlist.c: Likewise.
8967         * lib/mountlist.h: Likewise.
8968         * lib/mpsort.c: Likewise.
8969         * lib/nanosleep.c: Likewise.
8970         * lib/obstack.c: Likewise.
8971         * lib/obstack.h: Likewise.
8972         * lib/open-safer.c: Likewise.
8973         * lib/open.c: Likewise.
8974         * lib/openat-die.c: Likewise.
8975         * lib/openat-priv.h: Likewise.
8976         * lib/openat-proc.c: Likewise.
8977         * lib/openat.c: Likewise.
8978         * lib/openat.h: Likewise.
8979         * lib/pagealign_alloc.c: Likewise.
8980         * lib/pagealign_alloc.h: Likewise.
8981         * lib/physmem.c: Likewise.
8982         * lib/physmem.h: Likewise.
8983         * lib/pipe-safer.c: Likewise.
8984         * lib/pipe.c: Likewise.
8985         * lib/pipe.h: Likewise.
8986         * lib/posixtm.c: Likewise.
8987         * lib/posixtm.h: Likewise.
8988         * lib/posixver.c: Likewise.
8989         * lib/printf-frexp.c: Likewise.
8990         * lib/printf-frexp.h: Likewise.
8991         * lib/printf-frexpl.c: Likewise.
8992         * lib/printf-frexpl.h: Likewise.
8993         * lib/printf.c: Likewise.
8994         * lib/progname.c: Likewise.
8995         * lib/progname.h: Likewise.
8996         * lib/progreloc.c: Likewise.
8997         * lib/putenv.c: Likewise.
8998         * lib/quote.c: Likewise.
8999         * lib/quote.h: Likewise.
9000         * lib/quotearg.c: Likewise.
9001         * lib/quotearg.h: Likewise.
9002         * lib/raise.c: Likewise.
9003         * lib/readline.c: Likewise.
9004         * lib/readline.h: Likewise.
9005         * lib/readlink.c: Likewise.
9006         * lib/readtokens.c: Likewise.
9007         * lib/readtokens.h: Likewise.
9008         * lib/readtokens0.c: Likewise.
9009         * lib/readtokens0.h: Likewise.
9010         * lib/readutmp.c: Likewise.
9011         * lib/readutmp.h: Likewise.
9012         * lib/realloc.c: Likewise.
9013         * lib/relocwrapper.c: Likewise.
9014         * lib/rename-dest-slash.c: Likewise.
9015         * lib/rename.c: Likewise.
9016         * lib/rmdir.c: Likewise.
9017         * lib/rpmatch.c: Likewise.
9018         * lib/safe-read.c: Likewise.
9019         * lib/safe-read.h: Likewise.
9020         * lib/safe-write.c: Likewise.
9021         * lib/safe-write.h: Likewise.
9022         * lib/same-inode.h: Likewise.
9023         * lib/same.c: Likewise.
9024         * lib/same.h: Likewise.
9025         * lib/save-cwd.c: Likewise.
9026         * lib/save-cwd.h: Likewise.
9027         * lib/savedir.c: Likewise.
9028         * lib/savedir.h: Likewise.
9029         * lib/savewd.c: Likewise.
9030         * lib/savewd.h: Likewise.
9031         * lib/search.in.h: Likewise.
9032         * lib/setenv.c: Likewise.
9033         * lib/setenv.h: Likewise.
9034         * lib/settime.c: Likewise.
9035         * lib/sh-quote.c: Likewise.
9036         * lib/sh-quote.h: Likewise.
9037         * lib/sig2str.c: Likewise.
9038         * lib/sig2str.h: Likewise.
9039         * lib/signal.in.h: Likewise.
9040         * lib/signbitd.c: Likewise.
9041         * lib/signbitf.c: Likewise.
9042         * lib/signbitl.c: Likewise.
9043         * lib/sigprocmask.c: Likewise.
9044         * lib/sincosl.c: Likewise.
9045         * lib/sleep.c: Likewise.
9046         * lib/sprintf.c: Likewise.
9047         * lib/sqrtl.c: Likewise.
9048         * lib/stat-time.h: Likewise.
9049         * lib/stdio--.h: Likewise.
9050         * lib/stdio-safer.h: Likewise.
9051         * lib/stdlib--.h: Likewise.
9052         * lib/stdlib-safer.h: Likewise.
9053         * lib/stdlib.in.h: Likewise.
9054         * lib/stpcpy.c: Likewise.
9055         * lib/stpncpy.c: Likewise.
9056         * lib/strchrnul.c: Likewise.
9057         * lib/strcspn.c: Likewise.
9058         * lib/strerror.c: Likewise.
9059         * lib/strftime.c: Likewise.
9060         * lib/strftime.h: Likewise.
9061         * lib/striconveh.c: Likewise.
9062         * lib/striconveh.h: Likewise.
9063         * lib/striconveha.c: Likewise.
9064         * lib/striconveha.h: Likewise.
9065         * lib/stripslash.c: Likewise.
9066         * lib/strnlen1.c: Likewise.
9067         * lib/strnlen1.h: Likewise.
9068         * lib/strtod.c: Likewise.
9069         * lib/strtoimax.c: Likewise.
9070         * lib/strtok_r.c: Likewise.
9071         * lib/strtol.c: Likewise.
9072         * lib/strtoll.c: Likewise.
9073         * lib/strtoul.c: Likewise.
9074         * lib/strtoull.c: Likewise.
9075         * lib/sysexits.in.h: Likewise.
9076         * lib/tempname.c: Likewise.
9077         * lib/tempname.h: Likewise.
9078         * lib/timespec.h: Likewise.
9079         * lib/tls.c: Likewise.
9080         * lib/tls.h: Likewise.
9081         * lib/tmpdir.c: Likewise.
9082         * lib/tmpdir.h: Likewise.
9083         * lib/tmpfile-safer.c: Likewise.
9084         * lib/tmpfile.c: Likewise.
9085         * lib/trigl.c: Likewise.
9086         * lib/trigl.h: Likewise.
9087         * lib/trim.c: Likewise.
9088         * lib/trim.h: Likewise.
9089         * lib/trunc.c: Likewise.
9090         * lib/truncf.c: Likewise.
9091         * lib/truncl.c: Likewise.
9092         * lib/tsearch.c: Likewise.
9093         * lib/unicodeio.c: Likewise.
9094         * lib/unicodeio.h: Likewise.
9095         * lib/unistd--.h: Likewise.
9096         * lib/unistd-safer.h: Likewise.
9097         * lib/unistdio/ulc-fprintf.c: Likewise.
9098         * lib/unistdio/ulc-vfprintf.c: Likewise.
9099         * lib/unlinkdir.c: Likewise.
9100         * lib/unlinkdir.h: Likewise.
9101         * lib/unlocked-io.h: Likewise.
9102         * lib/unsetenv.c: Likewise.
9103         * lib/userspec.c: Likewise.
9104         * lib/utime.c: Likewise.
9105         * lib/utimecmp.c: Likewise.
9106         * lib/utimecmp.h: Likewise.
9107         * lib/utimens.c: Likewise.
9108         * lib/verify.h: Likewise.
9109         * lib/verror.c: Likewise.
9110         * lib/verror.h: Likewise.
9111         * lib/version-etc-fsf.c: Likewise.
9112         * lib/version-etc.c: Likewise.
9113         * lib/version-etc.h: Likewise.
9114         * lib/vfprintf.c: Likewise.
9115         * lib/vprintf.c: Likewise.
9116         * lib/vsprintf.c: Likewise.
9117         * lib/w32spawn.h: Likewise.
9118         * lib/wait-process.c: Likewise.
9119         * lib/wait-process.h: Likewise.
9120         * lib/wcwidth.c: Likewise.
9121         * lib/write-any-file.c: Likewise.
9122         * lib/xalloc-die.c: Likewise.
9123         * lib/xalloc.h: Likewise.
9124         * lib/xasprintf.c: Likewise.
9125         * lib/xgetcwd.c: Likewise.
9126         * lib/xgetcwd.h: Likewise.
9127         * lib/xgetdomainname.c: Likewise.
9128         * lib/xgetdomainname.h: Likewise.
9129         * lib/xgethostname.c: Likewise.
9130         * lib/xmalloc.c: Likewise.
9131         * lib/xmalloca.c: Likewise.
9132         * lib/xmalloca.h: Likewise.
9133         * lib/xmemcoll.c: Likewise.
9134         * lib/xnanosleep.c: Likewise.
9135         * lib/xreadlink.c: Likewise.
9136         * lib/xreadlink.h: Likewise.
9137         * lib/xsetenv.c: Likewise.
9138         * lib/xsetenv.h: Likewise.
9139         * lib/xstriconv.c: Likewise.
9140         * lib/xstriconv.h: Likewise.
9141         * lib/xstrndup.c: Likewise.
9142         * lib/xstrndup.h: Likewise.
9143         * lib/xstrtod.c: Likewise.
9144         * lib/xstrtod.h: Likewise.
9145         * lib/xstrtol-error.c: Likewise.
9146         * lib/xstrtol.c: Likewise.
9147         * lib/xstrtol.h: Likewise.
9148         * lib/xtime.h: Likewise.
9149         * lib/xvasprintf.c: Likewise.
9150         * lib/xvasprintf.h: Likewise.
9151         * lib/yesno.c: Likewise.
9152         * lib/yesno.h: Likewise.
9153         * posix-modules: Likewise.
9154         * tests/test-alloca-opt.c: Likewise.
9155         * tests/test-arcfour.c: Likewise.
9156         * tests/test-arctwo.c: Likewise.
9157         * tests/test-argmatch.c: Likewise.
9158         * tests/test-argp-2.sh: Likewise.
9159         * tests/test-argp.c: Likewise.
9160         * tests/test-arpa_inet.c: Likewise.
9161         * tests/test-array_list.c: Likewise.
9162         * tests/test-array_oset.c: Likewise.
9163         * tests/test-atexit.c: Likewise.
9164         * tests/test-avltree_list.c: Likewise.
9165         * tests/test-avltree_oset.c: Likewise.
9166         * tests/test-avltreehash_list.c: Likewise.
9167         * tests/test-base64.c: Likewise.
9168         * tests/test-binary-io.c: Likewise.
9169         * tests/test-byteswap.c: Likewise.
9170         * tests/test-c-ctype.c: Likewise.
9171         * tests/test-c-strcasecmp.c: Likewise.
9172         * tests/test-c-strcasestr.c: Likewise.
9173         * tests/test-c-strncasecmp.c: Likewise.
9174         * tests/test-c-strstr.c: Likewise.
9175         * tests/test-canonicalize-lgpl.c: Likewise.
9176         * tests/test-canonicalize.c: Likewise.
9177         * tests/test-carray_list.c: Likewise.
9178         * tests/test-ceilf.c: Likewise.
9179         * tests/test-ceill.c: Likewise.
9180         * tests/test-count-one-bits.c: Likewise.
9181         * tests/test-crc.c: Likewise.
9182         * tests/test-dirname.c: Likewise.
9183         * tests/test-fbufmode.c: Likewise.
9184         * tests/test-fcntl.c: Likewise.
9185         * tests/test-fflush.c: Likewise.
9186         * tests/test-floorf.c: Likewise.
9187         * tests/test-floorl.c: Likewise.
9188         * tests/test-fopen.c: Likewise.
9189         * tests/test-fprintf-posix.c: Likewise.
9190         * tests/test-fprintf-posix.h: Likewise.
9191         * tests/test-fpurge.c: Likewise.
9192         * tests/test-freadable.c: Likewise.
9193         * tests/test-freadahead.c: Likewise.
9194         * tests/test-freading.c: Likewise.
9195         * tests/test-freopen.c: Likewise.
9196         * tests/test-frexp.c: Likewise.
9197         * tests/test-frexpl.c: Likewise.
9198         * tests/test-fseek.c: Likewise.
9199         * tests/test-fseeko.c: Likewise.
9200         * tests/test-fseterr.c: Likewise.
9201         * tests/test-fstrcmp.c: Likewise.
9202         * tests/test-ftell.c: Likewise.
9203         * tests/test-ftello.c: Likewise.
9204         * tests/test-fwritable.c: Likewise.
9205         * tests/test-fwriting.c: Likewise.
9206         * tests/test-getaddrinfo.c: Likewise.
9207         * tests/test-getpass.c: Likewise.
9208         * tests/test-gettimeofday.c: Likewise.
9209         * tests/test-hmac-md5.c: Likewise.
9210         * tests/test-hmac-sha1.c: Likewise.
9211         * tests/test-iconv.c: Likewise.
9212         * tests/test-iconvme.c: Likewise.
9213         * tests/test-inttypes.c: Likewise.
9214         * tests/test-isnan.c: Likewise.
9215         * tests/test-isnanf.c: Likewise.
9216         * tests/test-isnanl-nolibm.c: Likewise.
9217         * tests/test-isnanl.c: Likewise.
9218         * tests/test-isnanl.h: Likewise.
9219         * tests/test-ldexpl.c: Likewise.
9220         * tests/test-linked_list.c: Likewise.
9221         * tests/test-linkedhash_list.c: Likewise.
9222         * tests/test-locale.c: Likewise.
9223         * tests/test-localename.c: Likewise.
9224         * tests/test-lock.c: Likewise.
9225         * tests/test-lseek.c: Likewise.
9226         * tests/test-malloca.c: Likewise.
9227         * tests/test-math.c: Likewise.
9228         * tests/test-mbscasecmp.c: Likewise.
9229         * tests/test-mbscasestr1.c: Likewise.
9230         * tests/test-mbscasestr2.c: Likewise.
9231         * tests/test-mbscasestr3.c: Likewise.
9232         * tests/test-mbscasestr4.c: Likewise.
9233         * tests/test-mbschr.c: Likewise.
9234         * tests/test-mbscspn.c: Likewise.
9235         * tests/test-mbsncasecmp.c: Likewise.
9236         * tests/test-mbspbrk.c: Likewise.
9237         * tests/test-mbspcasecmp.c: Likewise.
9238         * tests/test-mbsrchr.c: Likewise.
9239         * tests/test-mbsspn.c: Likewise.
9240         * tests/test-mbsstr1.c: Likewise.
9241         * tests/test-mbsstr2.c: Likewise.
9242         * tests/test-mbsstr3.c: Likewise.
9243         * tests/test-md5.c: Likewise.
9244         * tests/test-memmem.c: Likewise.
9245         * tests/test-netinet_in.c: Likewise.
9246         * tests/test-open.c: Likewise.
9247         * tests/test-printf-frexp.c: Likewise.
9248         * tests/test-printf-frexpl.c: Likewise.
9249         * tests/test-printf-posix.c: Likewise.
9250         * tests/test-printf-posix.h: Likewise.
9251         * tests/test-rbtree_list.c: Likewise.
9252         * tests/test-rbtree_oset.c: Likewise.
9253         * tests/test-rbtreehash_list.c: Likewise.
9254         * tests/test-read-file.c: Likewise.
9255         * tests/test-rijndael.c: Likewise.
9256         * tests/test-search.c: Likewise.
9257         * tests/test-signbit.c: Likewise.
9258         * tests/test-sleep.c: Likewise.
9259         * tests/test-snprintf-posix.c: Likewise.
9260         * tests/test-snprintf-posix.h: Likewise.
9261         * tests/test-snprintf.c: Likewise.
9262         * tests/test-sprintf-posix.c: Likewise.
9263         * tests/test-sprintf-posix.h: Likewise.
9264         * tests/test-stat-time.c: Likewise.
9265         * tests/test-stdbool.c: Likewise.
9266         * tests/test-stdint.c: Likewise.
9267         * tests/test-stdio.c: Likewise.
9268         * tests/test-stdlib.c: Likewise.
9269         * tests/test-stpncpy.c: Likewise.
9270         * tests/test-strcasestr.c: Likewise.
9271         * tests/test-striconv.c: Likewise.
9272         * tests/test-striconveh.c: Likewise.
9273         * tests/test-striconveha.c: Likewise.
9274         * tests/test-string.c: Likewise.
9275         * tests/test-sys_select.c: Likewise.
9276         * tests/test-sys_socket.c: Likewise.
9277         * tests/test-sys_stat.c: Likewise.
9278         * tests/test-sys_time.c: Likewise.
9279         * tests/test-sysexits.c: Likewise.
9280         * tests/test-time.c: Likewise.
9281         * tests/test-tls.c: Likewise.
9282         * tests/test-trunc.c: Likewise.
9283         * tests/test-truncf.c: Likewise.
9284         * tests/test-truncl.c: Likewise.
9285         * tests/test-unistd.c: Likewise.
9286         * tests/test-vasnprintf-posix.c: Likewise.
9287         * tests/test-vasnprintf-posix2.c: Likewise.
9288         * tests/test-vasnprintf.c: Likewise.
9289         * tests/test-vasprintf-posix.c: Likewise.
9290         * tests/test-vasprintf.c: Likewise.
9291         * tests/test-verify.c: Likewise.
9292         * tests/test-vfprintf-posix.c: Likewise.
9293         * tests/test-vprintf-posix.c: Likewise.
9294         * tests/test-vsnprintf-posix.c: Likewise.
9295         * tests/test-vsnprintf.c: Likewise.
9296         * tests/test-vsprintf-posix.c: Likewise.
9297         * tests/test-wchar.c: Likewise.
9298         * tests/test-wctype.c: Likewise.
9299         * tests/test-wcwidth.c: Likewise.
9300         * tests/test-xstrtol.c: Likewise.
9301         * tests/test-xvasprintf.c: Likewise.
9302         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
9303         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
9304         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
9305         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
9306         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
9307         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
9308         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
9309         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
9310         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
9311         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
9312         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
9313         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
9314         * tests/uniname/test-uninames.c: Likewise.
9315         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
9316         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
9317         * tests/unistdio/test-u16-printf1.h: Likewise.
9318         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
9319         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
9320         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
9321         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
9322         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
9323         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
9324         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
9325         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
9326         * tests/unistdio/test-u32-printf1.h: Likewise.
9327         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
9328         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
9329         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
9330         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
9331         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
9332         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
9333         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
9334         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
9335         * tests/unistdio/test-u8-printf1.h: Likewise.
9336         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
9337         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
9338         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
9339         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
9340         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
9341         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
9342         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
9343         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
9344         * tests/unistdio/test-ulc-printf1.h: Likewise.
9345         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
9346         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
9347         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
9348         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
9349         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
9350         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
9351         * tests/uniwidth/test-u16-strwidth.c: Likewise.
9352         * tests/uniwidth/test-u16-width.c: Likewise.
9353         * tests/uniwidth/test-u32-strwidth.c: Likewise.
9354         * tests/uniwidth/test-u32-width.c: Likewise.
9355         * tests/uniwidth/test-u8-strwidth.c: Likewise.
9356         * tests/uniwidth/test-u8-width.c: Likewise.
9357         * tests/uniwidth/test-uc_width.c: Likewise.
9358         * config/srclist-update: Likewise.
9359         (fixlicense): Update to GPLv3+.
9360
9361         Change copyright notice from LGPLv2.1+ to LGPLv3+.
9362         * tests/test-tsearch.c: Change copyright notice.
9363
9364         Change copyright notice from LGPLv2.0+ to LGPLv3+.
9365         * lib/c-strcaseeq.h: Change copyright notice.
9366         * lib/streq.h: Likewise.
9367         * lib/uniconv.h: Likewise.
9368         * lib/uniconv/u-conv-from-enc.h: Likewise.
9369         * lib/uniconv/u-conv-to-enc.h: Likewise.
9370         * lib/uniconv/u-strconv-from-enc.h: Likewise.
9371         * lib/uniconv/u-strconv-to-enc.h: Likewise.
9372         * lib/uniconv/u16-conv-from-enc.c: Likewise.
9373         * lib/uniconv/u16-conv-to-enc.c: Likewise.
9374         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
9375         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
9376         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
9377         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
9378         * lib/uniconv/u32-conv-from-enc.c: Likewise.
9379         * lib/uniconv/u32-conv-to-enc.c: Likewise.
9380         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
9381         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
9382         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
9383         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
9384         * lib/uniconv/u8-conv-from-enc.c: Likewise.
9385         * lib/uniconv/u8-conv-to-enc.c: Likewise.
9386         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
9387         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
9388         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
9389         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
9390         * lib/uniname.h: Likewise.
9391         * lib/uniname/uniname.c: Likewise.
9392         * lib/unistdio.h: Likewise.
9393         * lib/unistdio/u-asnprintf.h: Likewise.
9394         * lib/unistdio/u-asprintf.h: Likewise.
9395         * lib/unistdio/u-printf-args.c: Likewise.
9396         * lib/unistdio/u-printf-args.h: Likewise.
9397         * lib/unistdio/u-printf-parse.h: Likewise.
9398         * lib/unistdio/u-snprintf.h: Likewise.
9399         * lib/unistdio/u-sprintf.h: Likewise.
9400         * lib/unistdio/u-vasprintf.h: Likewise.
9401         * lib/unistdio/u-vsnprintf.h: Likewise.
9402         * lib/unistdio/u-vsprintf.h: Likewise.
9403         * lib/unistdio/u16-asnprintf.c: Likewise.
9404         * lib/unistdio/u16-asprintf.c: Likewise.
9405         * lib/unistdio/u16-printf-parse.c: Likewise.
9406         * lib/unistdio/u16-snprintf.c: Likewise.
9407         * lib/unistdio/u16-sprintf.c: Likewise.
9408         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
9409         * lib/unistdio/u16-u16-asprintf.c: Likewise.
9410         * lib/unistdio/u16-u16-snprintf.c: Likewise.
9411         * lib/unistdio/u16-u16-sprintf.c: Likewise.
9412         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
9413         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
9414         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
9415         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
9416         * lib/unistdio/u16-vasnprintf.c: Likewise.
9417         * lib/unistdio/u16-vasprintf.c: Likewise.
9418         * lib/unistdio/u16-vsnprintf.c: Likewise.
9419         * lib/unistdio/u16-vsprintf.c: Likewise.
9420         * lib/unistdio/u32-asnprintf.c: Likewise.
9421         * lib/unistdio/u32-asprintf.c: Likewise.
9422         * lib/unistdio/u32-printf-parse.c: Likewise.
9423         * lib/unistdio/u32-snprintf.c: Likewise.
9424         * lib/unistdio/u32-sprintf.c: Likewise.
9425         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
9426         * lib/unistdio/u32-u32-asprintf.c: Likewise.
9427         * lib/unistdio/u32-u32-snprintf.c: Likewise.
9428         * lib/unistdio/u32-u32-sprintf.c: Likewise.
9429         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
9430         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
9431         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
9432         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
9433         * lib/unistdio/u32-vasnprintf.c: Likewise.
9434         * lib/unistdio/u32-vasprintf.c: Likewise.
9435         * lib/unistdio/u32-vsnprintf.c: Likewise.
9436         * lib/unistdio/u32-vsprintf.c: Likewise.
9437         * lib/unistdio/u8-asnprintf.c: Likewise.
9438         * lib/unistdio/u8-asprintf.c: Likewise.
9439         * lib/unistdio/u8-printf-parse.c: Likewise.
9440         * lib/unistdio/u8-snprintf.c: Likewise.
9441         * lib/unistdio/u8-sprintf.c: Likewise.
9442         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
9443         * lib/unistdio/u8-u8-asprintf.c: Likewise.
9444         * lib/unistdio/u8-u8-snprintf.c: Likewise.
9445         * lib/unistdio/u8-u8-sprintf.c: Likewise.
9446         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
9447         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
9448         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
9449         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
9450         * lib/unistdio/u8-vasnprintf.c: Likewise.
9451         * lib/unistdio/u8-vasprintf.c: Likewise.
9452         * lib/unistdio/u8-vsnprintf.c: Likewise.
9453         * lib/unistdio/u8-vsprintf.c: Likewise.
9454         * lib/unistdio/ulc-asnprintf.c: Likewise.
9455         * lib/unistdio/ulc-asprintf.c: Likewise.
9456         * lib/unistdio/ulc-printf-parse.c: Likewise.
9457         * lib/unistdio/ulc-snprintf.c: Likewise.
9458         * lib/unistdio/ulc-sprintf.c: Likewise.
9459         * lib/unistdio/ulc-vasnprintf.c: Likewise.
9460         * lib/unistdio/ulc-vasprintf.c: Likewise.
9461         * lib/unistdio/ulc-vsnprintf.c: Likewise.
9462         * lib/unistdio/ulc-vsprintf.c: Likewise.
9463         * lib/unistr.h: Likewise.
9464         * lib/unistr/u-cpy-alloc.h: Likewise.
9465         * lib/unistr/u-cpy.h: Likewise.
9466         * lib/unistr/u-endswith.h: Likewise.
9467         * lib/unistr/u-move.h: Likewise.
9468         * lib/unistr/u-set.h: Likewise.
9469         * lib/unistr/u-startswith.h: Likewise.
9470         * lib/unistr/u-stpcpy.h: Likewise.
9471         * lib/unistr/u-stpncpy.h: Likewise.
9472         * lib/unistr/u-strcat.h: Likewise.
9473         * lib/unistr/u-strcpy.h: Likewise.
9474         * lib/unistr/u-strcspn.h: Likewise.
9475         * lib/unistr/u-strdup.h: Likewise.
9476         * lib/unistr/u-strlen.h: Likewise.
9477         * lib/unistr/u-strncat.h: Likewise.
9478         * lib/unistr/u-strncpy.h: Likewise.
9479         * lib/unistr/u-strnlen.h: Likewise.
9480         * lib/unistr/u-strpbrk.h: Likewise.
9481         * lib/unistr/u-strspn.h: Likewise.
9482         * lib/unistr/u-strstr.h: Likewise.
9483         * lib/unistr/u-strtok.h: Likewise.
9484         * lib/unistr/u16-check.c: Likewise.
9485         * lib/unistr/u16-chr.c: Likewise.
9486         * lib/unistr/u16-cmp.c: Likewise.
9487         * lib/unistr/u16-cpy-alloc.c: Likewise.
9488         * lib/unistr/u16-cpy.c: Likewise.
9489         * lib/unistr/u16-endswith.c: Likewise.
9490         * lib/unistr/u16-mblen.c: Likewise.
9491         * lib/unistr/u16-mbsnlen.c: Likewise.
9492         * lib/unistr/u16-mbtouc-aux.c: Likewise.
9493         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
9494         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
9495         * lib/unistr/u16-mbtouc.c: Likewise.
9496         * lib/unistr/u16-mbtoucr.c: Likewise.
9497         * lib/unistr/u16-move.c: Likewise.
9498         * lib/unistr/u16-next.c: Likewise.
9499         * lib/unistr/u16-prev.c: Likewise.
9500         * lib/unistr/u16-set.c: Likewise.
9501         * lib/unistr/u16-startswith.c: Likewise.
9502         * lib/unistr/u16-stpcpy.c: Likewise.
9503         * lib/unistr/u16-stpncpy.c: Likewise.
9504         * lib/unistr/u16-strcat.c: Likewise.
9505         * lib/unistr/u16-strchr.c: Likewise.
9506         * lib/unistr/u16-strcmp.c: Likewise.
9507         * lib/unistr/u16-strcpy.c: Likewise.
9508         * lib/unistr/u16-strcspn.c: Likewise.
9509         * lib/unistr/u16-strdup.c: Likewise.
9510         * lib/unistr/u16-strlen.c: Likewise.
9511         * lib/unistr/u16-strmblen.c: Likewise.
9512         * lib/unistr/u16-strmbtouc.c: Likewise.
9513         * lib/unistr/u16-strncat.c: Likewise.
9514         * lib/unistr/u16-strncmp.c: Likewise.
9515         * lib/unistr/u16-strncpy.c: Likewise.
9516         * lib/unistr/u16-strnlen.c: Likewise.
9517         * lib/unistr/u16-strpbrk.c: Likewise.
9518         * lib/unistr/u16-strrchr.c: Likewise.
9519         * lib/unistr/u16-strspn.c: Likewise.
9520         * lib/unistr/u16-strstr.c: Likewise.
9521         * lib/unistr/u16-strtok.c: Likewise.
9522         * lib/unistr/u16-to-u32.c: Likewise.
9523         * lib/unistr/u16-to-u8.c: Likewise.
9524         * lib/unistr/u16-uctomb-aux.c: Likewise.
9525         * lib/unistr/u16-uctomb.c: Likewise.
9526         * lib/unistr/u32-check.c: Likewise.
9527         * lib/unistr/u32-chr.c: Likewise.
9528         * lib/unistr/u32-cmp.c: Likewise.
9529         * lib/unistr/u32-cpy-alloc.c: Likewise.
9530         * lib/unistr/u32-cpy.c: Likewise.
9531         * lib/unistr/u32-endswith.c: Likewise.
9532         * lib/unistr/u32-mblen.c: Likewise.
9533         * lib/unistr/u32-mbsnlen.c: Likewise.
9534         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
9535         * lib/unistr/u32-mbtouc.c: Likewise.
9536         * lib/unistr/u32-mbtoucr.c: Likewise.
9537         * lib/unistr/u32-move.c: Likewise.
9538         * lib/unistr/u32-next.c: Likewise.
9539         * lib/unistr/u32-prev.c: Likewise.
9540         * lib/unistr/u32-set.c: Likewise.
9541         * lib/unistr/u32-startswith.c: Likewise.
9542         * lib/unistr/u32-stpcpy.c: Likewise.
9543         * lib/unistr/u32-stpncpy.c: Likewise.
9544         * lib/unistr/u32-strcat.c: Likewise.
9545         * lib/unistr/u32-strchr.c: Likewise.
9546         * lib/unistr/u32-strcmp.c: Likewise.
9547         * lib/unistr/u32-strcpy.c: Likewise.
9548         * lib/unistr/u32-strcspn.c: Likewise.
9549         * lib/unistr/u32-strdup.c: Likewise.
9550         * lib/unistr/u32-strlen.c: Likewise.
9551         * lib/unistr/u32-strmblen.c: Likewise.
9552         * lib/unistr/u32-strmbtouc.c: Likewise.
9553         * lib/unistr/u32-strncat.c: Likewise.
9554         * lib/unistr/u32-strncmp.c: Likewise.
9555         * lib/unistr/u32-strncpy.c: Likewise.
9556         * lib/unistr/u32-strnlen.c: Likewise.
9557         * lib/unistr/u32-strpbrk.c: Likewise.
9558         * lib/unistr/u32-strrchr.c: Likewise.
9559         * lib/unistr/u32-strspn.c: Likewise.
9560         * lib/unistr/u32-strstr.c: Likewise.
9561         * lib/unistr/u32-strtok.c: Likewise.
9562         * lib/unistr/u32-to-u16.c: Likewise.
9563         * lib/unistr/u32-to-u8.c: Likewise.
9564         * lib/unistr/u32-uctomb.c: Likewise.
9565         * lib/unistr/u8-check.c: Likewise.
9566         * lib/unistr/u8-chr.c: Likewise.
9567         * lib/unistr/u8-cmp.c: Likewise.
9568         * lib/unistr/u8-cpy-alloc.c: Likewise.
9569         * lib/unistr/u8-cpy.c: Likewise.
9570         * lib/unistr/u8-endswith.c: Likewise.
9571         * lib/unistr/u8-mblen.c: Likewise.
9572         * lib/unistr/u8-mbsnlen.c: Likewise.
9573         * lib/unistr/u8-mbtouc-aux.c: Likewise.
9574         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
9575         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
9576         * lib/unistr/u8-mbtouc.c: Likewise.
9577         * lib/unistr/u8-mbtoucr.c: Likewise.
9578         * lib/unistr/u8-move.c: Likewise.
9579         * lib/unistr/u8-next.c: Likewise.
9580         * lib/unistr/u8-prev.c: Likewise.
9581         * lib/unistr/u8-set.c: Likewise.
9582         * lib/unistr/u8-startswith.c: Likewise.
9583         * lib/unistr/u8-stpcpy.c: Likewise.
9584         * lib/unistr/u8-stpncpy.c: Likewise.
9585         * lib/unistr/u8-strcat.c: Likewise.
9586         * lib/unistr/u8-strchr.c: Likewise.
9587         * lib/unistr/u8-strcmp.c: Likewise.
9588         * lib/unistr/u8-strcpy.c: Likewise.
9589         * lib/unistr/u8-strcspn.c: Likewise.
9590         * lib/unistr/u8-strdup.c: Likewise.
9591         * lib/unistr/u8-strlen.c: Likewise.
9592         * lib/unistr/u8-strmblen.c: Likewise.
9593         * lib/unistr/u8-strmbtouc.c: Likewise.
9594         * lib/unistr/u8-strncat.c: Likewise.
9595         * lib/unistr/u8-strncmp.c: Likewise.
9596         * lib/unistr/u8-strncpy.c: Likewise.
9597         * lib/unistr/u8-strnlen.c: Likewise.
9598         * lib/unistr/u8-strpbrk.c: Likewise.
9599         * lib/unistr/u8-strrchr.c: Likewise.
9600         * lib/unistr/u8-strspn.c: Likewise.
9601         * lib/unistr/u8-strstr.c: Likewise.
9602         * lib/unistr/u8-strtok.c: Likewise.
9603         * lib/unistr/u8-to-u16.c: Likewise.
9604         * lib/unistr/u8-to-u32.c: Likewise.
9605         * lib/unistr/u8-uctomb-aux.c: Likewise.
9606         * lib/unistr/u8-uctomb.c: Likewise.
9607         * lib/unitypes.h: Likewise.
9608         * lib/uniwidth.h: Likewise.
9609         * lib/uniwidth/cjk.h: Likewise.
9610         * lib/uniwidth/u16-strwidth.c: Likewise.
9611         * lib/uniwidth/u16-width.c: Likewise.
9612         * lib/uniwidth/u32-strwidth.c: Likewise.
9613         * lib/uniwidth/u32-width.c: Likewise.
9614         * lib/uniwidth/u8-strwidth.c: Likewise.
9615         * lib/uniwidth/u8-width.c: Likewise.
9616         * lib/uniwidth/width.c: Likewise.
9617
9618 2007-10-07  Bruno Haible  <bruno@clisp.org>
9619
9620         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
9621         The file is still under LGPL (see modules/inttypes).
9622
9623 2007-10-06  Bruno Haible  <bruno@clisp.org>
9624
9625         * modules/trunc (Dependencies): Add 'extensions'.
9626         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
9627         Reported by Ben Pfaff <blp@gnu.org>.
9628
9629 2007-10-06  Bruno Haible  <bruno@clisp.org>
9630
9631         * modules/freopen-tests: New file.
9632         * tests/test-freopen.c: New file.
9633
9634         * modules/fopen-tests: New file.
9635         * tests/test-fopen.c: New file.
9636
9637         * modules/fopen: New file.
9638         * lib/fopen.c: New file.
9639         * m4/fopen.m4: New file.
9640         * modules/freopen: New file.
9641         * lib/freopen.c: New file.
9642         * m4/freopen.m4: New file.
9643         * lib/stdio.in.h (fopen, freopen): New declarations.
9644         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
9645         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
9646         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
9647         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
9648         * doc/functions/fopen.texi: Mention the 'fopen' module.
9649         * doc/functions/freopen.texi: Mention the 'freopen' module.
9650
9651 2007-10-06  Bruno Haible  <bruno@clisp.org>
9652
9653         * modules/open-tests: New file.
9654         * tests/test-open.c: New file.
9655
9656         * modules/open: New file.
9657         * lib/open.c: New file.
9658         * m4/open.m4: New file.
9659         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
9660         lib/open.c does.
9661         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
9662         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
9663         macros.
9664         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
9665         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
9666         REPLACE_OPEN.
9667         * doc/functions/open.texi: Mention the 'open' module.
9668
9669 2007-10-04  Bruno Haible  <bruno@clisp.org>
9670
9671         * modules/ceill-tests: New file.
9672         * tests/test-ceill.c: New file.
9673
9674         * modules/ceill: New file.
9675         * lib/ceill.c: Replace entire file.
9676         * m4/ceill.m4: New file.
9677         * lib/math.in.h (ceill): Replace declaration.
9678         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
9679         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
9680         * doc/functions/ceill.texi: Mention the 'ceill' module.
9681         * modules/mathl (Files): Remove lib/ceill.c.
9682         (Depends-on): Add ceill.
9683
9684 2007-10-04  Bruno Haible  <bruno@clisp.org>
9685
9686         * modules/ceilf-tests: New file.
9687         * tests/test-ceilf.c: New file.
9688
9689         * modules/ceilf: New file.
9690         * lib/ceil.c: New file.
9691         * lib/ceilf.c: New file.
9692         * m4/ceilf.m4: New file.
9693         * lib/math.in.h (ceilf): New declaration.
9694         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
9695         HAVE_DECL_CEILF.
9696         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
9697         HAVE_DECL_CEILF.
9698         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
9699
9700 2007-10-04  Bruno Haible  <bruno@clisp.org>
9701
9702         * modules/floorl-tests: New file.
9703         * tests/test-floorl.c: New file.
9704
9705         * modules/floorl: New file.
9706         * lib/floorl.c: Replace entire file.
9707         * m4/floorl.m4: New file.
9708         * lib/math.in.h (floorl): Replace declaration.
9709         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
9710         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
9711         * doc/functions/floorl.texi: Mention the 'floorl' module.
9712         * modules/mathl (Files): Remove lib/floorl.c.
9713         (Depends-on): Add floorl.
9714
9715 2007-10-04  Bruno Haible  <bruno@clisp.org>
9716
9717         * modules/floorf-tests: New file.
9718         * tests/test-floorf.c: New file.
9719
9720         * modules/floorf: New file.
9721         * lib/floor.c: New file.
9722         * lib/floorf.c: New file.
9723         * m4/floorf.m4: New file.
9724         * lib/math.in.h (floorf): New declaration.
9725         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
9726         HAVE_DECL_FLOORF.
9727         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
9728         HAVE_DECL_FLOORF.
9729         * doc/functions/floorf.texi: Mention the 'floorf' module.
9730
9731 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
9732             Bruno Haible  <bruno@clisp.org>
9733
9734         Advertise for the Git server instead of the CVS server.
9735         * doc/gnulib-intro.texi (Steady Development): Mention the Git
9736         repository instead of the CVS one.
9737         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
9738         about all VCS systems generically.
9739         * doc/gnulib.texi (Introduction): Capitalize `Git'.
9740
9741 2007-10-04  Bruno Haible  <bruno@clisp.org>
9742
9743         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
9744         means.
9745         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
9746
9747 2007-10-04  Bruno Haible  <bruno@clisp.org>
9748
9749         * modules/truncl-tests: New file.
9750         * tests/test-truncl.c: New file.
9751
9752         * modules/truncl: New file.
9753         * lib/truncl.c: New file.
9754         * m4/truncl.m4: New file.
9755         * lib/math.in.h (truncl): New declaration.
9756         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
9757         HAVE_DECL_TRUNCL.
9758         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
9759         HAVE_DECL_TRUNCL.
9760         * doc/functions/truncl.texi: Mention the 'truncl' module.
9761
9762 2007-10-04  Bruno Haible  <bruno@clisp.org>
9763
9764         * modules/truncf-tests: New file.
9765         * tests/test-truncf.c: New file.
9766
9767         * modules/truncf: New file.
9768         * lib/trunc.c: Make paramerizable through USE_* macros.
9769         * lib/truncf.c: New file.
9770         * m4/truncf.m4: New file.
9771         * lib/math.in.h (truncf): New declaration.
9772         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
9773         HAVE_DECL_TRUNCF.
9774         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
9775         HAVE_DECL_TRUNCF.
9776         * doc/functions/truncf.texi: Mention the 'truncf' module.
9777
9778 2007-10-03  Bruno Haible  <bruno@clisp.org>
9779
9780         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
9781         augmentation also for tests modules.
9782         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
9783         * modules/atexit-tests (Makefile.am): Likewise.
9784         * modules/binary-io-tests (Makefile.am): Likewise.
9785         * modules/c-strcase-tests (Makefile.am): Likewise.
9786         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
9787         * modules/canonicalize-tests (Makefile.am): Likewise.
9788         * modules/closein-tests (Makefile.am): Likewise.
9789         * modules/fprintf-posix-tests (Makefile.am): Likewise.
9790         * modules/freadahead-tests (Makefile.am): Likewise.
9791         * modules/fseek-tests (Makefile.am): Likewise.
9792         * modules/fseeko-tests (Makefile.am): Likewise.
9793         * modules/ftell-tests (Makefile.am): Likewise.
9794         * modules/ftello-tests (Makefile.am): Likewise.
9795         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
9796         * modules/isnanl-tests (Makefile.am): Likewise.
9797         * modules/lseek-tests (Makefile.am): Likewise.
9798         * modules/mbscasecmp-tests (Makefile.am): Likewise.
9799         * modules/mbscasestr-tests (Makefile.am): Likewise.
9800         * modules/mbschr-tests (Makefile.am): Likewise.
9801         * modules/mbscspn-tests (Makefile.am): Likewise.
9802         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
9803         * modules/mbspbrk-tests (Makefile.am): Likewise.
9804         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
9805         * modules/mbsrchr-tests (Makefile.am): Likewise.
9806         * modules/mbsspn-tests (Makefile.am): Likewise.
9807         * modules/mbsstr-tests (Makefile.am): Likewise.
9808         * modules/printf-posix-tests (Makefile.am): Likewise.
9809         * modules/snprintf-posix-tests (Makefile.am): Likewise.
9810         * modules/sprintf-posix-tests (Makefile.am): Likewise.
9811         * modules/tsearch-tests (Makefile.am): Likewise.
9812         * modules/uniname/uniname-tests (Makefile.am): Likewise.
9813         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
9814         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
9815         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
9816         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
9817         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
9818         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
9819         * modules/vprintf-posix-tests (Makefile.am): Likewise.
9820         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
9821         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
9822         * modules/xstrtoimax-tests (Makefile.am): Likewise.
9823         * modules/xstrtol-tests (Makefile.am): Likewise.
9824         * modules/xstrtoumax-tests (Makefile.am): Likewise.
9825         * modules/yesno-tests (Makefile.am): Likewise.
9826
9827 2007-10-03  Bruno Haible  <bruno@clisp.org>
9828
9829         * modules/trunc-tests: New file.
9830         * tests/test-trunc.c: New file.
9831
9832         * modules/trunc: New file.
9833         * lib/trunc.c: New file.
9834         * m4/trunc.m4: New file.
9835         * lib/math.in.h (trunc): New declaration.
9836         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
9837         HAVE_DECL_TRUNC.
9838         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
9839         HAVE_DECL_TRUNC.
9840         * doc/functions/trunc.texi: Mention the 'trunc' module.
9841
9842 2007-10-03  Bruno Haible  <bruno@clisp.org>
9843
9844         * tests/test-fpending.c: New file, mostly copied
9845         from coreutils/lib/t-fpending.c.
9846         * modules/fpending-tests: New file.
9847
9848 2007-10-03  Bruno Haible  <bruno@clisp.org>
9849
9850         Port the stdio extensions to QNX (untested).
9851         * lib/fseterr.c (fseterr): Add support for QNX.
9852         * lib/fbufmode.c (fbufmode): Likewise.
9853         * lib/freadable.c (freadable): Likewise.
9854         * lib/fwritable.c (fwritable): Likewise.
9855         * lib/freading.c (freading): Likewise.
9856         * lib/fwriting.c (fwriting): Likewise.
9857         * lib/freadahead.c (freadahed): Likewise.
9858         * lib/fpurge.c (fpurge): Likewise.
9859         * lib/fseeko.c (rpl_fseeko): Likewise.
9860
9861 2007-10-03  Bruno Haible  <bruno@clisp.org>
9862             Jim Meyering  <jim@meyering.net>
9863             Eric Blake  <ebb9@byu.net>
9864
9865         * doc/relocatable.texi: Use @command instead of @program.
9866
9867 2007-10-02  Jim Meyering  <jim@meyering.net>
9868
9869         Perform one more "_.h" -> ".in.h" substitution.
9870         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
9871         instead of unistd_.h here, too.
9872
9873 2007-10-01  Bruno Haible  <bruno@clisp.org>
9874
9875         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
9876         Needed for the alloca-opt module.
9877
9878 2007-09-30  Bruno Haible  <bruno@clisp.org>
9879
9880         * lib/alloca.in.h: Renamed from lib/alloca_.h.
9881         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
9882         alloca_.h.
9883         * lib/argz.in.h: Renamed from lib/argz_.h.
9884         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
9885         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
9886         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
9887         byteswap_.h.
9888         * lib/dirent.in.h: Renamed from lib/dirent_.h.
9889         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
9890         dirent_.h.
9891         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
9892         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
9893         fcntl_.h.
9894         * lib/float.in.h: Renamed from lib/float_.h.
9895         * modules/float (Files, Makefile.am): Use float.in.h instead of
9896         float_.h.
9897         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
9898         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
9899         fnmatch_.h.
9900         * lib/getopt.in.h: Renamed from lib/getopt_.h.
9901         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
9902         getopt_.h.
9903         * lib/glob.in.h: Renamed from lib/glob_.h.
9904         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
9905         * lib/iconv.in.h: Renamed from lib/iconv_.h.
9906         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
9907         iconv_.h.
9908         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
9909         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
9910         inttypes_.h.
9911         * lib/locale.in.h: Renamed from lib/locale_.h.
9912         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
9913         locale_.h.
9914         * lib/math.in.h: Renamed from lib/math_.h.
9915         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
9916         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
9917         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
9918         of netinet_in_.h. Add dependency.
9919         * lib/poll.in.h: Renamed from lib/poll_.h.
9920         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
9921         * lib/search.in.h: Renamed from lib/search_.h.
9922         * modules/search (Files, Makefile.am): Use search.in.h instead of
9923         search_.h.
9924         * lib/signal.in.h: Renamed from lib/signal_.h.
9925         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
9926         _signal.h.
9927         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
9928         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
9929         stdbool_.h.
9930         * lib/stdint.in.h: Renamed from lib/stdint_.h.
9931         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
9932         stdint_.h.
9933         * lib/stdio.in.h: Renamed from lib/stdio_.h.
9934         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
9935         stdio_.h.
9936         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
9937         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
9938         stdlib_.h.
9939         * lib/string.in.h: Renamed from lib/string_.h.
9940         * modules/string (Files, Makefile.am): Use string.in.h instead of
9941         string_.h.
9942         * doc/gnulib-tool.texi (Initial import): Update.
9943         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
9944         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
9945         of sys_select_.h. Add dependency.
9946         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
9947         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
9948         of sys_socket_.h.
9949         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
9950         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
9951         sys_stat_.h.
9952         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
9953         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
9954         sys_time_.h.
9955         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
9956         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
9957         sysexits_.h.
9958         * lib/time.in.h: Renamed from lib/time_.h.
9959         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
9960         * lib/unistd.in.h: Renamed from lib/unistd_.h.
9961         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
9962         unistd_.h.
9963         * lib/wchar.in.h: Renamed from lib/wchar_.h.
9964         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
9965         wchar_.h.
9966         * lib/wctype.in.h: Renamed from lib/wctype_.h.
9967         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
9968         wctype_.h.
9969         * build-aux/bootstrap (slurp): Update.
9970         * lib/.cppi-disable: Update.
9971
9972 2007-09-30  Bruno Haible  <bruno@clisp.org>
9973
9974         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
9975         Needed on BeOS.
9976
9977 2007-09-30  Bruno Haible  <bruno@clisp.org>
9978
9979         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
9980
9981 2007-09-29  Bruno Haible  <bruno@clisp.org>
9982
9983         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
9984
9985 2007-09-29  Bruno Haible  <bruno@clisp.org>
9986
9987         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
9988         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
9989         * build-aux/install-reloc: Compile also areadlink.c.
9990         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
9991
9992 2007-09-29  Bruno Haible  <bruno@clisp.org>
9993
9994         * gnulib-tool (func_emit_initmacro_done): Indentation.
9995
9996 2007-09-29  Bruno Haible  <bruno@clisp.org>
9997
9998         * README: Add CVS checkout update instructions.
9999         Info from Bob Proulx <bob@proulx.com>.
10000
10001 2007-09-28  Eric Blake  <ebb9@byu.net>
10002
10003         Provide move-if-change.
10004         * build-aux/move-if-change: New file, based on best practice
10005         rather than any canonical upstream location.
10006
10007 2007-09-28  Jim Meyering  <jim@meyering.net>
10008
10009         Fix canonicalize loop-detection corner case.
10010         Do not attempt to stat the symlink values stored via seen_triple.
10011         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
10012         on linux-2.6.18, (but not 2.6.22).
10013         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
10014         triple_compare.  The former compares dev,ino,filename, while the latter
10015         would actually stat dirname(filename) when dev and ino were equal.
10016         * lib/hash-triple.c: Install <string.h>.
10017         (STREQ): Define.
10018         (triple_compare_ino_str): New function.
10019         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
10020
10021 2007-09-28  Eric Blake  <ebb9@byu.net>
10022
10023         Enforce that AC_REPLACE_FUNCS files exist.
10024         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
10025         override check for typos.
10026
10027         Fix test-closein on Solaris 10.
10028         * tests/test-closein.c (main): Don't assume stdin can be inherited
10029         closed on all systems.
10030         * tests/test-closein.sh: Likewise.
10031         Reported by Piotr Tarnowski.
10032
10033 2007-09-28  Jim Meyering  <jim@meyering.net>
10034
10035         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
10036
10037 2007-09-27  Jim Meyering  <jim@meyering.net>
10038
10039         canonicalize: Avoid a false-positive cycle failure.
10040         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
10041         Sort.  Remove cycle-check.
10042         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
10043         not cycle-check.h.
10044         (seen_triple): New function.
10045         (canonicalize_filename_mode): Use it instead of cycle-check.
10046         * tests/test-canonicalize.c: Add a test for this bug.
10047         * tests/test-canonicalize.sh: Set up and run the test.
10048
10049         New module, file-set, from coreutils.
10050         * modules/file-set: Define it.
10051         * lib/file-set.c, lib/file-set.h: Implement.
10052
10053         New module, hash-triple, from coreutils.
10054         * modules/hash-triple: Define it.
10055         * lib/hash-triple.c, lib/hash-triple.h: Implement.
10056
10057 2007-09-25  Eric Blake  <ebb9@byu.net>
10058
10059         Fix strerror on Interix.
10060         * lib/string_.h (strerror): Declare replacement.
10061         * doc/functions/strerror.texi (strerror): Document the Interix
10062         shortcoming.
10063         * modules/string (Makefile.am): Support new hooks.
10064         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
10065         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
10066         gl_FUNC_STRERROR_SEPARATE.
10067         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
10068         * lib/strerror.c (rpl_strerror): Provide replacement.
10069         * modules/strerror (Depends-on): Add string.
10070         (configure.ac): Detect use of module.
10071         * tests/test-strerror.c: New file.
10072         * modules/strerror-tests: New test module.
10073         * modules/argp (Depends-on): Add strerror.
10074         * modules/error (Depends-on): Likewise.
10075         Reported by Martin Koeppe.
10076
10077 2007-09-24  Bruno Haible  <bruno@clisp.org>
10078
10079         * README: Update git instructions.
10080
10081 2007-09-24  Eric Blake  <ebb9@byu.net>
10082
10083         Revert fpending breakage from 2007-09-08.
10084         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
10085         __fpending.c.
10086
10087 2007-09-24  Jim Meyering  <jim@meyering.net>
10088
10089         filenamecat.c: Add a test.
10090         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
10091         showing how the function works when DIR is the empty string.
10092
10093 2007-09-21  Simon Josefsson  <simon@josefsson.org>
10094
10095         * tests/test-canonicalize.sh: Turn on executable bit.
10096
10097 2007-09-19  Eric Blake  <ebb9@byu.net>
10098
10099         * README: Update CVS instructions.
10100
10101 2007-09-18  Bruno Haible  <bruno@clisp.org>
10102
10103         * modules/areadlink: New file.
10104         * lib/areadlink.h (areadlink): New declaration.
10105         * lib/areadlink.c: New file, based on lib/xreadlink.c.
10106
10107 2007-09-17  Jim Meyering  <jim@meyering.net>
10108
10109         * lib/savewd.c (ESTALE) [!defined]: Define.
10110         Reported to be required on Interix by Martin Koeppe.
10111
10112 2007-09-17  Bruno Haible  <bruno@clisp.org>
10113
10114         * gnulib-tool (func_version): Use $version.
10115
10116 2007-09-16  Bruno Haible  <bruno@clisp.org>
10117
10118         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
10119         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
10120         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
10121         Reported by Greg Schafer <gschafer@zip.com.au>.
10122
10123 2007-09-15  Bruno Haible  <bruno@clisp.org>
10124
10125         * gnulib-tool (sed): Try a little harder to make bash understand the
10126         alias.
10127         Reported by Bruce Korb <bruce.korb@gmail.com>.
10128
10129 2007-09-13  Eric Blake  <ebb9@byu.net>
10130
10131         * ChangeLog: Remove conflict markers.
10132
10133 2007-09-13  Simon Josefsson  <simon@josefsson.org>
10134
10135         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
10136         Reported by Bruno Haible <bruno@clisp.org>.
10137
10138 2007-09-12  Bruno Haible  <bruno@clisp.org>
10139
10140         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
10141         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
10142         is not defined.
10143
10144 2007-09-12  Eric Blake  <ebb9@byu.net>
10145
10146         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
10147         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
10148         Autoconf definition.
10149         * modules/euidaccess (Depends-on): Add extensions, for
10150         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
10151         * modules/fnmatch (Depends-on): Likewise.
10152         * modules/getaddrinfo (Depends-on): Likewise.
10153         * modules/getdelim (Depends-on): Likewise.
10154         * modules/getline (Depends-on): Likewise.
10155         * modules/getsubopt (Depends-on): Likewise.
10156         * modules/gettext (Depends-on): Likewise.
10157         * modules/group-member (Depends-on): Likewise.
10158         * modules/mbchar (Depends-on): Likewise.
10159         * modules/memmem (Depends-on): Likewise.
10160         * modules/mempcpy (Depends-on): Likewise.
10161         * modules/memrchr (Depends-on): Likewise.
10162         * modules/pagealign_alloc (Depends-on): Likewise.
10163         * modules/readutmp (Depends-on): Likewise.
10164         * modules/stpcpy (Depends-on): Likewise.
10165         * modules/stpncpy (Depends-on): Likewise.
10166         * modules/strchrnul (Depends-on): Likewise.
10167         * modules/strndup (Depends-on): Likewise.
10168         * modules/strsep (Depends-on): Likewise.
10169         * modules/strverscmp (Depends-on): Likewise.
10170         * modules/vasprintf (Depends-on): Likewise.
10171         * modules/wcwidth (Depends-on): Likewise.
10172         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
10173         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
10174         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
10175         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
10176         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
10177         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
10178         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
10179         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
10180         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
10181         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
10182         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
10183         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
10184         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
10185         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
10186         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
10187         * m4/readutmp.m4 (gl_READUTMP): Likewise.
10188         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10189         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
10190         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
10191         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
10192         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
10193         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
10194         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
10195         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
10196         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
10197         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10198         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
10199         so that lock.m4 can be used in gettext without extensions module.
10200
10201 2007-09-11  Bruno Haible  <bruno@clisp.org>
10202
10203         * m4/isc-posix.m4: Remove file.
10204         Suggested by Eric Blake.
10205
10206 2007-09-11  Eric Blake  <ebb9@byu.net>
10207
10208         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
10209
10210 2007-09-10  Bruno Haible  <bruno@clisp.org>
10211
10212         * posix-modules: Fix typo in error message.
10213         Reported by Matt <mkraai@beckman.com>.
10214
10215 2007-09-09  Bruno Haible  <bruno@clisp.org>
10216
10217         * doc/functions/getdelim.texi: Update list of platforms lacking the
10218         function.
10219         * doc/functions/getline.texi: Likewise.
10220
10221 2007-09-09  Jim Meyering  <jim@meyering.net>
10222
10223         * lib/hash.c (hash_initialize): Detect calloc failure.
10224         Reported by Bruno Haible.
10225
10226 2007-09-09  Bruno Haible  <bruno@clisp.org>
10227
10228         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
10229         malloc or realloc fails.
10230
10231 2007-09-09  Bruno Haible  <bruno@clisp.org>
10232
10233         * modules/getcwd (Depends-on): Add malloc-posix.
10234         * modules/glob (Depends-on): Likewise.
10235         * modules/putenv (Depends-on): Likewise.
10236         * modules/strdup (Depends-on): Likewise.
10237         * modules/getdelim (Depends-on): Add realloc-posix.
10238         * modules/read-file (Depends-on): Likewise.
10239
10240 2007-09-09  Bruno Haible  <bruno@clisp.org>
10241
10242         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
10243         (gl_FUNC_MALLOC_POSIX): Require it.
10244         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
10245         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
10246         * modules/realloc (Files): Add m4/malloc.m4.
10247         * modules/calloc (Files): Likewise.
10248
10249 2007-09-09  Bruno Haible  <bruno@clisp.org>
10250
10251         * modules/malloc-posix: New file.
10252         * modules/malloc (Depends-on): Add malloc-posix.
10253         * lib/malloc.c: Include errno.h.
10254         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
10255         and a POSIX-compatible malloc into a single function. Set ENOMEM
10256         when returning NULL.
10257         * m4/malloc.m4: New file.
10258         * doc/functions/malloc.texi: Mention the malloc-posix module.
10259         * lib/stdlib_.h (malloc): New declaration.
10260         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10261         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
10262         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
10263         and HAVE_MALLOC_POSIX.
10264
10265 2007-09-09  Bruno Haible  <bruno@clisp.org>
10266
10267         * modules/realloc-posix: New file.
10268         * modules/realloc (Depends-on): Add realloc-posix.
10269         * lib/realloc.c: Include errno.h.
10270         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
10271         and a POSIX-compatible realloc into a single function. Set ENOMEM
10272         when returning NULL.
10273         * m4/realloc.m4: New file.
10274         * doc/functions/realloc.texi: Mention the realloc-posix module.
10275         * lib/stdlib_.h (realloc): New declaration.
10276         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10277         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
10278         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
10279         and HAVE_REALLOC_POSIX.
10280
10281 2007-09-09  Bruno Haible  <bruno@clisp.org>
10282
10283         * modules/calloc-posix: New file.
10284         * modules/calloc (Depends-on): Add calloc-posix.
10285         * lib/calloc.c: Include errno.h.
10286         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
10287         and a POSIX-compatible calloc into a single function. Set ENOMEM
10288         when returning NULL.
10289         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
10290         * doc/functions/calloc.texi: Mention the calloc-posix module.
10291         * lib/stdlib_.h (calloc): New declaration.
10292         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
10293         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
10294         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
10295         and HAVE_CALLOC_POSIX.
10296
10297 2007-09-09  Bruno Haible  <bruno@clisp.org>
10298
10299         Allow for modules to show an arbitrary notice.
10300         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
10301         * gnulib-tool: New option --extract-notice.
10302         (func_usage): Document it.
10303         (sed_extract_prog): Update.
10304         (func_get_notice): New function.
10305         (func_modules_notice): New function.
10306         (func_import, func_create_testdir): Invoke it.
10307         Suggested by Jim Meyering.
10308
10309 2007-09-09  Bruno Haible  <bruno@clisp.org>
10310
10311         * gnulib-tool: New options --verbose, --quiet.
10312         (func_usage): Document them.
10313         (verbose): New variable.
10314         (func_execute_command): New function.
10315         (func_import): Don't show the module list and the file list if
10316         $verbose < 0.
10317         (func_create_testdir): Likewise. Use func_execute_command.
10318         (func_create_megatestdir): Use func_execute_command.
10319
10320 2007-09-08  Bruno Haible  <bruno@clisp.org>
10321
10322         * gnulib-tool (func_import): Prefer rsync over wget when available,
10323         for fetching the PO files.
10324
10325 2007-09-08  Bruno Haible  <bruno@clisp.org>
10326
10327         * posix-modules: New file. Portions copied from gnulib-tool.
10328         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
10329
10330 2007-09-08  Jim Meyering  <jim@meyering.net>
10331
10332         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
10333         * lib/fpending.h: Rename from __fpending.h.
10334         * lib/fpending.c: Rename from __fpending.c.
10335         Include "fpending.h", not "__fpending.h".
10336         * lib/__fpending.h, lib/__fpending.c: Remove files.
10337         * modules/fpending (Files): Reflect new file names.
10338         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
10339
10340 2007-09-08  Bruno Haible  <bruno@clisp.org>
10341
10342         * m4/inttypes-h.m4: Remove stub file.
10343
10344 2007-09-07  Simon Josefsson  <simon@josefsson.org>
10345
10346         * doc/headers/stdint.texi: Discuss #include_next issue.
10347
10348 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
10349
10350         * build-aux/bootstrap: Remove obsolete comment about wget --help.
10351
10352 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10353
10354         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
10355         in variable name.
10356
10357 2007-09-03  Jim Meyering  <jim@meyering.net>
10358
10359         New module: git-version-gen.
10360         * modules/git-version-gen: New file.
10361
10362         Import changes from coreutils for bootstrap script.
10363
10364         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
10365
10366         bootstrap: uses rsync to download the .po files
10367         * build-aux/bootstrap (po_download_command_format): New global.
10368         (download_po_files): Use rsync.
10369         (update_po_files): Don't remove .po files after download,
10370         so future rsync runs can take advantage of the copies.
10371
10372         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
10373
10374         Solve the unnecessary-.po-file-regeneration problem once and for all.
10375         * build-aux/bootstrap (download_po_files): New function, renamed from
10376         get_translations.  Now, downloads, but doesn't update LINGUAS.
10377         (update_po_files): New function.
10378
10379         bootstrap: Ignore more.
10380         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
10381         uniwidth to e.g., lib/.gitignore.
10382         (slurp): Handle the sys_stat_.h -> sys mapping, too.
10383
10384         * build-aux/bootstrap: New setting: vc_ignore.
10385         (insert_sorted_if_absent): Create $file if absent.
10386         Adapt to new, possibly empty, list: $vc_ignore.
10387
10388         bootstrap: generate more ignorable names
10389         * build-aux/bootstrap (slurp): When generating ignorable names,
10390         also map .sin to .sed, .gperf to .c, and .y to .c.
10391
10392 2007-09-03  Jim Meyering  <jim@meyering.net>
10393
10394         * build-aux/git-version-gen: New file, from coreutils.  For details, see
10395         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
10396
10397 2007-09-02  Bruno Haible  <bruno@clisp.org>
10398
10399         Fix mis-recognition of 'mcs' on QNX 6.
10400         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
10401         output contains the string "Mono".
10402         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
10403         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
10404
10405 2007-09-01  Bruno Haible  <bruno@clisp.org>
10406
10407         Fix collision between uniwidth/* and linebreak modules.
10408         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
10409         u32_width): Remove declarations.
10410         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
10411         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
10412         streq3, streq2, streq1, streq0): Remove functions.
10413         (STREQ): Remove macro.
10414         (is_cjk_encoding): Remove function.
10415         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
10416         (uc_width, u8_width, u16_width, u32_width): Remove functions.
10417         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
10418         * NEWS: Document the change.
10419
10420 2007-09-01  Bruno Haible  <bruno@clisp.org>
10421
10422         * lib/streq.h: Add double-inclusion guard.
10423
10424 2007-09-01  Karl Berry  <karl@gnu.org>
10425
10426         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
10427
10428 2007-08-28  Jim Meyering  <jim@meyering.net>
10429
10430         Rename mreadlink_with_size to areadlink_with_size.
10431         * NEWS: Document the change.
10432         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
10433         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
10434         * lib/mreadlink.h: Rename this to...
10435         * lib/areadlink.h: ...this.
10436         * modules/mreadlink-with-size: Rename this to...
10437         * modules/areadlink-with-size: ...this.
10438         * lib/canonicalize.c: Reflect the renaming.
10439         * modules/canonicalize: Likewise.
10440
10441 2007-08-26  Bruno Haible  <bruno@clisp.org>
10442
10443         * gnulib-tool (func_import): When deciding which files to remove,
10444         consider also dangling symbolic links.
10445         Reported by Eric Blake.
10446
10447 2007-08-26  Bruno Haible  <bruno@clisp.org>
10448
10449         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
10450
10451 2007-08-23  Simon Josefsson  <simon@josefsson.org>
10452
10453         * lib/readline.c: Don't include getline.h, the prototype is now
10454         found in stdio.h.
10455
10456 2007-08-23  Jim Meyering  <jim@meyering.net>
10457
10458         Getdelim touchup.
10459         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
10460         around the funlockfile call, since funlockfile never sets errno.
10461         Don't set errno upon failed realloc.
10462
10463 2007-08-22  Eric Blake  <ebb9@byu.net>
10464
10465         Getline touchups.
10466         * lib/getdelim.c (getdelim): Revert regression that required *n to
10467         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
10468         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
10469         getdelim, rather than whether implementation is missing.
10470         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
10471         * lib/stdio_.h (getline): Also declare if replacement is
10472         required.
10473         * doc/functions/getdelim.texi: New file.
10474         * doc/functions/getline.texi: Likewise.
10475         * doc/gnulib.texi (Function Substitutes): Add new files.
10476         Reported by Bruno Haible.
10477
10478 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
10479
10480         * users.txt: Add Guile.
10481
10482 2007-08-22  Eric Blake  <ebb9@byu.net>
10483
10484         * tests/test-getdelim.c (main): Use remove, not unlink.
10485         * tests/test-getline.c (main): Likewise.
10486
10487         Move getline and getdelim into stdio.h, per POSIX 200x.
10488         * modules/getline (Files): Remove getline.h.
10489         (Depends-on): Add stdio.
10490         (configure.ac): Add module indicator.
10491         * modules/getdelim (Files): Remove getdelim.h.
10492         (Depends-on): Add stdio.
10493         (configure.ac): Add module indicator.
10494         * modules/stdio (Makefile.am): Work with new indicators.
10495         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
10496         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
10497         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
10498         * lib/getdelim.h: Delete.
10499         * lib/getline.h: Delete.
10500         * lib/stdio_.h (getdelim, getline): Declare.
10501         * modules/getdelim-tests: New module.
10502         * modules/getline-tests: Likewise.
10503         * tests/test-getdelim.c: New file.
10504         * tests/test-getline.c: Likewise.
10505         * NEWS: Document the change.
10506         * lib/getline.c: Update choice of header.
10507         * lib/csharpcomp.c: Likewise.
10508         * lib/getpass.c: Likewise.
10509         * lib/javacomp.c: Likewise.
10510         * lib/javaversion.c: Likewise.
10511         * lib/yesno.c: Likewise.
10512         * lib/getdelim.c: Likewise.
10513         (getdelim): Set errno on failure, and avoid memory leak.
10514
10515 2007-08-19  Bruno Haible  <bruno@clisp.org>
10516
10517         * modules/closein (Depends-on): Add freadahead.
10518         * lib/closein.c: Include freadahead.h.
10519         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
10520         is zero.
10521
10522 2007-08-19  Bruno Haible  <bruno@clisp.org>
10523
10524         * modules/freadahead-tests: New file.
10525         * tests/test-freadahead.sh: New file.
10526         * tests/test-freadahead.c: New file.
10527
10528         * modules/freadahead: New file.
10529         * lib/freadahead.h: New file.
10530         * lib/freadahead.c: New file.
10531         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
10532         fbufmode, fpurge, freadable, fwritable.
10533
10534 2007-08-19  Eric Blake  <ebb9@byu.net>
10535
10536         Test yesno in combination with closein.
10537         * lib/yesno.c (yesno): Document use of stdin.
10538         * modules/yesno-tests (Files): New module.
10539         * tests/test-yesno.c (main): New file.
10540         * tests/test-yesno.sh: Likewise.
10541
10542 2007-08-19  Bruno Haible  <bruno@clisp.org>
10543
10544         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
10545         * lib/fseeko.c (rpl_fseeko): Likewise.
10546         * lib/fseterr.c (fseterr): Likewise.
10547
10548 2007-08-19  Bruno Haible  <bruno@clisp.org>
10549
10550         * tests/test-lseek.c (main): Disable a test for BeOS.
10551         * doc/functions/lseek.texi: Document the BeOS bug.
10552
10553 2007-08-19  Bruno Haible  <bruno@clisp.org>
10554             Eric Blake  <ebb9@byu.net>
10555
10556         * lib/lseek.c: Include <sys/stat.h>.
10557         (rpl_lseek): Add workaround code also for Unix platforms.
10558         Needed for BeOS.
10559         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
10560         * doc/functions/lseek.texi: Document BeOS definiency.
10561
10562 2007-08-18  Bruno Haible  <bruno@clisp.org>
10563
10564         * modules/fstrcmp-tests: New file.
10565         * tests/test-fstrcmp.c: New file.
10566
10567 2007-08-18  Bruno Haible  <bruno@clisp.org>
10568
10569         * modules/fstrcmp: New file, from GNU gettext with modifications.
10570         * lib/fstrcmp.h: New file, from GNU gettext.
10571         * lib/fstrcmp.c: New file, from GNU gettext.
10572         * MODULES.html.sh (String handling): Add fstrcmp.
10573
10574 2007-08-18  Bruno Haible  <bruno@clisp.org>
10575
10576         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
10577         'bool'.
10578         (diag, compareseq): Remove const from the ctxt argument.
10579         (USE_HEURISTIC): Undefine at the end.
10580
10581 2007-08-18  Jim Meyering  <jim@meyering.net>
10582
10583         New file: lib/idcache.h
10584         * NEWS: Mention the addition.
10585         * modules/idcache (Files): Add lib/idcache.h
10586         * lib/idcache.c: Include "idcache.h".
10587         Don't include <sys/types.h>.
10588         Add a FIXME comment.
10589         Move file-scoped "static" declarations to the top.
10590         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
10591
10592 2007-08-17  Bruno Haible  <bruno@clisp.org>
10593         and Paul Eggert  <eggert@cs.ucla.edu>
10594
10595         * MODULES.html.sh: Add diffseq.
10596         * modules/diffseq: New file.
10597         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
10598         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
10599
10600 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10601
10602         Import changes from coreutils for bootstrap script.
10603
10604         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
10605
10606         * build-aux/bootstrap (slurp): Work even in environments where
10607         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
10608         current code does not slurp files whose names start with ".", and
10609         this looks like it might be a troublesome area.
10610
10611         2007-07-11  Jim Meyering  <jim@meyering.net>
10612
10613         If there's a GPL vN copyright comment, require that N == 3.
10614
10615         2007-07-08  Jim Meyering  <jim@meyering.net>
10616
10617         Run the coreutils-specific code only if tests/Makefile.am.in exists.
10618         * build-aux/bootstrap (mam_template): Move definition out of loop.
10619
10620         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
10621
10622         * build-aux/bootstrap (symlink_to_dir): Rename function from
10623         symlink_to_gnulib.  Add a directory parameter.  Update all
10624         callers.
10625         (cp_mark_as_generated): Also check for -- and link to -- files in
10626         gl/.
10627
10628         2007-07-08  Jim Meyering  <jim@meyering.net>
10629
10630         Adapt to deeper hierarchy in gnulib.
10631         * build-aux/bootstrap (symlink_to_dir): If the destination
10632         directory doesn't exist, create it. This is required at least for
10633         "lib/uniwidth/cjk.h".
10634
10635         2007-05-15  Jim Meyering  <jim@meyering.net>
10636
10637         * build-aux/bootstrap: Now that generated Makefile.am files
10638         are no longer under version control, they must be created at
10639         bootstrap time.
10640
10641 2007-08-14  Ben Pfaff  <blp@gnu.org>
10642
10643         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
10644
10645 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
10646
10647         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
10648         given the changes below.
10649         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
10650         even on hosts that have padding bits beyond the supported 64.
10651
10652 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
10653
10654         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
10655         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
10656         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
10657         depends on it.
10658         (xstrtol_error): Remove.
10659         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
10660         but with a different signature.
10661         (ATTRIBUTE_NORETURN, __attribute__): New macros.
10662         * lib/xstrtol-error.c: Include exitfail.h.
10663         (xstrtol_fatal): New function, with a different signature from the
10664         old xstrtol_error, so that the caller need not worry about passing
10665         in an exit status, or about storage management of the option argument.
10666         (xstrtol_error): Now a static function.  Redo signature to
10667         implement xstrtol_fatal.  Output the correct number of hyphens in
10668         front of the option so that the caller need not worry about
10669         storage management.
10670         (N_): New macro.
10671         (_): Remove; not used now.
10672         * modules/xstrtol: Depend on getopt.
10673         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
10674         of old STRTOL_FATAL_ERROR macro.
10675         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
10676         of test program.
10677         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
10678         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
10679
10680 2007-08-08  Eric Blake  <ebb9@byu.net>
10681
10682         * lib/xstrtol-error.c: Add missing include.
10683
10684         Move xstrtol messages into gnulib domain, when --pobase is used.
10685         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
10686         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
10687         * modules/xstrtol (Files): Distribute new file.
10688         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
10689         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
10690         * tests/test-xstrtol.c: ...into new file.
10691         * tests/test-xstrtoul.c: Also test xstrtoul.
10692         * tests/test-xstrtoimax.c: Also test xstrtoimax.
10693         * tests/test-xstrtoumax.c: Also test xstrtoumax.
10694         * tests/test-xstrtol.sh: Drive the tests.
10695         * tests/test-xstrtoimax.sh: Likewise.
10696         * tests/test-xstrtoumax.sh: Likewise.
10697         * modules/xstrtol-tests: New module.
10698         * modules/xstrtoimax-tests: Likewise.
10699         * modules/xstrtoumax-tests: Likewise.
10700
10701 2007-08-08  Jim Meyering  <jim@meyering.net>
10702
10703         New function: mfile_name_concat.
10704         * lib/filenamecat.c (mfile_name_concat): New function, just like
10705         file_name_concat, but return NULL upon failure rather than exiting
10706         with a diagnostic.
10707         * lib/filenamecat.h: Declare it.
10708
10709 2007-08-07  Bruno Haible  <bruno@clisp.org>
10710
10711         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
10712         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
10713         warning from gcc.
10714         Reported by Eric Blake.
10715
10716 2007-08-07  Simon Josefsson  <simon@josefsson.org>
10717
10718         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
10719         * modules/crypto/arcfour (License): Likewise.
10720         * modules/crypto/des-tests (License): Likewise.
10721         * modules/crypto/gc-arctwo-tests (License): Likewise.
10722         * modules/crypto/gc-des-tests (License): Likewise.
10723         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
10724         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
10725         * modules/crypto/gc-md2-tests (License): Likewise.
10726         * modules/crypto/gc-md4-tests (License): Likewise.
10727         * modules/crypto/gc-md5-tests (License): Likewise.
10728         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
10729         * modules/crypto/gc-rijndael-tests (License): Likewise.
10730         * modules/crypto/gc-sha1-tests (License): Likewise.
10731         * modules/crypto/gc-tests (License): Likewise.
10732         * modules/crypto/hmac-md5 (License): Likewise.
10733         * modules/crypto/hmac-sha1 (License): Likewise.
10734         * modules/crypto/md2-tests (License): Likewise.
10735         * modules/crypto/md4-tests (License): Likewise.
10736         * modules/crypto/md5 (License): Likewise.
10737         * modules/crypto/rijndael (License): Likewise.
10738         * modules/crypto/sha1 (License): Likewise.
10739         * modules/memxor (License): Likewise.
10740
10741 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
10742         and Bruno Haible  <bruno@clisp.org>
10743
10744         * NEWS: Describe interface changes to human, xstrtol.
10745         * lib/human.h: Include <xstrtol.h>.
10746         (human_options): Return enum strtol_error, not int.  Remove
10747         bool arg; take int * instead.
10748         * lib/human.c: Don't include "gettext.h".
10749         (_): Remove; no longer used.
10750         Don't include <xstrtol.h>, since human.h does it.
10751         (human_options): Adjust to abovementioned interface changes.
10752         Do not report error to stderr; that's now the caller's
10753         responsibility.
10754         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
10755         interface change.
10756         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
10757         Str, Argument_type_string.  All uses changed.  Put " argument"
10758         in diagnostics to make them clearer.  Change wording of suffix
10759         message for clarity.
10760         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
10761         Argument_type_string.
10762         (STRTOL_FATAL_WARN): Remove; no longer used.
10763         * modules/human (Depends-on): Remove gettext-h.
10764
10765 2007-08-06  Simon Josefsson  <simon@josefsson.org>
10766
10767         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
10768
10769 2007-07-31  Bruno Haible  <bruno@clisp.org>
10770
10771         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
10772         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
10773         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
10774
10775 2007-07-31  Bruno Haible  <bruno@clisp.org>
10776
10777         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
10778         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
10779
10780 2007-07-30  Bruno Haible  <bruno@clisp.org>
10781
10782         * modules/base64 (License): Use the synonymous term "LGPLv2+".
10783         * modules/c-ctype (License): Likewise.
10784         * modules/c-strcase (License): Likewise.
10785         * modules/check-version (License): Likewise.
10786         * modules/iconv (License): Likewise.
10787         * modules/iconv_open (License): Likewise.
10788         * modules/read-file (License): Likewise.
10789         * modules/striconv (License): Likewise.
10790         * modules/strverscmp (License): Likewise.
10791         * modules/vasprintf (License): Likewise.
10792         * modules/crypto/des (License): Likewise.
10793         * modules/crypto/gc (License): Likewise.
10794         * modules/crypto/gc-arcfour (License): Likewise.
10795         * modules/crypto/gc-arctwo (License): Likewise.
10796         * modules/crypto/gc-des (License): Likewise.
10797         * modules/crypto/gc-hmac-md5 (License): Likewise.
10798         * modules/crypto/gc-hmac-sha1 (License): Likewise.
10799         * modules/crypto/gc-md2 (License): Likewise.
10800         * modules/crypto/gc-md4 (License): Likewise.
10801         * modules/crypto/gc-md5 (License): Likewise.
10802         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
10803         * modules/crypto/gc-random (License): Likewise.
10804         * modules/crypto/gc-rijndael (License): Likewise.
10805         * modules/crypto/gc-sha1 (License): Likewise.
10806         * modules/crypto/md2 (License): Likewise.
10807         * modules/crypto/md4 (License): Likewise.
10808
10809 2007-07-30  Jim Meyering  <jim@meyering.net>
10810
10811         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
10812         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
10813         it has valid stat data.  This bug would cause du not to count the
10814         sizes of inaccessible directories.
10815         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
10816         in <http://bugzilla.redhat.com/250077>.
10817
10818 2007-07-25  Peter O'Gorman  <peter@pogma.com>
10819             Bruno Haible  <bruno@clisp.org>
10820
10821         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
10822         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
10823         #include_next, gives a diagnostic about it, but reports no error in
10824         the exit code.
10825         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
10826
10827 2007-07-24  Ben Pfaff  <blp@gnu.org>
10828
10829         Improve name: "count-one-bits" is better than "popcount".
10830         * MODULES.html.sh: Update name.
10831         * lib/popcount.h: Renamed lib/count-one-bits.h.
10832         (popcount): Renamed count_one_bits.
10833         (popcountl): Renamed count_one_bits_l.
10834         (popcountll): Renamed count_one_bits_ll.
10835         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
10836         * modules/popcount: Renamed module/count-one-bits.
10837         * modules/popcount-tests: Renamed module/count-one-bits-tests.
10838         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
10839
10840 2007-07-23  Ben Pfaff  <blp@gnu.org>
10841
10842         * lib/popcount.h (popcount32): Reduce size of constants, to allow
10843         better code generation, and add U to large constants to avoid
10844         warnings, in non-GCC case.
10845         Suggested by Bruno Haible.
10846
10847 2007-07-23  Ben Pfaff  <blp@gnu.org>
10848
10849         * lib/popcount.h: Use verify_true instead of if...abort.
10850         * modules/popcount: Depend on verify module.
10851         Suggested by Jim Meyering.
10852
10853 2007-07-23  Bruno Haible  <bruno@clisp.org>
10854
10855         * gnulib-tool (func_import): Create a .cvsignore file also when the
10856         directory is not yet in CVS but the toplevel directory is. When
10857         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
10858         Reported by Karl Berry.
10859
10860 2007-07-22  Ben Pfaff  <blp@gnu.org>
10861
10862         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
10863         case.
10864         Suggested by Eric Blake.
10865
10866 2007-07-22  Ben Pfaff  <blp@gnu.org>
10867
10868         New module: popcount.
10869         * MODULES.html.sh: Add popcount.
10870         * modules/popcount: New file.
10871         * modules/popcount-tests: New file.
10872         * tests/test-popcount.c: New file.
10873         * lib/popcount.h: New file.
10874         * m4/popcount.m4: New file.
10875
10876 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
10877
10878         * build-aux/announce-gen: Update to GPLv3.
10879
10880         * build-aux/config.guess: Update from config.
10881
10882 2007-07-21  Bruno Haible  <bruno@clisp.org>
10883
10884         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
10885         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
10886
10887 2007-07-20  Jim Meyering  <jim@meyering.net>
10888
10889         * check-module: Diagnose a self-dependency.
10890
10891 2007-07-19  Bruno Haible  <bruno@clisp.org>
10892
10893         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
10894         empty.
10895         Reported by Eric Blake.
10896
10897 2007-07-18  Bruno Haible  <bruno@clisp.org>
10898
10899         * gnulib-tool: New options --po-base, --po-domain.
10900         (func_usage): Document them.
10901         (pobase, po_domain): New variables.
10902         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
10903         DEFAULT_TEXT_DOMAIN.
10904         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
10905         (func_import): Consider pobase and po_domain. Create a po/ directory.
10906         (func_create_testdir): Set pobase and po_domain to empty.
10907         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
10908         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
10909
10910 2007-07-18  Bruno Haible  <bruno@clisp.org>
10911
10912         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10913         EXTRA_DIST augmentation for files in build-aux/.
10914
10915 2007-07-16  Bruno Haible  <bruno@clisp.org>
10916
10917         * modules/lseek (License): Use the synonymous term "LGPLv2+".
10918         * modules/getdelim (License): Likewise.
10919
10920 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10921
10922         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
10923         * modules/d-type (License): Likewise.
10924         * modules/extensions (License): Likewise.
10925         * modules/fnmatch (License): Likewise.
10926         * modules/fseeko (License): Likewise.
10927         * modules/getaddrinfo (License): Likewise.
10928         * modules/getline (License): Likewise.
10929         * modules/getlogin_r (License): Likewise.
10930         * modules/getpass (License): Likewise.
10931         * modules/gettimeofday (License): Likewise.
10932         * modules/glob (License): Likewise.
10933         * modules/inet_ntop (License): Likewise.
10934         * modules/malloc (License): Likewise.
10935         * modules/malloca (License): Likewise.
10936         * modules/memmem (License): Likewise.
10937         * modules/mempcpy (License): Likewise.
10938         * modules/memset (License): Likewise.
10939         * modules/minmax (License): Likewise.
10940         * modules/mktime (License): Likewise.
10941         * modules/netinet_in (License): Likewise.
10942         * modules/pathmax (License): Likewise.
10943         * modules/poll (License): Likewise.
10944         * modules/regex (License): Likewise.
10945         * modules/snprintf (License): Likewise.
10946         * modules/stdbool (License): Likewise.
10947         * modules/stdint (License): Likewise.
10948         * modules/stdio (License): Likewise.
10949         * modules/strcase (License): Likewise.
10950         * modules/strcasestr (License): Likewise.
10951         * modules/strdup (License): Likewise.
10952         * modules/string (License): Likewise.
10953         * modules/strndup (License): Likewise.
10954         * modules/strnlen (License): Likewise.
10955         * modules/strpbrk (License): Likewise.
10956         * modules/strptime (License): Likewise.
10957         * modules/strsep (License): Likewise.
10958         * modules/sys_select (License): Likewise.
10959         * modules/sys_socket (License): Likewise.
10960         * modules/sys_stat (License): Likewise.
10961         * modules/sys_time (License): Likewise.
10962         * modules/time (License): Likewise.
10963         * modules/time_r (License): Likewise.
10964         * modules/timegm (License): Likewise.
10965         * modules/unistd (License): Likewise.
10966         * modules/vsnprintf (License): Likewise.
10967         * modules/wctype (License): Likewise.
10968
10969 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10970
10971         * modules/argz (License): LGPLv2+.
10972
10973 2007-07-15  Karl Berry  <karl@gnu.org>
10974
10975         * doc/gnulib.texi: revise node structure per new fdl.texi.
10976
10977 2007-07-14  Bruno Haible  <bruno@clisp.org>
10978
10979         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
10980         the output file.
10981         * lib/uniname/uninames.h: Regenerated.
10982
10983 2007-07-14  Karl Berry  <karl@gnu.org>
10984
10985         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
10986         omitting sectioning and index commands.
10987
10988 2007-07-13  Bruno Haible  <bruno@clisp.org>
10989
10990         New gnulib-tool option --more-symlinks.
10991         * gnulib-tool (func_usage): Document --more-symlinks.
10992         (do_copyrights): New variable.
10993         Recognize option --more-symlinks.
10994         (func_import): Don't add a copyright notice transform to
10995         sed_transform_lib_file if do_copyrights is empty.
10996
10997 2007-07-13  Bruno Haible  <bruno@clisp.org>
10998
10999         * lib/vasnprintf.c (decimal_point_char): Define also if
11000         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
11001         && !NEED_PRINTF_DIRECTIVE_A.
11002         Reported by Clemens Koller <clemens.koller@anagramm.de> via
11003         Gary V. Vaughan <gary@gnu.org>.
11004
11005 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
11006
11007         * lib/inttypes_.h: Undo previous change, since it was fixed
11008         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
11009
11010 2007-07-13  Bruno Haible  <bruno@clisp.org>
11011
11012         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
11013         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
11014
11015 2007-07-13  Jim Meyering  <jim@meyering.net>
11016
11017         df: Don't fail for Tru64's "file-on-file mount".
11018         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
11019         so we fall through and use statfs instead.  Details here:
11020         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
11021         Reported by Albert Chin.
11022
11023 2007-07-13  Bruno Haible  <bruno@clisp.org>
11024
11025         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
11026         * modules/configmake (License): Likewise.
11027         * modules/gettext (License): Likewise.
11028         * modules/gettext-h (License): Likewise.
11029         * modules/include_next (License): Likewise.
11030         * modules/link-warning (License): Likewise.
11031         * modules/localcharset (License): Likewise.
11032         * modules/localename (License): Likewise.
11033         * modules/lock (License): Likewise.
11034         * modules/relocatable-lib-lgpl (License): Likewise.
11035         * modules/size_max (License): Likewise.
11036         * modules/vasnprintf (License): Likewise.
11037         * modules/wchar (License): Likewise.
11038         * modules/xsize (License): Likewise.
11039
11040 2007-07-13  Bruno Haible  <bruno@clisp.org>
11041
11042         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
11043         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
11044
11045 2007-07-12  Bruno Haible  <bruno@clisp.org>
11046
11047         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
11048         in the modules files.
11049
11050 2007-07-11  Karl Berry  <karl@gnu.org>
11051
11052         * MODULES.html.sh (func_module): use
11053          sed -e '\|^'"${includefile}"'$|d'
11054          instead of /.../d, to avoid errors on $includefile's containing /.
11055
11056 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
11057
11058         * gnulib-tool (func_import): Avoid duplication of --avoid
11059         statements
11060         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
11061         names to `_' in variable names.
11062
11063 2007-07-10  Eric Blake  <ebb9@byu.net>
11064
11065         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
11066         * NEWS: Document this change.
11067
11068 2007-07-08  Bruno Haible  <bruno@clisp.org>
11069
11070         Update to Unicode 5.0.
11071         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
11072         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
11073         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
11074         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
11075         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
11076         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
11077         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
11078         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
11079         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
11080         U+10A3F, U+1D242..U+1D244.
11081         (nonspacing_table_ind): Update.
11082         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
11083         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
11084
11085 2007-07-08  Bruno Haible  <bruno@clisp.org>
11086
11087         Update to Unicode 5.0.
11088         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
11089         code transform. Extend the name index field of unicode_name_to_code and
11090         unicode_code_to_name from 16 to 24 bits.
11091         * lib/uniname/uniname.c (unicode_character_name,
11092         unicode_name_character): Add the range 0x12xxx to the code transform.
11093         * lib/uniname/uninames.h: Regenerated.
11094         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
11095
11096 2007-07-07  Bruno Haible  <bruno@clisp.org>
11097
11098         * modules/wcwidth-tests: New file.
11099         * tests/test-wcwidth.c: New file.
11100
11101         Work around MacOS X wcwidth() bug.
11102         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
11103         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
11104         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
11105         original wcwidth in non-UTF-8 locales.
11106         * modules/wcwidth (Depends-on): Add localcharset, streq,
11107         uniwidth/width.
11108         * doc/functions/wcwidth.texi: Update.
11109
11110 2007-07-07  Bruno Haible  <bruno@clisp.org>
11111
11112         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
11113         (wcwidth): New declaration.
11114         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
11115         macros.
11116         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
11117         here. Prepare for creating <wchar.h> unconditionally.
11118         * modules/wchar (Depends-on): Add link-warning.
11119         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
11120         REPLACE_WCWIDTH, and GL_LINK_WARNING.
11121         * lib/wcwidth.h: Remove file.
11122         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
11123         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
11124         * modules/wcwidth (Files): Remove lib/wcwidth.h.
11125         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
11126         (Include): Replace wcwidth.h with <wchar.h>.
11127         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
11128         * lib/mbchar.h: Don't include wcwidth.h.
11129         * lib/mbswidth.c: Likewise.
11130         * NEWS: Mention the change.
11131
11132 2007-07-07  Bruno Haible  <bruno@clisp.org>
11133
11134         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
11135         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
11136         definition with an external declaration.
11137         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
11138         defined as a function. Remove AC_C_INLINE requirement.
11139         * modules/wcwidth (Files): Add lib/wcwidth.c.
11140         (Makefile.am): Remove redundant statement.
11141
11142 2007-07-07  Bruno Haible  <bruno@clisp.org>
11143
11144         * MODULES.html.sh (Unicode string functions): Add the new modules.
11145
11146         * tests/uniwidth/test-u32-strwidth.c: New file.
11147         * modules/uniwidth/u32-strwidth-tests: New file.
11148
11149         * lib/uniwidth/u32-strwidth.c: New file.
11150         * modules/uniwidth/u32-strwidth: New file.
11151
11152         * tests/uniwidth/test-u16-strwidth.c: New file.
11153         * modules/uniwidth/u16-strwidth-tests: New file.
11154
11155         * lib/uniwidth/u16-strwidth.c: New file.
11156         * modules/uniwidth/u16-strwidth: New file.
11157
11158         * tests/uniwidth/test-u8-strwidth.c: New file.
11159         * modules/uniwidth/u8-strwidth-tests: New file.
11160
11161         * lib/uniwidth/u8-strwidth.c: New file.
11162         * modules/uniwidth/u8-strwidth: New file.
11163
11164         * tests/uniwidth/test-u32-width.c: New file.
11165         * modules/uniwidth/u32-width-tests: New file.
11166
11167         * lib/uniwidth/u32-width.c: New file.
11168         * modules/uniwidth/u32-width: New file.
11169
11170         * tests/uniwidth/test-u16-width.c: New file.
11171         * modules/uniwidth/u16-width-tests: New file.
11172
11173         * lib/uniwidth/u16-width.c: New file.
11174         * modules/uniwidth/u16-width: New file.
11175
11176         * tests/uniwidth/test-u8-width.c: New file.
11177         * modules/uniwidth/u8-width-tests: New file.
11178
11179         * lib/uniwidth/u8-width.c: New file.
11180         * modules/uniwidth/u8-width: New file.
11181
11182         * tests/uniwidth/test-uc_width.c: New file.
11183         * modules/uniwidth/width-tests: New file.
11184
11185         * lib/uniwidth/width.c: New file, from GNU libiconv.
11186         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
11187         * modules/uniwidth/width: New file.
11188
11189         * lib/uniwidth.h: New file, from GNU libiconv.
11190         * modules/uniwidth/base: New file.
11191
11192 2007-07-07  Bruno Haible  <bruno@clisp.org>
11193
11194         * lib/uniname.h: New file, from GNU gettext.
11195         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
11196         * lib/uniname/uninames.h: New file, from GNU gettext.
11197         * lib/uniname/uniname.c: New file, from GNU gettext.
11198         * tests/uniname/test-uninames.sh: New file.
11199         * tests/uniname/test-uninames.c: New file, from GNU gettext.
11200         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
11201         * modules/uniname/base: New file.
11202         * modules/uniname/uniname: New file.
11203         * modules/uniname/uniname-tests: New file.
11204         * MODULES.html.sh (Unicode string functions): Add the new modules.
11205
11206 2007-07-06  Bruno Haible  <bruno@clisp.org>
11207
11208         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
11209
11210 2007-07-06  Bruno Haible  <bruno@clisp.org>
11211
11212         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
11213         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
11214         includes <cygwin/sys_time.h> which includes <sys/select.h> which
11215         include <sys/time.h>.
11216         Reported by Eric Blake.
11217
11218 2007-07-06  Eric Blake  <ebb9@byu.net>
11219
11220         Fix testing canonicalize on cygwin.
11221         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
11222         Revert patch from 2007-06-19.
11223         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
11224         canonicalize module is also in use.
11225         * tests/test-canonicalize.c: New file.
11226         * tests/test-canonicalize.sh: Likewise.
11227         * modules/canonicalize-tests: Likewise.
11228
11229 2007-07-06  Jim Meyering  <jim@meyering.net>
11230
11231         * lib/getugroups.c (getugroups): Detect getgrent failure.
11232         Adjust comment to reflect reality: this function may return -1.
11233
11234 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
11235
11236         * build-aux/bootstrap (TP_URL,get_translations): Update to use
11237         the new TP address.
11238         (usage): Fix typo
11239         (gnulib_mk): New variable.
11240
11241 2007-07-05  Jim Meyering  <jim@meyering.net>
11242
11243         Don't let endgrent clobber errno, no matter how improbable.
11244         * lib/getugroups.c (getugroups): Save and restore errno around
11245         endgrent call.
11246
11247         Close the group DB even when failing with 2^31 or more members.
11248         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
11249
11250 2007-07-04  Jim Meyering  <jim@meyering.net>
11251
11252         * lib/getugroups.h: New file.
11253         * lib/getugroups.c: Include "getugroups.h".
11254         Remove uses of "register" keyword.
11255         Move local variable, "cp", down into scope where used.
11256         Give "username" parameter the "const" attribute.
11257         * modules/getugroups (Files): Add lib/getugroups.h
11258
11259 2007-07-04  Karl Berry  <karl@gnu.org>
11260
11261         * MODULES.html.sh (func_all_modules): Complete rename of
11262         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
11263
11264 2007-07-02  Bruno Haible  <bruno@clisp.org>
11265
11266         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
11267         mode, when inttypes.h comes from gnulib.
11268         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
11269
11270 2007-07-02  Simon Josefsson  <simon@josefsson.org>
11271
11272         * NEWS: Mention lgpl module name change.
11273
11274         * modules/lgpl-2.1: Renamed from lgpl.
11275
11276         * NEWS: Mention gpl module name change.
11277
11278         * modules/gpl-3.0: New file, based on gpl-2.0.
11279
11280         * modules/gpl-2.0: Renamed from gpl.
11281
11282         * modules/gpl: Fix filename, doc/gpl.texi is now found at
11283         doc/gpl-2.0.texi.
11284
11285 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11286
11287         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
11288         #define __STDC_LIMIT_MACROS temporarily while including
11289         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
11290         Problem reported by Joel E. Denny in
11291         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
11292
11293 2007-07-01  Bruno Haible  <bruno@clisp.org>
11294
11295         * lib/unistdio.h: New file.
11296         * lib/unistdio/u-asnprintf.h: New file.
11297         * lib/unistdio/u-asprintf.h: New file.
11298         * lib/unistdio/u-printf-args.c: New file.
11299         * lib/unistdio/u-printf-args.h: New file.
11300         * lib/unistdio/u-printf-parse.h: New file.
11301         * lib/unistdio/u-snprintf.h: New file.
11302         * lib/unistdio/u-sprintf.h: New file.
11303         * lib/unistdio/u-vasprintf.h: New file.
11304         * lib/unistdio/u-vsnprintf.h: New file.
11305         * lib/unistdio/u-vsprintf.h: New file.
11306         * lib/unistdio/ulc-asnprintf.c: New file.
11307         * lib/unistdio/ulc-asprintf.c: New file.
11308         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
11309         * lib/unistdio/ulc-printf-parse.c: New file.
11310         * lib/unistdio/ulc-snprintf.c: New file.
11311         * lib/unistdio/ulc-sprintf.c: New file.
11312         * lib/unistdio/ulc-vasnprintf.c: New file.
11313         * lib/unistdio/ulc-vasprintf.c: New file.
11314         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
11315         * lib/unistdio/ulc-vsnprintf.c: New file.
11316         * lib/unistdio/ulc-vsprintf.c: New file.
11317         * lib/unistdio/u8-asnprintf.c: New file.
11318         * lib/unistdio/u8-asprintf.c: New file.
11319         * lib/unistdio/u8-printf-parse.c: New file.
11320         * lib/unistdio/u8-snprintf.c: New file.
11321         * lib/unistdio/u8-sprintf.c: New file.
11322         * lib/unistdio/u8-vasnprintf.c: New file.
11323         * lib/unistdio/u8-vasprintf.c: New file.
11324         * lib/unistdio/u8-vsnprintf.c: New file.
11325         * lib/unistdio/u8-vsprintf.c: New file.
11326         * lib/unistdio/u8-u8-asnprintf.c: New file.
11327         * lib/unistdio/u8-u8-asprintf.c: New file.
11328         * lib/unistdio/u8-u8-snprintf.c: New file.
11329         * lib/unistdio/u8-u8-sprintf.c: New file.
11330         * lib/unistdio/u8-u8-vasnprintf.c: New file.
11331         * lib/unistdio/u8-u8-vasprintf.c: New file.
11332         * lib/unistdio/u8-u8-vsnprintf.c: New file.
11333         * lib/unistdio/u8-u8-vsprintf.c: New file.
11334         * lib/unistdio/u16-asnprintf.c: New file.
11335         * lib/unistdio/u16-asprintf.c: New file.
11336         * lib/unistdio/u16-printf-parse.c: New file.
11337         * lib/unistdio/u16-snprintf.c: New file.
11338         * lib/unistdio/u16-sprintf.c: New file.
11339         * lib/unistdio/u16-vasnprintf.c: New file.
11340         * lib/unistdio/u16-vasprintf.c: New file.
11341         * lib/unistdio/u16-vsnprintf.c: New file.
11342         * lib/unistdio/u16-vsprintf.c: New file.
11343         * lib/unistdio/u16-u16-asnprintf.c: New file.
11344         * lib/unistdio/u16-u16-asprintf.c: New file.
11345         * lib/unistdio/u16-u16-snprintf.c: New file.
11346         * lib/unistdio/u16-u16-sprintf.c: New file.
11347         * lib/unistdio/u16-u16-vasnprintf.c: New file.
11348         * lib/unistdio/u16-u16-vasprintf.c: New file.
11349         * lib/unistdio/u16-u16-vsnprintf.c: New file.
11350         * lib/unistdio/u16-u16-vsprintf.c: New file.
11351         * lib/unistdio/u32-asnprintf.c: New file.
11352         * lib/unistdio/u32-asprintf.c: New file.
11353         * lib/unistdio/u32-printf-parse.c: New file.
11354         * lib/unistdio/u32-snprintf.c: New file.
11355         * lib/unistdio/u32-sprintf.c: New file.
11356         * lib/unistdio/u32-vasnprintf.c: New file.
11357         * lib/unistdio/u32-vasprintf.c: New file.
11358         * lib/unistdio/u32-vsnprintf.c: New file.
11359         * lib/unistdio/u32-vsprintf.c: New file.
11360         * lib/unistdio/u32-u32-asnprintf.c: New file.
11361         * lib/unistdio/u32-u32-asprintf.c: New file.
11362         * lib/unistdio/u32-u32-snprintf.c: New file.
11363         * lib/unistdio/u32-u32-sprintf.c: New file.
11364         * lib/unistdio/u32-u32-vasnprintf.c: New file.
11365         * lib/unistdio/u32-u32-vasprintf.c: New file.
11366         * lib/unistdio/u32-u32-vsnprintf.c: New file.
11367         * lib/unistdio/u32-u32-vsprintf.c: New file.
11368         * tests/unistdio/test-ulc-asnprintf1.c: New file.
11369         * tests/unistdio/test-ulc-asnprintf1.h: New file.
11370         * tests/unistdio/test-ulc-printf1.h: New file.
11371         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
11372         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
11373         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
11374         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
11375         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
11376         * tests/unistdio/test-ulc-vasprintf1.c: New file.
11377         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
11378         * tests/unistdio/test-ulc-vsprintf1.c: New file.
11379         * tests/unistdio/test-u8-asnprintf1.c: New file.
11380         * tests/unistdio/test-u8-asnprintf1.h: New file.
11381         * tests/unistdio/test-u8-printf1.h: New file.
11382         * tests/unistdio/test-u8-vasnprintf1.c: New file.
11383         * tests/unistdio/test-u8-vasnprintf2.c: New file.
11384         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
11385         * tests/unistdio/test-u8-vasnprintf3.c: New file.
11386         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
11387         * tests/unistdio/test-u8-vasprintf1.c: New file.
11388         * tests/unistdio/test-u8-vsnprintf1.c: New file.
11389         * tests/unistdio/test-u8-vsprintf1.c: New file.
11390         * tests/unistdio/test-u16-asnprintf1.c: New file.
11391         * tests/unistdio/test-u16-asnprintf1.h: New file.
11392         * tests/unistdio/test-u16-printf1.h: New file.
11393         * tests/unistdio/test-u16-vasnprintf1.c: New file.
11394         * tests/unistdio/test-u16-vasnprintf2.c: New file.
11395         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
11396         * tests/unistdio/test-u16-vasnprintf3.c: New file.
11397         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
11398         * tests/unistdio/test-u16-vasprintf1.c: New file.
11399         * tests/unistdio/test-u16-vsnprintf1.c: New file.
11400         * tests/unistdio/test-u16-vsprintf1.c: New file.
11401         * tests/unistdio/test-u32-asnprintf1.c: New file.
11402         * tests/unistdio/test-u32-asnprintf1.h: New file.
11403         * tests/unistdio/test-u32-printf1.h: New file.
11404         * tests/unistdio/test-u32-vasnprintf1.c: New file.
11405         * tests/unistdio/test-u32-vasnprintf2.c: New file.
11406         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
11407         * tests/unistdio/test-u32-vasnprintf3.c: New file.
11408         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
11409         * tests/unistdio/test-u32-vasprintf1.c: New file.
11410         * tests/unistdio/test-u32-vsnprintf1.c: New file.
11411         * tests/unistdio/test-u32-vsprintf1.c: New file.
11412         * modules/unistdio/base: New file.
11413         * modules/unistdio/u-printf-args: New file.
11414         * modules/unistdio/ulc-asnprintf: New file.
11415         * modules/unistdio/ulc-asprintf: New file.
11416         * modules/unistdio/ulc-fprintf: New file.
11417         * modules/unistdio/ulc-printf-parse: New file.
11418         * modules/unistdio/ulc-snprintf: New file.
11419         * modules/unistdio/ulc-sprintf: New file.
11420         * modules/unistdio/ulc-vasnprintf: New file.
11421         * modules/unistdio/ulc-vasprintf: New file.
11422         * modules/unistdio/ulc-vfprintf: New file.
11423         * modules/unistdio/ulc-vsnprintf: New file.
11424         * modules/unistdio/ulc-vsprintf: New file.
11425         * modules/unistdio/u8-asnprintf: New file.
11426         * modules/unistdio/u8-asprintf: New file.
11427         * modules/unistdio/u8-printf-parse: New file.
11428         * modules/unistdio/u8-snprintf: New file.
11429         * modules/unistdio/u8-sprintf: New file.
11430         * modules/unistdio/u8-vasnprintf: New file.
11431         * modules/unistdio/u8-vasprintf: New file.
11432         * modules/unistdio/u8-vsnprintf: New file.
11433         * modules/unistdio/u8-vsprintf: New file.
11434         * modules/unistdio/u8-u8-asnprintf: New file.
11435         * modules/unistdio/u8-u8-asprintf: New file.
11436         * modules/unistdio/u8-u8-snprintf: New file.
11437         * modules/unistdio/u8-u8-sprintf: New file.
11438         * modules/unistdio/u8-u8-vasnprintf: New file.
11439         * modules/unistdio/u8-u8-vasprintf: New file.
11440         * modules/unistdio/u8-u8-vsnprintf: New file.
11441         * modules/unistdio/u8-u8-vsprintf: New file.
11442         * modules/unistdio/u16-asnprintf: New file.
11443         * modules/unistdio/u16-asprintf: New file.
11444         * modules/unistdio/u16-printf-parse: New file.
11445         * modules/unistdio/u16-snprintf: New file.
11446         * modules/unistdio/u16-sprintf: New file.
11447         * modules/unistdio/u16-vasnprintf: New file.
11448         * modules/unistdio/u16-vasprintf: New file.
11449         * modules/unistdio/u16-vsnprintf: New file.
11450         * modules/unistdio/u16-vsprintf: New file.
11451         * modules/unistdio/u16-u16-asnprintf: New file.
11452         * modules/unistdio/u16-u16-asprintf: New file.
11453         * modules/unistdio/u16-u16-snprintf: New file.
11454         * modules/unistdio/u16-u16-sprintf: New file.
11455         * modules/unistdio/u16-u16-vasnprintf: New file.
11456         * modules/unistdio/u16-u16-vasprintf: New file.
11457         * modules/unistdio/u16-u16-vsnprintf: New file.
11458         * modules/unistdio/u16-u16-vsprintf: New file.
11459         * modules/unistdio/u32-asnprintf: New file.
11460         * modules/unistdio/u32-asprintf: New file.
11461         * modules/unistdio/u32-printf-parse: New file.
11462         * modules/unistdio/u32-snprintf: New file.
11463         * modules/unistdio/u32-sprintf: New file.
11464         * modules/unistdio/u32-vasnprintf: New file.
11465         * modules/unistdio/u32-vasprintf: New file.
11466         * modules/unistdio/u32-vsnprintf: New file.
11467         * modules/unistdio/u32-vsprintf: New file.
11468         * modules/unistdio/u32-u32-asnprintf: New file.
11469         * modules/unistdio/u32-u32-asprintf: New file.
11470         * modules/unistdio/u32-u32-snprintf: New file.
11471         * modules/unistdio/u32-u32-sprintf: New file.
11472         * modules/unistdio/u32-u32-vasnprintf: New file.
11473         * modules/unistdio/u32-u32-vasprintf: New file.
11474         * modules/unistdio/u32-u32-vsnprintf: New file.
11475         * modules/unistdio/u32-u32-vsprintf: New file.
11476         * modules/unistdio/ulc-asnprintf-tests: New file.
11477         * modules/unistdio/ulc-vasnprintf-tests: New file.
11478         * modules/unistdio/ulc-vasprintf-tests: New file.
11479         * modules/unistdio/ulc-vsnprintf-tests: New file.
11480         * modules/unistdio/ulc-vsprintf-tests: New file.
11481         * modules/unistdio/u8-asnprintf-tests: New file.
11482         * modules/unistdio/u8-vasnprintf-tests: New file.
11483         * modules/unistdio/u8-vasprintf-tests: New file.
11484         * modules/unistdio/u8-vsnprintf-tests: New file.
11485         * modules/unistdio/u8-vsprintf-tests: New file.
11486         * modules/unistdio/u16-asnprintf-tests: New file.
11487         * modules/unistdio/u16-vasnprintf-tests: New file.
11488         * modules/unistdio/u16-vasprintf-tests: New file.
11489         * modules/unistdio/u16-vsnprintf-tests: New file.
11490         * modules/unistdio/u16-vsprintf-tests: New file.
11491         * modules/unistdio/u32-asnprintf-tests: New file.
11492         * modules/unistdio/u32-vasnprintf-tests: New file.
11493         * modules/unistdio/u32-vasprintf-tests: New file.
11494         * modules/unistdio/u32-vsnprintf-tests: New file.
11495         * modules/unistdio/u32-vsprintf-tests: New file.
11496         * MODULES.html.sh (Unicode string functions): Add the new modules.
11497
11498 2007-07-01  Bruno Haible  <bruno@clisp.org>
11499
11500         * lib/sprintf.c (sprintf): Limit the available length estimation,
11501         to avoid address wraparound.
11502         * lib/vsprintf.c (vsprintf): Likewise.
11503         * modules/sprintf-posix (Dependencies): Add stdint.
11504         * modules/vsprintf-posix (Dependencies): Likewise.
11505
11506 2007-07-01  Bruno Haible  <bruno@clisp.org>
11507
11508         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
11509         Windows PATH as well. Conservative double-quoting. Comments.
11510
11511 2007-07-01  Bruno Haible  <bruno@clisp.org>
11512             Eric Blake  <ebb9@byu.net>
11513             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11514
11515         * gnulib-tool (self_abspathname): Fix algorithm to cope with
11516         empty components in $PATH, denoting '.'.
11517
11518 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11519
11520         * gnulib-tool: Fix indentation.
11521         (func_create_megatestdir): Likewise.
11522         Report by Bruno Haible.
11523
11524 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11525
11526         Sync from Automake.
11527         * build-aux/gnupload: Fix shell portability issues with for loops.
11528         Report by Karl Berry.
11529
11530 2007-06-29  Simon Josefsson  <simon@josefsson.org>
11531
11532         * build-aux/maint.mk (POURL): Use translationproject.org.
11533
11534 2007-06-27  Simon Josefsson  <simon@josefsson.org>
11535             Bruno Haible  <bruno@clisp.org>
11536
11537         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
11538         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
11539         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
11540         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
11541         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
11542
11543 2007-06-27  Bruno Haible  <bruno@clisp.org>
11544
11545         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
11546         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
11547
11548 2007-06-26  Karl Berry  <karl@gnu.org>
11549
11550         * MODULES.html.sh: remove xreadlink-with-size.
11551
11552 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11553
11554         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
11555         method that I hope also handles the double-include problem noted
11556         by Bruno Haible in
11557         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
11558
11559 2007-06-23  Bruno Haible  <bruno@clisp.org>
11560
11561         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11562         Don't let the 'mostlyclean' target fail if the last subdirectory could
11563         not be removed.
11564         Reported by Karl Berry.
11565
11566 2007-06-23  Bruno Haible  <bruno@clisp.org>
11567
11568         * gnulib-tool (echo): Add a speedier workaround for ksh.
11569         * tests/test-echo.sh: Likewise.
11570
11571 2007-06-23  Bruno Haible  <bruno@clisp.org>
11572
11573         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
11574         * tests/test-echo.sh: Likewise.
11575
11576 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11577
11578         * gnulib-tool (IFS): Initialize early, so we don't set it to
11579         empty later.
11580         (self_abspathname): Rewrite algorithm to set it, reindent.
11581         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
11582         (func_create_megatestdir): Merge some sed scripts.
11583
11584 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11585
11586         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
11587         exposed by Sun Studio 11 cc on Solaris 8.
11588
11589 2007-06-22  Bruno Haible  <bruno@clisp.org>
11590
11591         * gnulib-tool (echo): Ensure the echo primitive does not interpret
11592         backslashes.
11593         * tests/test-echo.sh: New file.
11594
11595 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11596
11597         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
11598         simplify `sed_replace_build_aux' scripts, they are portable but
11599         echoing them with `echo' is not.
11600         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
11601
11602 2007-06-21  Karl Berry  <karl@gnu.org>
11603
11604         * config/srclist.txt: guess we can't handle the licenses via
11605         srclist at the moment.
11606
11607 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
11608
11609         * MODULES.html.sh: Add include_next.
11610         * modules/include_next: New file.
11611
11612 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
11613
11614         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
11615         INCLUDE_NEXT.
11616         (gl_CHECK_NEXT_HEADERS): New macro.
11617         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
11618         the obsolescent gl_ABSOLUTE_HEADER.
11619         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
11620         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
11621         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
11622         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
11623         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
11624         * m4/math_h.m4 (gl_MATH_H): Likewise.
11625         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
11626         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
11627         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
11628         * m4/stdint.m4 (gl_STDINT_H): Likewise.
11629         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
11630         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
11631         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
11632         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
11633         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
11634         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
11635         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
11636         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
11637         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
11638         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
11639         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
11640         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
11641         * m4/inttypes.m4 (gl_INTTYPES_H): Define
11642         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
11643         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
11644         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
11645         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
11646         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
11647         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
11648         * lib/float_.h: Likewise.
11649         * lib/inttypes_.h: Likewise.
11650         * lib/math_.h: Likewise.
11651         * lib/search_.h: Likewise.
11652         * lib/signal_.h: Likewise.
11653         * lib/stdint_.h: Likewise.
11654         * lib/stdio_.h: Likewise.
11655         * lib/stdlib_.h: Likewise.
11656         * lib/string_.h: Likewise.
11657         * lib/sys_stat_.h: Likewise.
11658         * lib/sys_time_.h: Likewise.
11659         * lib/time_.h: Likewise.
11660         * lib/unistd_.h: Likewise.
11661         * lib/wchar_.h: Likewise.
11662         * lib/wctype_.h: Likewise.
11663         * lib/dirent_.h: Likewise.
11664         * lib/iconv_.h: Likewise.
11665         * lib/locale_.h: Likewise.
11666         * lib/netinet_in_.h: Likewise.
11667         * lib/sys_select_.h: Likewise.
11668         * lib/sys_socket_.h: Likewise.
11669         * lib/sysexits_.h: Likewise.
11670         * modules/fcntl (Depends-on): Depend on include_next, not
11671         absolute_header.
11672         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
11673         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
11674         * modules/fchdir: Likewise.
11675         * modules/float: Likewise.
11676         * modules/iconv_open: Likewise.
11677         * modules/inttypes: Likewise.
11678         * modules/locale: Likewise.
11679         * modules/math: Likewise.
11680         * modules/netinet_in: Likewise.
11681         * modules/search: Likewise.
11682         * modules/signal: Likewise.
11683         * modules/stdint: Likewise.
11684         * modules/stdio: Likewise.
11685         * modules/stdlib: Likewise.
11686         * modules/string: Likewise.
11687         * modules/sys_select: Likewise.
11688         * modules/sys_socket: Likewise.
11689         * modules/sys_stat: Likewise.
11690         * modules/sys_time: Likewise.
11691         * modules/sysexits: Likewise.
11692         * modules/time: Likewise.
11693         * modules/unistd: Likewise.
11694         * modules/wchar: Likewise.
11695         * modules/wctype: Likewise.
11696         * modules/sys_stat: Change maintainer to "all".
11697         * modules/unistd: Likewise.
11698
11699 2007-06-20  Karl Berry  <karl@gnu.org>
11700
11701         * config/srclist.txt: track www changes in license files.
11702
11703 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
11704
11705         * build-aux/bootstrap: Remove stray dot.
11706         Make sure build_aux settings are honored when linking
11707         gnulib_extra_files.
11708
11709 2007-06-19  Eric Blake  <ebb9@byu.net>
11710
11711         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
11712         Allow compilation on cygwin.
11713
11714 2007-06-19  Jim Meyering  <jim@meyering.net>
11715
11716         xreadlink-with-size: Remove module.  No longer used.
11717         Ex-callers now use xreadlink or mreadlink-with-size.
11718         * modules/xreadlink-with-size: Remove module.
11719         * lib/xreadlink-with-size.c: Remove file.
11720         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
11721         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
11722         just before the function definition *is* accurate.
11723
11724         Eliminate one way canonicalize_filename_mode could exit.
11725         * lib/canonicalize.c (canonicalize_filename_mode):
11726         Use mreadlink_with_size, not xreadlink_with_size.
11727
11728 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
11729
11730         Detect porting problems to FreeBSD/arm, which has time_t wider than
11731         long int.  Original problem reported for GNU diff by Xin Li in
11732         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
11733         * modules/getdate (Depends-on): Add intprops, verify.
11734         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
11735         is an integer type no wider than long int.
11736
11737 2007-06-18  Jim Meyering  <jim@meyering.net>
11738
11739         New module: mreadlink-with-size.
11740         * MODULES.html.sh: Add mreadlink-with-size.
11741         * modules/mreadlink-with-size: New module
11742         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
11743         not xreadlink-with-size.
11744         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
11745
11746 2007-06-16  Bruno Haible  <bruno@clisp.org>
11747
11748         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
11749         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
11750         Reported by Gary V. Vaughan <gary@gnu.org>.
11751
11752 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
11753
11754         Revamp lchown so that it lives in unistd.h where it belongs.
11755         * lib/lchown.h: Remove.
11756         * lib/dirchownmod.c: Don't include lib/lchown.h.
11757         * lib/fchownat.c: Likewise.
11758         * lib/openat.c: Likewise.
11759         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
11760         does not follow symlinks.
11761         (EOPNOTSUPP): Define if not defined.
11762         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
11763         is defined to 0.
11764         (lchown): New decl.
11765         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
11766         Do not check for lchown decl.
11767         Set REPLACE_LCHOWN.
11768         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
11769         REPLACE_LCHOWN.
11770         * modules/chown: Make it clear it follows symlinks.
11771         * modules/lchown: Make it clear it doesn't follow symlinks.
11772         (Files): Remove lib/lchown.h
11773         (Depends-on): Add unistd.
11774         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
11775         (Include): Include <unistd.h>, not "lchown.h".
11776         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
11777         REPLACE_LCHOWN.
11778
11779 2007-06-15  Jim Meyering  <jim@meyering.net>
11780
11781         Change license (GPL to LGPL) of fsusage and dependents.
11782         * modules/fsusage (License): Change to LGPL.
11783         * modules/full-read (License): Likewise.
11784         * modules/full-write (License): Likewise.
11785         * modules/safe-read (License): Likewise.
11786         * modules/safe-write (License): Likewise.
11787
11788 2007-06-14  Ben Pfaff  <blp@gnu.org>
11789
11790         Missing part of allocsa -> malloca transition.
11791         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
11792         gl_MALLOCA.
11793
11794 2007-06-12  Bruno Haible  <bruno@clisp.org>
11795
11796         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
11797         to ia64, x86_64, i386.
11798         Reported by Eric Blake.
11799
11800 2007-06-12  Bruno Haible  <bruno@clisp.org>
11801
11802         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
11803         cross-compiling to x86_64.
11804
11805 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
11806
11807         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
11808         glitch reported by Ralf Wildenhues in
11809         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
11810
11811         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
11812         Vin Shelton.
11813
11814 2007-06-11  Bruno Haible  <bruno@clisp.org>
11815
11816         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
11817         replacement string.
11818         Reported by Eric Blake.
11819
11820 2007-06-10  Bruno Haible  <bruno@clisp.org>
11821
11822         Prepare vasnprintf code for use with Unicode strings.
11823         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
11824         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
11825         TYPE_U32_STRING.
11826         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
11827         a_u32_string variants.
11828         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11829         * lib/printf-args.c: Don't include config.h and the specification
11830         header if PRINTF_FETCHARGS is already defined.
11831         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
11832         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
11833         TYPE_U16_STRING, TYPE_U32_STRING.
11834         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
11835         u16_directive, u16_directives, u32_directive, u32_directives): New
11836         types.
11837         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
11838         New declarations.
11839         * lib/printf-parse.c: Don't include config.h and the specification
11840         header if PRINTF_PARSE is already defined. Eliminate the set of
11841         parameters for WIDE_CHAR_VERSION; the user of this file must provide
11842         them now. Include c-ctype.h.
11843         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
11844         directive and CHAR_T_ONLY_ASCII.
11845         * lib/vasnprintf.c: Don't include config.h and the specification header
11846         if VASNPRINTF is already defined.
11847         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
11848         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
11849         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
11850         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
11851         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
11852         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
11853         code accordingly.
11854         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
11855         pad_ourselves also in this case, with the 'c' and 's' directives, and
11856         with a different notion of "width".
11857         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
11858
11859 2007-06-10  Bruno Haible  <bruno@clisp.org>
11860
11861         * modules/unistr/u32-mbsnlen: New file.
11862         * lib/unistr/u32-mbsnlen.c: New file.
11863
11864         * modules/unistr/u16-mbsnlen: New file.
11865         * lib/unistr/u16-mbsnlen.c: New file.
11866
11867         * modules/unistr/u8-mbsnlen: New file.
11868         * lib/unistr/u8-mbsnlen.c: New file.
11869
11870         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
11871         declarations.
11872
11873 2007-06-10  Bruno Haible  <bruno@clisp.org>
11874
11875         * lib/string_.h (mbsnlen): New declaration.
11876         * lib/mbsnlen.c: New file.
11877         * m4/mbsnlen.m4: New file.
11878         * modules/mbsnlen: New file.
11879         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
11880         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
11881         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
11882
11883 2007-06-10  Bruno Haible  <bruno@clisp.org>
11884
11885         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
11886
11887 2007-06-10  Bruno Haible  <bruno@clisp.org>
11888
11889         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
11890         * lib/mbuiter.h: Likewise.
11891
11892 2007-06-10  Bruno Haible  <bruno@clisp.org>
11893
11894         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
11895         declaration.
11896
11897 2007-06-10  Karl Berry  <karl@gnu.org>
11898
11899         * config/srclist.txt: remove gettext entries, Bruno prefers
11900         to update individually.
11901
11902 2007-06-10  Bruno Haible  <bruno@clisp.org>
11903
11904         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
11905         'maxlen'. Ensure only length + width bytes are allocated, not
11906         length + 1 + width.
11907
11908 2007-06-09  Bruno Haible  <bruno@clisp.org>
11909
11910         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
11911         (CHAR_T): Remove macro.
11912         (VASNPRINTF): Update.
11913
11914 2007-06-09  Bruno Haible  <bruno@clisp.org>
11915
11916         * MODULES.html.sh (Unicode string functions): Add the new modules.
11917
11918         * modules/uniconv/u32-conv-to-enc: New file.
11919         * lib/uniconv/u32-conv-to-enc.c: New file.
11920         * modules/uniconv/u32-conv-to-enc-tests: New file.
11921         * tests/uniconv/test-u32-conv-to-enc.c: New file.
11922
11923         * modules/uniconv/u16-conv-to-enc: New file.
11924         * lib/uniconv/u16-conv-to-enc.c: New file.
11925         * lib/uniconv/u-conv-to-enc.h: New file.
11926         * modules/uniconv/u16-conv-to-enc-tests: New file.
11927         * tests/uniconv/test-u16-conv-to-enc.c: New file.
11928
11929         * modules/uniconv/u8-conv-to-enc: New file.
11930         * lib/uniconv/u8-conv-to-enc.c: New file.
11931         * modules/uniconv/u8-conv-to-enc-tests: New file.
11932         * tests/uniconv/test-u8-conv-to-enc.c: New file.
11933
11934         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
11935         u32_conv_to_encoding): New declarations.
11936
11937 2007-06-09  Bruno Haible  <bruno@clisp.org>
11938
11939         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
11940
11941 2007-06-09  Bruno Haible  <bruno@clisp.org>
11942
11943         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
11944         * modules/malloca: Renamed from modules/allocsa, updated.
11945         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
11946         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
11947         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
11948         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
11949         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
11950         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
11951         * modules/xmalloca: Renamed from modules/xallocsa, updated.
11952         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
11953         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
11954         * modules/c-strcasestr (Depends-on): Update.
11955         * lib/c-strcasestr.c: Update.
11956         * modules/c-strstr (Depends-on): Update.
11957         * lib/c-strstr.c: Update.
11958         * modules/canonicalize-lgpl (Depends-on): Update.
11959         * lib/canonicalize-lgpl.c: Update.
11960         * modules/clean-temp (Depends-on): Update.
11961         * lib/clean-temp.c: Update.
11962         * modules/csharpcomp (Depends-on): Update.
11963         * lib/csharpcomp.c: Update.
11964         * modules/csharpexec (Depends-on): Update.
11965         * lib/csharpexec.c: Update.
11966         * modules/javacomp (Depends-on): Update.
11967         * lib/javacomp.c: Update.
11968         * modules/javaexec (Depends-on): Update.
11969         * lib/javaexec.c: Update.
11970         * modules/mbscasestr (Depends-on): Update.
11971         * lib/mbscasestr.c: Update.
11972         * modules/mbsstr (Depends-on): Update.
11973         * lib/mbsstr.c: Update.
11974         * modules/setenv (Depends-on): Update.
11975         * lib/setenv.c: Update.
11976         * modules/strcasestr (Depends-on): Update.
11977         * lib/strcasestr.c: Update.
11978         * modules/striconveha (Depends-on): Update.
11979         * lib/striconveha.c: Update.
11980         * modules/relocatable-prog-wrapper (Files): Update.
11981         * lib/relocwrapper.c: Update.
11982         * build-aux/install-reloc: Update.
11983         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
11984
11985 2007-06-08  Bruno Haible  <bruno@clisp.org>
11986
11987         Port to uClibc.
11988         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
11989         * lib/fpurge.c (fpurge): Likewise.
11990         * lib/freading.c (freading): Likewise.
11991         * lib/fseeko.c (rpl_fseeko): Likewise.
11992         * lib/fseterr.c (fseterr): Likewise.
11993         * lib/fwriting.c (fwriting): Likewise.
11994         * tests/test-fflush.c (main): Avoid a failure on uClibc.
11995
11996 2007-06-08  Bruno Haible  <bruno@clisp.org>
11997
11998         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
11999         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
12000         * modules/gettext (Files): Add m4/intlmacosx.m4.
12001
12002 2007-06-07  Bruno Haible  <bruno@clisp.org>
12003
12004         * modules/localename-tests: New file.
12005         * tests/test-localename.c: New file.
12006
12007         New module 'localename'.
12008         * lib/localename.h: New file.
12009         * lib/localename.c: New file, from GNU gettext.
12010         * m4/localename.m4: New file.
12011         * modules/localename: New file.
12012
12013 2007-06-07  Bruno Haible  <bruno@clisp.org>
12014
12015         Work around the lack of <wchar.h> on some builds of uClibc.
12016         * doc/headers/wchar.texi: Update.
12017         * lib/wchar_.h: Include <wchar.h> only if it exists.
12018         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
12019         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
12020         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
12021         doesn't exist.
12022         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
12023         * modules/mbfile (Depends-on): Add wchar.
12024         * modules/mbiter (Depends-on): Likewise.
12025         * modules/mbuiter (Depends-on): Likewise.
12026         Reported by Simon Josefsson.
12027
12028 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12029
12030         Work around problem reported by Steven M. Schweda in
12031         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
12032         Tru64 5.1B with the Compaq compiler environment installed declares
12033         an 'isblank' function but does not define it in the C library.
12034         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
12035         * lib/regex_internal.h (isblank): Likewise.
12036         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
12037         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
12038
12039 2007-06-05  Bruno Haible  <bruno@clisp.org>
12040
12041         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
12042         ia64.
12043         * modules/printf-safe: New file.
12044         * modules/fprintf-posix (Depends-on): Add printf-safe.
12045         * modules/printf-posix (Depends-on): Likewise.
12046         * modules/snprintf-posix (Depends-on): Likewise.
12047         * modules/sprintf-posix (Depends-on): Likewise.
12048         * modules/vasnprintf-posix (Depends-on): Likewise.
12049         * modules/vasprintf-posix (Depends-on): Likewise.
12050         * modules/vfprintf-posix (Depends-on): Likewise.
12051         * modules/vprintf-posix (Depends-on): Likewise.
12052         * modules/vsnprintf-posix (Depends-on): Likewise.
12053         * modules/vsprintf-posix (Depends-on): Likewise.
12054         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
12055         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
12056         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
12057         "no" on i386, x86_64, ia64.
12058         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
12059         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12060         on i386, x86_64, ia64.
12061         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
12062         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12063         on i386, x86_64, ia64.
12064         * tests/test-vasnprintf-posix.c: Include float.h.
12065         (LDBL80_WORDS): New macro.
12066         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12067         on i386, x86_64, ia64.
12068         * tests/test-vasprintf-posix.c: Include float.h.
12069         (LDBL80_WORDS): New macro.
12070         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
12071         on i386, x86_64, ia64.
12072         * tests/test-snprintf-posix.c: Include float.h.
12073         * tests/test-sprintf-posix.c: Likewise.
12074         * tests/test-vsnprintf-posix.c: Likewise.
12075         * tests/test-vsprintf-posix.c: Likewise.
12076
12077 2007-06-05  Bruno Haible  <bruno@clisp.org>
12078
12079         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
12080         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
12081         non-IEEE numbers on i386, x86_64, ia64.
12082         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
12083         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
12084         * tests/test-isnanl.h: Include float.h.
12085         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
12086
12087 2007-06-05  Bruno Haible  <bruno@clisp.org>
12088
12089         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
12090         also the %a / %A. Handle the %a / %A code before this extra handling.
12091
12092 2007-06-05  Bruno Haible  <bruno@clisp.org>
12093
12094         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
12095         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
12096
12097 2007-06-05  Bruno Haible  <bruno@clisp.org>
12098
12099         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
12100         typo in variable name.
12101
12102 2007-06-05  Eric Blake  <ebb9@byu.net>
12103
12104         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
12105         Reported by Simon Josefsson.
12106
12107 2007-06-04  Bruno Haible  <bruno@clisp.org>
12108
12109         Avoid test failures on some PowerPC platforms.
12110         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
12111         Define differently for PowerPC.
12112         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
12113         Reported by Gary V. Vaughan <gary@gnu.org>.
12114
12115 2007-06-02  Bruno Haible  <bruno@clisp.org>
12116
12117         Fix test-stdint failure on FreeBSD/ia64.
12118         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
12119         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
12120         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
12121         * doc/headers/stdint.texi: Update.
12122
12123 2007-06-01  Bruno Haible  <bruno@clisp.org>
12124
12125         * tests/test-binary-io.c (main): Pass a third argument to open().
12126         Reported by Gary V. Vaughan <gary@gnu.org>.
12127
12128 2007-06-01  Bruno Haible  <bruno@clisp.org>
12129
12130         * doc/functions/frexpl.texi: Update for mingw.
12131
12132 2007-06-01  Bruno Haible  <bruno@clisp.org>
12133
12134         * tests/test-lseek.c (main): Disable test of errno for invalid third
12135         argument.
12136         * doc/functions/lseek.texi: Update.
12137         Reported by Gary V. Vaughan <gary@gnu.org>.
12138
12139 2007-05-28  Bruno Haible  <bruno@clisp.org>
12140
12141         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
12142
12143 2007-05-31  Eric Blake  <ebb9@byu.net>
12144
12145         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
12146         cross compiling.
12147
12148 2007-05-30  Eric Blake  <ebb9@byu.net>
12149         and Bruno Haible  <bruno@clisp.org>
12150
12151         Work around mingw test failures exposed by m4-1.4.9b.
12152         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
12153         * tests/test-unistd.c: Disable uid_t and git_t tests for the
12154         moment.
12155
12156 2007-05-30  Bruno Haible  <bruno@clisp.org>
12157
12158         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
12159         assuming that they are closed. Needed on HP-UX 11.
12160
12161 2007-05-29  Bruno Haible  <bruno@clisp.org>
12162
12163         Fix a problem with #include_next.
12164         * lib/dirent_.h: Split the double-inclusion guard.
12165         * lib/fcntl_.h: Likewise.
12166         * lib/float_.h: Likewise.
12167         * lib/iconv_.h: Likewise.
12168         * lib/inttypes_.h: Likewise.
12169         * lib/locale_.h: Likewise.
12170         * lib/math_.h: Likewise.
12171         * lib/netinet_in_.h: Likewise.
12172         * lib/search_.h: Likewise.
12173         * lib/signal_.h: Likewise.
12174         * lib/stdint_.h: Likewise.
12175         * lib/stdio_.h: Likewise.
12176         * lib/stdlib_.h: Likewise.
12177         * lib/string_.h: Likewise.
12178         * lib/sys_select_.h: Likewise.
12179         * lib/sys_socket_.h: Likewise.
12180         * lib/sys_stat_.h: Likewise.
12181         * lib/sys_time_.h: Likewise.
12182         * lib/sysexits_.h: Likewise.
12183         * lib/time_.h: Likewise.
12184         * lib/unistd_.h: Likewise.
12185         * lib/wchar_.h: Likewise.
12186         * lib/wctype_.h: Likewise.
12187
12188 2007-05-29  Bruno Haible  <bruno@clisp.org>
12189
12190         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
12191         for the moment.
12192
12193 2007-05-29  Bruno Haible  <bruno@clisp.org>
12194
12195         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
12196         invocation.
12197         Reported by Eric Blake.
12198
12199 2007-05-29  Bruno Haible  <bruno@clisp.org>
12200
12201         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
12202         compiling case.
12203
12204 2007-05-29  Eric Blake  <ebb9@byu.net>
12205             Bruno Haible  <bruno@clisp.org>
12206
12207         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
12208         cross compiles.
12209
12210 2007-05-28  Eric Blake  <ebb9@byu.net>
12211
12212         * modules/closein-tests (test_closein_LDADD): Support test on
12213         cygwin with libtool.
12214
12215 2007-05-28  Bruno Haible  <bruno@clisp.org>
12216
12217         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
12218         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
12219         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
12220         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
12221         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
12222         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
12223         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
12224         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
12225         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
12226
12227 2007-05-28  Eric Blake  <ebb9@byu.net>
12228
12229         Unconditionally include <config.h> in unit tests.
12230         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
12231         * tests/test-allocsa.c, tests/test-arcfour.c,
12232         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
12233         tests/test-array_list.c, tests/test-array_oset.c,
12234         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
12235         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
12236         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
12237         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
12238         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
12239         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
12240         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
12241         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
12242         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
12243         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
12244         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
12245         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
12246         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
12247         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
12248         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
12249         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
12250         test-md5.c, test-memmem.c, test-printf-posix.c,
12251         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
12252         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
12253         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
12254         test-strcasestr.c, test-striconv.c, test-striconveh.c,
12255         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
12256         test-vasnprintf-posix2.c, test-vasnprintf.c,
12257         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
12258         test-vfprintf-posix.c, test-vprintf-posix.c,
12259         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
12260         test-xvasprintf.c: Likewise.
12261
12262 2007-05-28  Bruno Haible  <bruno@clisp.org>
12263
12264         * gnulib-tool (func_import): Remember the --with-tests command-line
12265         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
12266         Reported by Eric Blake.
12267
12268 2007-05-28  Bruno Haible  <bruno@clisp.org>
12269
12270         * modules/ftell-tests: New file.
12271         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
12272         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
12273
12274         * lib/ftell.c: New file.
12275         * modules/ftell: New file.
12276         * m4/ftell.m4: New file.
12277         * doc/functions/ftell.texi: Update.
12278         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
12279         REPLACE_FTELL.
12280         * lib/stdio_.h (rpl_ftell): New declaration.
12281         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
12282         REPLACE_FTELL.
12283
12284 2007-05-28  Eric Blake  <ebb9@byu.net>
12285
12286         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
12287
12288 2007-05-28  Bruno Haible  <bruno@clisp.org>
12289
12290         * modules/fseek-tests: New file.
12291         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
12292         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
12293
12294         * lib/fseek.c: New file.
12295         * modules/fseek: New file.
12296         * m4/fseek.m4: New file.
12297         * doc/functions/fseek.texi: Update.
12298         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
12299         REPLACE_FSEEK.
12300         * lib/stdio_.h (rpl_fseek): New declaration.
12301         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
12302         REPLACE_FSEEK.
12303
12304 2007-05-28  Bruno Haible  <bruno@clisp.org>
12305
12306         * lib/stdio_.h (fflush): More comments.
12307
12308 2007-05-28  Bruno Haible  <bruno@clisp.org>
12309
12310         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
12311         runtime test.
12312
12313 2007-05-28  Eric Blake  <ebb9@byu.net>
12314
12315         Improve lseek module.
12316         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
12317         * lib/unistd_.h (lseek): Scale back link warning message.
12318         * tests/test-lseek.c: Beef up test.
12319         * tests/test-lseek.sh: Exercise more facets of lseek.
12320         Reported by Bruno Haible.
12321
12322 2007-05-28  Bruno Haible  <bruno@clisp.org>
12323
12324         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
12325         to define.
12326
12327 2007-05-27  Bruno Haible  <bruno@clisp.org>
12328
12329         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
12330
12331 2007-05-27  Bruno Haible  <bruno@clisp.org>
12332
12333         * modules/openmp: New file.
12334         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
12335         Noah Misch.
12336
12337 2007-05-26  Bruno Haible  <bruno@clisp.org>
12338
12339         * modules/chdir-long (Depends-on): Add fchdir.
12340         * modules/chdir-safer (Depends-on): Likewise.
12341         * modules/fts (Depends-on): Likewise.
12342         * modules/fts-lgpl (Depends-on): Likewise.
12343         * modules/openat (Depends-on): Likewise.
12344         * modules/savewd (Depends-on): Likewise.
12345
12346 2007-05-24  Eric Blake  <ebb9@byu.net>
12347
12348         Fix lseek on mingw.
12349         * modules/lseek: New module.
12350         * m4/lseek.m4: New file.
12351         * lib/lseek.c: New file.
12352         * modules/lseek-tests: New file.
12353         * tests/test-lseek.c: New file.
12354         * tests/test-lseek.sh: New file.
12355         * MODULES.html.sh: Document lseek module.
12356         * modules/fflush (Depends-on): Add lseek, fseeko.
12357         * modules/fseeko (Depends-on): Likewise.
12358         * modules/ftello (Depends-on): Likewise.
12359         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
12360         broken.
12361         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
12362         broken.
12363         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
12364         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
12365         * lib/ftello.c (rpl_ftello): Likewise.
12366         * tests/test-fseeko.c (main): Test this.
12367         * tests/test-fseeko.sh: Likewise.
12368         * tests/test-ftello.c (main): Likewise.
12369         * tests/test-ftello.sh: Likewise.
12370         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
12371         implies replacing fseek.
12372         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
12373         HAVE_FTELLO.
12374         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
12375         * modules/unistd (Makefile.am): Likewise.
12376         * lib/unistd_.h (lseek): Declare a replacement.
12377         * doc/functions/lseek.texi (lseek): Document this fix.
12378         * doc/functions/fseek.texi (fseek): Likewise.
12379         * doc/functions/ftell.texi (ftell): Likewise.
12380
12381 2007-05-24  Bruno Haible  <bruno@clisp.org>
12382
12383         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
12384         in the printed representation of a NaN.
12385         * tests/test-vasprintf-posix.c (test_function): Likewise.
12386         * tests/test-snprintf-posix.h (test_function): Likewise.
12387         * tests/test-sprintf-posix.h (test_function): Likewise.
12388         Reported by Eric Blake.
12389
12390 2007-05-23  Eric Blake  <ebb9@byu.net>
12391
12392         Fix fseeko/ftello on cygwin 1.5.24.
12393         * doc/functions/fseeko.texi (fseeko): Document the fix.
12394         * doc/functions/ftello.texi (ftello): Document the fix.
12395         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
12396         * doc/functions/stdout.text (stdout): New file.
12397         * doc/functions/stderr.text (stderr): New file.
12398         * doc/gnulib.texi (Function Substitutes): Use new files.
12399         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
12400         prior to 1.7.0.
12401         * tests/test-ftello.c (main): Likewise for ftello.
12402         * tests/test-fseeko.sh: New file.
12403         * tests/test-ftello.sh: New file.
12404         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
12405         with seekable stdin.
12406         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
12407         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
12408         (gl_REPLACE_FSEEKO): New macro.
12409         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
12410         * modules/fseeko (Files): Distribute fseeko.c.
12411         * modules/ftello (Files): Distribute ftello.c.
12412         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
12413         mode.
12414         * lib/ftello.c (rpl_ftello): New file.
12415         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
12416         fseeko, ftello.
12417         (gl_STDIN_LARGE_OFFSET): New macro.
12418         * modules/stdio (Makefile.am): Perform the replacement.
12419         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
12420
12421 2007-05-23  Bruno Haible  <bruno@clisp.org>
12422
12423         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
12424         GNULIB_POSIXCHECK is defined.
12425
12426 2007-05-21  Bruno Haible  <bruno@clisp.org>
12427
12428         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
12429         Check also the output for NaN arguments. When cross-compiling, guess
12430         no on IRIX.
12431         * lib/vasnprintf.c: Update comments.
12432         * tests/test-vasnprintf-posix.c (strisnan): New function.
12433         (test_function): Use it.
12434         * tests/test-vasprintf-posix.c (strisnan): New function.
12435         (test_function): Use it.
12436         * tests/test-snprintf-posix.h (strisnan): New function.
12437         (test_function): Use it.
12438         * tests/test-sprintf-posix.h (strisnan): New function.
12439         (test_function): Use it.
12440         Reported by Eric Blake.
12441
12442 2007-05-20  Bruno Haible  <bruno@clisp.org>
12443
12444         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
12445         numbers that fails on BeOS.
12446         * doc/functions/frexpl.texi: Update.
12447
12448 2007-05-20  Jim Meyering  <jim@meyering.net>
12449
12450         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
12451         forced upon us by glibc-2.6.
12452
12453 2007-05-20  Bruno Haible  <bruno@clisp.org>
12454
12455         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
12456         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
12457         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
12458         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
12459         NEED_PRINTF_INFINITE.
12460         (is_infinitel): New function.
12461         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
12462         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
12463         gl_PREREQ_VASNPRINTF_INFINITE.
12464         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
12465         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12466         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
12467         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
12468         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
12469         gl_PREREQ_VASNPRINTF_INFINITE.
12470         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12471         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12472         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12473         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12474         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12475         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12476         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12477         * doc/functions/fprintf.texi: Update.
12478         * doc/functions/printf.texi: Update.
12479         * doc/functions/snprintf.texi: Update.
12480         * doc/functions/sprintf.texi: Update.
12481         * doc/functions/vfprintf.texi: Update.
12482         * doc/functions/vprintf.texi: Update.
12483         * doc/functions/vsnprintf.texi: Update.
12484         * doc/functions/vsprintf.texi: Update.
12485
12486 2007-05-20  Bruno Haible  <bruno@clisp.org>
12487
12488         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
12489         was not found in libc.
12490         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
12491
12492 2007-05-20  Bruno Haible  <bruno@clisp.org>
12493
12494         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
12495         printed as "-nan" instead of "nan".
12496         * tests/test-vasprintf-posix.c (test_function): Likewise.
12497         * tests/test-snprintf-posix.h (test_function): Likewise.
12498         * tests/test-sprintf-posix.h (test_function): Likewise.
12499         Needed for HP-UX 11.
12500
12501 2007-05-20  Jim Meyering  <jim@meyering.net>
12502
12503         Fix buggy test for the fchownat-deref bug.
12504         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
12505         symlink required for the run-test.  Without it, this test would
12506         always declare that fchownat doesn't work, and client code would
12507         unnecessarily use the replacement function with fixed libc.
12508         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
12509         Reported by Greg Schafer.
12510
12511 2007-05-19  Bruno Haible  <bruno@clisp.org>
12512
12513         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
12514         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
12515         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
12516         Needed for IRIX 6.5 and Solaris 2.5.1.
12517
12518 2007-05-19  Bruno Haible  <bruno@clisp.org>
12519
12520         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
12521         (test_function): Skip tests involving -0.0 on platforms where
12522         -0.0 = 0.0.
12523         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
12524         (test_function): Skip tests involving -0.0 on platforms where
12525         -0.0 = 0.0.
12526         * tests/test-snprintf-posix.h (have_minus_zero): New function.
12527         (test_function): Skip tests involving -0.0 on platforms where
12528         -0.0 = 0.0.
12529         * tests/test-sprintf-posix.h (have_minus_zero): New function.
12530         (test_function): Skip tests involving -0.0 on platforms where
12531         -0.0 = 0.0.
12532         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
12533         tests.
12534         * tests/test-printf-posix.h (test_function): Likewise.
12535         * tests/test-printf-posix.output: Remove all -0.0 related results.
12536         Needed for IRIX 6.5.
12537
12538 2007-05-19  Bruno Haible  <bruno@clisp.org>
12539
12540         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
12541         printed as "nan0x7fffffff" instead of "nan".
12542         * tests/test-vasprintf-posix.c (test_function): Likewise.
12543         * tests/test-snprintf-posix.h (test_function): Likewise.
12544         * tests/test-sprintf-posix.h (test_function): Likewise.
12545         * tests/test-fprintf-posix.h (NaN): Remove macro.
12546         (test_function): Remove all NaN related tests.
12547         * tests/test-printf-posix.h (NaN): Remove macro.
12548         (test_function): Remove all NaN related tests.
12549         * tests/test-printf-posix.output: Remove all NaN related results.
12550         Needed for IRIX 6.5.
12551
12552 2007-05-19  Bruno Haible  <bruno@clisp.org>
12553
12554         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
12555         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
12556
12557 2007-05-19  Bruno Haible  <bruno@clisp.org>
12558
12559         * lib/float_.h: New file.
12560         * m4/float_h.m4: New file.
12561         * modules/float: New file.
12562         * modules/isnanl (Dependencies): Add float.
12563         * modules/isnanl-nolibm (Dependencies): Likewise.
12564         * modules/mathl (Dependencies): Likewise.
12565         * modules/printf-frexpl (Dependencies): Likewise.
12566         * modules/signbit (Dependencies): Likewise.
12567         * modules/vasnprintf (Dependencies): Likewise.
12568         * doc/headers/float.texi: Update.
12569
12570 2007-05-19  Jim Meyering  <jim@meyering.net>
12571
12572         * lib/utimens.c (gl_futimens): Rename from futimens,
12573         now that glibc-2.6 declares futimens.
12574         * lib/utimens.h: Likewise.
12575
12576 2007-05-19  Bruno Haible  <bruno@clisp.org>
12577
12578         Avoid test failures on mingw.
12579         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
12580         * tests/test-printf-posix.sh: Likewise.
12581         * tests/test-vfprintf-posix.sh: Likewise.
12582         * tests/test-vprintf-posix.sh: Likewise.
12583
12584 2007-05-19  Bruno Haible  <bruno@clisp.org>
12585
12586         Fix *printf result for NaN, Inf, -0.0 on mingw.
12587         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
12588         * lib/vasnprintf.c: Include math.h and isnan.h.
12589         (is_infinite_or_zero): New function.
12590         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
12591         values in the %f, %F, %e, %E, %g, %G directives.
12592         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
12593         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12594         gl_PRINTF_INFINITE and test its result. Invoke
12595         gl_PREREQ_VASNPRINTF_INFINITE.
12596         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12597         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12598         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12599         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12600         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12601         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12602         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12603         * doc/functions/fprintf.texi: Update.
12604         * doc/functions/printf.texi: Update.
12605         * doc/functions/snprintf.texi: Update.
12606         * doc/functions/sprintf.texi: Update.
12607         * doc/functions/vfprintf.texi: Update.
12608         * doc/functions/vprintf.texi: Update.
12609         * doc/functions/vsnprintf.texi: Update.
12610         * doc/functions/vsprintf.texi: Update.
12611
12612 2007-05-19  Bruno Haible  <bruno@clisp.org>
12613
12614         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
12615         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
12616         Instead of multiplying with 10^k, set extra_zeroes to k.
12617         (scale10_round_long_double): Remove function.
12618
12619 2007-05-18  Bruno Haible  <bruno@clisp.org>
12620
12621         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
12622         introduced on 2007-05-06.
12623
12624 2007-05-18  Bruno Haible  <bruno@clisp.org>
12625
12626         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
12627         %g directives.
12628         * tests/test-vasprintf-posix.c (test_function): Likewise.
12629         * tests/test-snprintf-posix.h (test_function): Likewise.
12630         * tests/test-sprintf-posix.h (test_function): Likewise.
12631
12632 2007-05-18  Bruno Haible  <bruno@clisp.org>
12633
12634         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
12635         (strmatch): New function.
12636         (test_function): Test the %f directive on numbers of various exponents.
12637         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
12638         (strmatch): New function.
12639         (test_function): Test the %f directive on numbers of various exponents.
12640         * tests/test-snprintf-posix.h (strmatch): New function.
12641         (test_function): Test the %f directive on numbers of various exponents.
12642         * tests/test-sprintf-posix.h (strmatch): New function.
12643         (test_function): Test the %f directive on numbers of various exponents.
12644         * tests/test-snprintf-posix.c (SIZEOF): New macro.
12645         * tests/test-sprintf-posix.c (SIZEOF): New macro.
12646         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
12647         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
12648
12649 2007-05-18  Bruno Haible  <bruno@clisp.org>
12650
12651         Add support for 'long double' number output.
12652         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
12653         * lib/vasnprintf.c: Include math.h and float+.h.
12654         (mp_limb_t): New type.
12655         (GMP_LIMB_BITS): New macro.
12656         (mp_twolimb_t): New type.
12657         (GMP_TWOLIMB_BITS): New macro.
12658         (mpn_t): New type.
12659         (multiply, divide, convert_to_decimal, decode_long_double,
12660         scale10_round_long_double, scale10_round_decimal_long_double,
12661         floorlog10l): New functions.
12662         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
12663         for the %f, %F, %e, %E, %g, %G directives.
12664         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
12665         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12666         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
12667         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
12668         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12669         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12670         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12671         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12672         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12673         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12674         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12675         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
12676         * modules/snprintf-posix (Depends-on): Likewise.
12677         * modules/sprintf-posix (Depends-on): Likewise.
12678         * modules/vasnprintf-posix (Depends-on): Likewise.
12679         * modules/vasprintf-posix (Depends-on): Likewise.
12680         * modules/vfprintf-posix (Depends-on): Likewise.
12681         * modules/vsnprintf-posix (Depends-on): Likewise.
12682         * modules/vsprintf-posix (Depends-on): Likewise.
12683         * modules/vasnprintf (Files): Add lib/float+.h.
12684         * doc/functions/fprintf.texi: Update.
12685         * doc/functions/printf.texi: Update.
12686         * doc/functions/snprintf.texi: Update.
12687         * doc/functions/sprintf.texi: Update.
12688         * doc/functions/vfprintf.texi: Update.
12689         * doc/functions/vprintf.texi: Update.
12690         * doc/functions/vsnprintf.texi: Update.
12691         * doc/functions/vsprintf.texi: Update.
12692
12693 2007-05-18  Bruno Haible  <bruno@clisp.org>
12694
12695         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
12696
12697 2007-05-18  Bruno Haible  <bruno@clisp.org>
12698
12699         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
12700         for printing 64-bit integers. Needed for mingw.
12701
12702 2007-05-18  Bruno Haible  <bruno@clisp.org>
12703
12704         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
12705         gl_FUNC_FREXPL_WORKS.
12706         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
12707
12708 2007-05-18  Bruno Haible  <bruno@clisp.org>
12709
12710         * modules/frexpl-nolibm-tests: New file.
12711
12712         * modules/frexpl-nolibm: New file.
12713         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
12714
12715 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12716
12717         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
12718         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12719         GCC 4.2, which otherwise issues a lot of warnings.
12720         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
12721         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
12722         Likewise.
12723         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
12724         * modules/iconv_open (iconv.h): Likewise.
12725         * modules/locale (locale.h): Likewise.
12726         * modules/netinet_in (netinet/in.h): Likewise.
12727         * modules/sys_select (sys_select.h): Likewise.
12728         * modules/sys_socket (sys/socket.h): Likewise.
12729         * modules/sys_stat (sys/stat.h): Likewise.
12730         * modules/sysexits (sysexits.h): Likewise.
12731         * modules/unistd (unistd.h): Likewise.
12732
12733 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12734
12735         * modules/closein-tests (Makefile.am): Distribute
12736         `test-closein.sh'.
12737
12738 2007-05-17  Bruno Haible  <bruno@clisp.org>
12739
12740         * tests/test-printf-posix.output: Renamed from
12741         tests/test-fprintf-posix.out.
12742         * modules/fprintf-posix-tests: Update.
12743         * modules/printf-posix-tests: Update.
12744         * modules/vfprintf-posix-tests: Update.
12745         * modules/vprintf-posix-tests: Update.
12746         * tests/test-fprintf-posix.sh: Update.
12747         * tests/test-printf-posix.sh: Update.
12748         * tests/test-vfprintf-posix.sh: Update.
12749         * tests/test-vprintf-posix.sh: Update.
12750         Reported by Ralf Wildenhues.
12751
12752 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12753
12754         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
12755         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
12756         GCC 4.2, which otherwise issues a lot of warnings.
12757         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
12758         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
12759         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
12760         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
12761         it should no longer be needed.
12762         * lib/string_.h: Likewise.
12763         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
12764         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
12765         * modules/inttypes (inttypes.h): Likewise.
12766         * modules/math (math.h): Likewise.
12767         * modules/search (search.h): Likewise.
12768         * modules/signal (signal.h): Likewise.
12769         * modules/stdint (stdint.h): Likewise.
12770         * modules/stdio (stdio.h): Likewise.
12771         * modules/stdlib (stdlib.h): Likewise.
12772         * modules/string (string.h): Likewise.
12773         * modules/sys_time (sys/time.h): Likewise.
12774         * modules/time (time.h): Likewise.
12775         * modules/wchar (wchar.h): Likewise.
12776         * modules/wctype (wtype.h): Likewise.
12777
12778 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
12779
12780         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
12781
12782 2007-05-13  Bruno Haible  <bruno@clisp.org>
12783
12784         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
12785         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
12786         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
12787         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
12788         (gl_PREREQ_STRTOK_R): Don't require it here.
12789
12790 2007-05-13  Bruno Haible  <bruno@clisp.org>
12791
12792         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
12793         when used in C++ mode.
12794
12795 2007-05-12  Bruno Haible  <bruno@clisp.org>
12796
12797         * lib/linebuffer.h: Tweak doc.
12798         * lib/linebuffer.c: Likewise.
12799
12800 2007-05-12  James Youngman  <jay@gnu.org>
12801
12802         * lib/linebuffer.c (readlinebuffer_delim): New function,
12803         like readlinebuffer, but use a caller-specified delimiter.
12804         (readlinebuffer): Just call readlinebuffer_delim with '\n'
12805         as the delimiter.
12806         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
12807
12808 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12809
12810         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
12811         * modules/openat (Files): Remove openat-die.c.
12812         (Depends-on): Add openat-die.
12813         * modules/openat-die: New module.
12814
12815 2007-05-06  Bruno Haible  <bruno@clisp.org>
12816
12817         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
12818         Update with info about Cygwin.
12819         * doc/functions/fprintf.texi: Update.
12820         * doc/functions/printf.texi: Update.
12821         * doc/functions/snprintf.texi: Update.
12822         * doc/functions/sprintf.texi: Update.
12823         * doc/functions/vfprintf.texi: Update.
12824         * doc/functions/vprintf.texi: Update.
12825         * doc/functions/vsnprintf.texi: Update.
12826         * doc/functions/vsprintf.texi: Update.
12827         Reported by Eric Blake.
12828
12829 2007-05-06  Bruno Haible  <bruno@clisp.org>
12830
12831         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
12832         padding ourselves for the floating-point directives.
12833         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
12834         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
12835         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12836         gl_PRINTF_FLAG_ZERO and test its result. Invoke
12837         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
12838         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12839         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12840         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12841         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12842         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12843         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12844         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12845         * tests/test-snprintf-posix.h (test_function): Also check the width
12846         and some flags in the %f directive.
12847         * tests/test-sprintf-posix.h (test_function): Likewise.
12848         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12849         * tests/test-vasprintf-posix.c (test_function): Likewise.
12850         * doc/functions/fprintf.texi: Update.
12851         * doc/functions/printf.texi: Update.
12852         * doc/functions/snprintf.texi: Update.
12853         * doc/functions/sprintf.texi: Update.
12854         * doc/functions/vfprintf.texi: Update.
12855         * doc/functions/vprintf.texi: Update.
12856         * doc/functions/vsnprintf.texi: Update.
12857         * doc/functions/vsprintf.texi: Update.
12858
12859 2007-05-06  Bruno Haible  <bruno@clisp.org>
12860
12861         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
12862         pass the ' flag character to sprintf or snprintf.
12863         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
12864         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
12865         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12866         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
12867         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
12868         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12869         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
12870         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12871         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12872         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12873         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12874         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12875         * tests/test-snprintf-posix.h (test_function): Also check the grouping
12876         flag.
12877         * tests/test-sprintf-posix.h (test_function): Likewise.
12878         * tests/test-vasnprintf-posix.c (test_function): Likewise.
12879         * tests/test-vasprintf-posix.c (test_function): Likewise.
12880         * doc/functions/fprintf.texi: Update.
12881         * doc/functions/printf.texi: Update.
12882         * doc/functions/snprintf.texi: Update.
12883         * doc/functions/sprintf.texi: Update.
12884         * doc/functions/vfprintf.texi: Update.
12885         * doc/functions/vprintf.texi: Update.
12886         * doc/functions/vsnprintf.texi: Update.
12887         * doc/functions/vsprintf.texi: Update.
12888
12889 2007-05-01  Bruno Haible  <bruno@clisp.org>
12890
12891         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
12892
12893 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
12894
12895         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
12896         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
12897
12898 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12899
12900         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
12901         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
12902         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
12903
12904 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
12905
12906         * lib/argp-help.c (struct hol_entry): New member `ord'.
12907         (HOL_ENTRY_PTRCMP): Use ord for comparison
12908         (hol_sort): Initialize ord.
12909
12910 2007-05-01  Bruno Haible  <bruno@clisp.org>
12911
12912         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
12913         Reported by Eric Blake.
12914         * doc/gnulib.texi (Function Substitutes): Update.
12915
12916 2007-05-01  Bruno Haible  <bruno@clisp.org>
12917
12918         * doc/functions.texi: Remove file, now redundant through
12919         doc/functions/*.texi.
12920
12921 2007-05-01  Bruno Haible  <bruno@clisp.org>
12922
12923         * modules/argp (Depends-on): Add sleep.
12924
12925 2007-05-01  Bruno Haible  <bruno@clisp.org>
12926
12927         * modules/sleep-tests: New file.
12928         * tests/test-sleep.c: New file.
12929
12930         * modules/sleep: New file.
12931         * lib/sleep.c: New file.
12932         * m4/sleep.m4: New file.
12933         * lib/unistd_.h (sleep): New declaration.
12934         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
12935         HAVE_SLEEP.
12936         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
12937         * doc/functions/sleep.texi: Document the sleep module.
12938
12939 2007-05-01  Bruno Haible  <bruno@clisp.org>
12940
12941         * lib/sigprocmask.h: Remove file.
12942         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
12943         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
12944         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
12945         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
12946         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
12947         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
12948         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
12949         HAVE_SIGSET_T as a shell variable.
12950         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
12951         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
12952         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
12953         (Depends-on): Add signal. Remove verify.
12954         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
12955         (Include): Mention <signal.h> instead of sigprocmask.h.
12956         * NEWS: Mention the change.
12957         * lib/fatal-signal.c: Don't include sigprocmask.h.
12958
12959 2007-05-01  Bruno Haible  <bruno@clisp.org>
12960
12961         * modules/signal: New file.
12962         * lib/signal_.h: New file.
12963         * m4/signal_h.m4: New file.
12964
12965 2007-05-01  Bruno Haible  <bruno@clisp.org>
12966
12967         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
12968         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
12969         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
12970         HAVE_WCTYPE_CTMP_BUG into wctype.h.
12971
12972 2007-05-01  Bruno Haible  <bruno@clisp.org>
12973
12974         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
12975         configure time.
12976         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
12977         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
12978         * modules/sys_stat (Makefile.am): Substitute their values into
12979         sys/stat.h.
12980
12981 2007-05-01  Bruno Haible  <bruno@clisp.org>
12982
12983         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
12984         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
12985         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
12986
12987 2007-05-01  Bruno Haible  <bruno@clisp.org>
12988
12989         * doc/header/assert.texi: Undo last change: don't mention the gnulib
12990         'assert' module here.
12991
12992 2007-05-01  Bruno Haible  <bruno@clisp.org>
12993
12994         * doc/functions/*.texi: New files.
12995         * doc/functions/google-ranking.txt: New file.
12996         * doc/gnulib.texi (Function Substitutes): New chapter.
12997         (ctime, inet_ntoa): Remove sections.
12998         * doc/ctime.texi: Remove file.
12999         * doc/inet_ntoa.texi: Remove file.
13000         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
13001         dependencies.
13002         (%.info): New rule, specifying a --reference-limit.
13003
13004 2007-05-01  Bruno Haible  <bruno@clisp.org>
13005
13006         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
13007
13008 2007-05-01  Bruno Haible  <bruno@clisp.org>
13009
13010         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
13011         the portability of 'mkdir' to mingw systems.
13012
13013 2007-05-01  Bruno Haible  <bruno@clisp.org>
13014
13015         * doc/headers/google-ranking.txt: New file.
13016
13017 2007-04-30  Eric Blake  <ebb9@byu.net>
13018
13019         Prefer fseeko to fseek.
13020         * modules/getpass (Depends-on): Add fseeko.
13021         * lib/getpass.c (getpass): Use fseeko, not fseek.
13022
13023 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
13024
13025         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
13026         assumes the sorting is stable, while most qsort implementations
13027         are not.  Use argument addresses to ensure they never compare as
13028         equal.
13029
13030         * tests/test-argp-2.sh (usage-indent test): Fix output
13031         (func_compare): Restore diff options
13032         * tests/test-argp.c: Restore #include "progname.h"
13033
13034 2007-04-29  Bruno Haible  <bruno@clisp.org>
13035
13036         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
13037         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
13038         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
13039         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13040         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
13041         (configure.ac): Define CHECK_SNPRINTF_POSIX.
13042         (TESTS, check_PROGRAMS): Add test-snprintf.
13043         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
13044         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
13045         (TESTS, check_PROGRAMS): Add test-vsnprintf.
13046         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
13047         assertions that fail on HP-UX, OSF/1, or IRIX.
13048         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
13049
13050 2007-04-29  Bruno Haible  <bruno@clisp.org>
13051
13052         * MODULES.html.sh (posix_functions): Remove 'contents'.
13053
13054 2007-04-29  Karl Berry  <karl@gnu.org>
13055
13056         * config/srclist.txt (gendocs_template_min): new entry.
13057
13058 2007-04-29  Bruno Haible  <bruno@clisp.org>
13059
13060         Work around fpurge bug on BSD systems.
13061         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
13062         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
13063         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
13064         fpurge to rpl_fpurge if the system already has this function.
13065         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
13066         the case where the system already has this function. Correct invariants
13067         on BSD systems.
13068         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
13069         BSD systems.
13070
13071 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
13072
13073         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
13074         proposed by Sven Verdoolaege.
13075
13076         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
13077         options.
13078         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
13079         (usage and help tests): Update
13080
13081 2007-04-29  Bruno Haible  <bruno@clisp.org>
13082
13083         * tests/test-fflush.c (main): Use a file of size 17, not 10.
13084         Print more information in case of failure. Disable a test on BeOS.
13085
13086 2007-04-29  Bruno Haible  <bruno@clisp.org>
13087
13088         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
13089         This helps debugging on systems on which no gdb is available.
13090
13091 2007-04-29  Bruno Haible  <bruno@clisp.org>
13092
13093         * lib/freading.h: Improve comments.
13094         * lib/fwriting.h: Likewise.
13095         * tests/test-freading.c (main): Don't check freading immediately after
13096         repositioning. Needed for glibc.
13097
13098 2007-04-29  Bruno Haible  <bruno@clisp.org>
13099
13100         * lib/freading.c (freading): Trivial simplification.
13101
13102 2007-04-28  Bruno Haible  <bruno@clisp.org>
13103
13104         * tests/test-fwriting.c (main): Also test the interaction between
13105         fflush and fwriting.
13106         * modules/fwriting-tests (Depends-on): Add fflush.
13107
13108         * tests/test-freading.c (main): Also test the interaction between
13109         fflush and freading.
13110         * modules/freading-tests (Depends-on): Add fflush.
13111
13112 2007-04-28  Bruno Haible  <bruno@clisp.org>
13113
13114         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
13115         fseeko and ftello.
13116         Suggested by Eric Blake.
13117
13118 2007-04-28  Jim Meyering  <jim@meyering.net>
13119
13120         Avoid false-negative in gl_STDINT_H's C99 conformance test.
13121         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
13122         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
13123
13124 2007-04-27  Eric Blake  <ebb9@byu.net>
13125
13126         * doc/headers/assert.texi (assert.h): Document assert module use.
13127
13128 2007-04-27  Bruno Haible  <bruno@clisp.org>
13129
13130         * doc/headers/*.texi: New files.
13131         * doc/gnulib.texi (Header File Substitutes): New chapter.
13132         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
13133         dependencies.
13134         (standards.info ,standards.html, standards.dvi): Update dependencies.
13135         (mostlyclean, clean): New targets.
13136
13137 2007-04-27  Bruno Haible  <bruno@clisp.org>
13138
13139         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
13140         * modules/sysexits (Files, Makefile.am): Update.
13141
13142         * lib/sys_socket_.h: Renamed from lib/socket_.h.
13143         * modules/sys_socket (Files, Makefile.am): Update.
13144
13145         * lib/sys_stat_.h: Renamed from lib/stat_.h.
13146         * modules/sys_stat (Files, Makefile.am): Update.
13147
13148 2007-04-27  Eric Blake  <ebb9@byu.net>
13149
13150         * lib/freading.h: Improve comments.
13151         * lib/fwriting.h: Likewise.
13152         * lib/fflush.c: Likewise.
13153
13154         Fix closein for mingw.
13155         * modules/closein-tests: Add tests for closein.
13156         * tests/test-closein.c: New file.
13157         * tests/test-closein.sh: Likewise.
13158         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
13159         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
13160
13161 2007-04-27  Bruno Haible  <bruno@clisp.org>
13162
13163         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
13164         version is < 6.
13165         * lib/math_.h [__DECC]: Likewise.
13166         * lib/stdio_.h [__DECC]: Likewise.
13167         * lib/stdlib_.h [__DECC]: Likewise.
13168         * lib/string_.h [__DECC]: Likewise.
13169         * lib/time_.h [__DECC]: Likewise.
13170         * lib/wchar_.h [__DECC]: Likewise.
13171         * lib/wctype_.h [__DECC]: Likewise.
13172
13173 2007-04-27  Bruno Haible  <bruno@clisp.org>
13174
13175         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
13176
13177 2007-04-27  Bruno Haible  <bruno@clisp.org>
13178
13179         * lib/fflush.c: Add comments.
13180         * modules/fpurge-tests (Depends-on): Add fflush.
13181         * modules/freadable-tests (Depends-on): Likewise.
13182         * modules/fwritable-tests (Depends-on): Likewise.
13183
13184 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
13185
13186         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
13187         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
13188         Report by Bruno Haible <bruno@clisp.org>.
13189
13190 2007-04-26  Eric Blake  <ebb9@byu.net>
13191
13192         Fix fflush on mingw.
13193         * modules/fflush (Depends-on): Add freading.
13194         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
13195         but unread data.
13196
13197 2007-04-26  Eric Blake  <ebb9@byu.net>
13198         and Bruno Haible  <bruno@clisp.org>
13199
13200         Implement freading and fwriting.
13201         * lib/freading.c: New file.
13202         * lib/freading.h: Likewise.
13203         * m4/freading.m4: Likewise.
13204         * modules/freading: Likewise.
13205         * modules/freading-tests: Likewise.
13206         * tests/test-freading.c: Likewise.
13207         * lib/fwriting.c: New file.
13208         * lib/fwriting.h: Likewise.
13209         * m4/fwriting.m4: Likewise.
13210         * modules/fwriting: Likewise.
13211         * modules/fwriting-tests: Likewise.
13212         * tests/test-fwriting.c: Likewise.
13213         * MODULES.html.sh (File stream based Input/Output): Mention them.
13214
13215 2007-04-26  Bruno Haible  <bruno@clisp.org>
13216
13217         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
13218         'long' when we assume it.
13219         Suggested by Eric Blake.
13220
13221 2007-04-26  Bruno Haible  <bruno@clisp.org>
13222
13223         Ensure fseeko, ftello are declared on glibc systems.
13224         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
13225         * modules/fseeko (configure.ac-early): Likewise.
13226         * modules/ftello (configure.ac-early): Likewise.
13227         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
13228         AC_FUNC_FSEEKO for this.
13229         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
13230         (gl_CHECK_FSEEKO): Remove macro.
13231
13232 2007-04-26  Bruno Haible  <bruno@clisp.org>
13233
13234         * tests/test-fflush.c (main): Also check the ftell result after
13235         fflush and fseek/fseeko.
13236         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
13237         file descriptor position cache in the stream.
13238         * lib/fseeko.c (rpl_fseeko): Likewise.
13239
13240 2007-04-26  Bruno Haible  <bruno@clisp.org>
13241
13242         * modules/fflush-tests (Depends-on): Add fseeko.
13243
13244 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
13245             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13246
13247         * lib/argz_.h: ensure error_t definition is obtained in same
13248         mechanism system argz.h would have.
13249         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
13250         argz facilities are known bad.  Err on the side of caution if
13251         cross-compiling.
13252
13253 2007-04-25  Eric Blake  <ebb9@byu.net>
13254
13255         * lib/fpurge.c (includes): Use stdlib.h for free.
13256         * tests/test-fflush.c (main): Also test fflush-fseeko.
13257
13258 2007-04-25  Bruno Haible  <bruno@clisp.org>
13259
13260         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
13261         * lib/fseeko.c: New file.
13262         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
13263         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
13264         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
13265         gl_FUNC_FSEEKO.
13266         (gl_FUNC_FSEEKO): Invoke it.
13267         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
13268         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
13269         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
13270
13271 2007-04-25  Bruno Haible  <bruno@clisp.org>
13272
13273         * modules/fflush (Depends-on): Add ftello.
13274
13275 2007-04-25  Bruno Haible  <bruno@clisp.org>
13276
13277         * modules/ftello-tests: New file.
13278         * tests/test-ftello.c: New file.
13279
13280         * modules/ftello: New file.
13281         * m4/ftello.m4: New file.
13282         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
13283         HAVE_FTELLO.
13284         * lib/stdio_.h (ftello): New declaration.
13285         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
13286         HAVE_FTELLO.
13287
13288 2007-04-25  Bruno Haible  <bruno@clisp.org>
13289
13290         * modules/fseeko-tests: New file.
13291         * tests/test-fseeko.c: New file.
13292
13293         * modules/fseeko: New file.
13294         * m4/fseeko.m4: New file.
13295         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
13296         HAVE_FSEEKO.
13297         * lib/stdio_.h (fseeko): New declaration.
13298         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
13299         HAVE_FSEEKO.
13300
13301 2007-04-25  Bruno Haible  <bruno@clisp.org>
13302
13303         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
13304
13305 2007-04-25  Bruno Haible  <bruno@clisp.org>
13306
13307         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
13308         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
13309         * tests/test-unistd.c: Likewise.
13310         * tests/test-fcntl.c: Likewise.
13311
13312 2007-04-23  Eric Blake  <ebb9@byu.net>
13313
13314         * lib/fflush.c: Fix missing include.
13315         Reported by Bruno Haible.
13316
13317 2007-04-23  Bruno Haible  <bruno@clisp.org>
13318
13319         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
13320         Reported by Eric Blake.
13321
13322 2007-04-23  Bruno Haible  <bruno@clisp.org>
13323
13324         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
13325
13326 2007-04-23  Bruno Haible  <bruno@clisp.org>
13327
13328         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
13329
13330 2007-04-23  Bruno Haible  <bruno@clisp.org>
13331
13332         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
13333         Needed on HP-UX 11.
13334
13335 2007-04-16  Eric Blake  <ebb9@byu.net>
13336
13337         Make fflush rely on fpurge.
13338         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
13339         open coding all variants.
13340         * modules/fflush (Depends-on): Add fpurge and unistd.
13341         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
13342         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
13343
13344         Fix --with-tests compilation on cygwin.
13345         * modules/argmatch-tests (Makefile.am): List gnulib library first
13346         in LDADD.
13347         * modules/argp-tests (Makefile.am): Likewise.
13348         * modules/array-list-tests (Makefile.am): Likewise.
13349         * modules/array-oset-tests (Makefile.am): Likewise.
13350         * modules/avltree-list-tests (Makefile.am): Likewise.
13351         * modules/avltree-oset-tests (Makefile.am): Likewise.
13352         * modules/avltreehash-list-tests (Makefile.am): Likewise.
13353         * modules/carray-list-tests (Makefile.am): Likewise.
13354         * modules/dirname-tests (Makefile.am): Likewise.
13355         * modules/frexp-tests (Makefile.am): Likewise.
13356         * modules/isnanl-tests (Makefile.am): Likewise.
13357         * modules/linked-list-tests (Makefile.am): Likewise.
13358         * modules/linkedhash-list-tests (Makefile.am): Likewise.
13359         * modules/lock-tests (Makefile.am): Likewise.
13360         * modules/rbtree-list-tests (Makefile.am): Likewise.
13361         * modules/rbtree-oset-tests (Makefile.am): Likewise.
13362         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
13363         * modules/tls-tests (Makefile.am): Likewise.
13364         * modules/tsearch-tests (Makefile.am): Likewise.
13365         * modules/xvasprintf-tests (Makefile.am): Likewise.
13366
13367         Fix fpurge for cygwin.
13368         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
13369         value.
13370         * modules/fpurge-tests (Depends-on): Clean up trash.
13371
13372 2007-04-16  Simon Josefsson  <simon@josefsson.org>
13373
13374         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
13375
13376         * m4/autobuild.m4: Re-indent.
13377
13378 2007-04-13  Bruno Haible  <bruno@clisp.org>
13379
13380         * modules/fpurge-tests: New file.
13381         * tests/test-fpurge.c: New file.
13382
13383         * modules/fpurge: New file.
13384         * lib/fpurge.h: New file.
13385         * lib/fpurge.c: New file.
13386         * m4/fpurge.m4: New file.
13387
13388 2007-04-13  Bruno Haible  <bruno@clisp.org>
13389
13390         * modules/fbufmode-tests: New file.
13391         * tests/test-fbufmode.c: New file.
13392
13393         * modules/fbufmode: New file.
13394         * lib/fbufmode.h: New file.
13395         * lib/fbufmode.c: New file.
13396         * m4/fbufmode.m4: New file.
13397
13398 2007-04-13  Bruno Haible  <bruno@clisp.org>
13399
13400         * modules/fwritable-tests: New file.
13401         * tests/test-fwritable.c: New file.
13402
13403         * modules/fwritable: New file.
13404         * lib/fwritable.h: New file.
13405         * lib/fwritable.c: New file.
13406         * m4/fwritable.m4: New file.
13407
13408 2007-04-13  Bruno Haible  <bruno@clisp.org>
13409
13410         * modules/freadable-tests: New file.
13411         * tests/test-freadable.c: New file.
13412
13413         * modules/freadable: New file.
13414         * lib/freadable.h: New file.
13415         * lib/freadable.c: New file.
13416         * m4/freadable.m4: New file.
13417
13418 2007-04-13  Bruno Haible  <bruno@clisp.org>
13419
13420         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
13421         MOSTLYCLEANFILES.
13422
13423 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13424
13425         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
13426         gzip bootstrap.conf to avoid dragging in i18n machinery.
13427         (gnulib_tool_option): Use it.
13428
13429 2007-04-13  Bruno Haible  <bruno@clisp.org>
13430
13431         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
13432         %F directives.
13433         * tests/test-vasprintf-posix.c (test_function): Likewise.
13434         * tests/test-snprintf-posix.h (test_function): Likewise.
13435         * tests/test-sprintf-posix.h (test_function): Likewise.
13436         * tests/test-fprintf-posix.h (test_function): Likewise.
13437         * tests/test-printf-posix.h (test_function): Likewise.
13438         * tests/test-fprintf-posix.out: Likewise.
13439
13440 2007-04-13  Bruno Haible  <bruno@clisp.org>
13441
13442         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
13443         * modules/tls-tests (configure.ac): Likewise.
13444         Reported by Arto C. Nirkko <anirkko@insel.ch>.
13445
13446 2007-04-13  Bruno Haible  <bruno@clisp.org>
13447
13448         * lib/tls.c (glthread_tls_get): Fix return type.
13449         Patch by Arto C. Nirkko <anirkko@insel.ch>.
13450
13451 2007-04-12  Eric Blake  <ebb9@byu.net>
13452
13453         * modules/gettime (Depends-on): Remove gettime.
13454         Reported by Dmitry V. Levin.
13455
13456 2007-04-12  Bruno Haible  <bruno@clisp.org>
13457
13458         * modules/fflush (Include): Mention <stdio.h>.
13459         * modules/strtoimax (Include): Mention <inttypes.h>.
13460         * modules/strtoumax (Include): Likewise.
13461
13462 2007-04-12  Eric Blake  <ebb9@byu.net>
13463
13464         * .cvsignore: New file.
13465         * .gitignore: Likewise.
13466
13467 2007-04-12  Bruno Haible  <bruno@clisp.org>
13468
13469         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
13470         not before, since $(LDADD) often contains libgnu.a.
13471         * modules/striconv-tests (test_striconv_LDADD): Likewise.
13472         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
13473         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
13474         Needed on Cygwin.
13475
13476 2007-04-12  Eric Blake  <ebb9@byu.net>
13477
13478         Work around glibc's failure to flush stdin on fclose.
13479         * lib/closein.c (close_stdin): Flush stdin before closing.
13480
13481         Work around glibc's failure to reset seekable stdin on exit.
13482         * modules/closein: New module.
13483         * lib/closein.c: New file.
13484         * lib/closein.h: Likewise.
13485         * m4/closein.m4: Likewise.
13486         * MODULES.html.sh (File stream based Input/Output): Document it.
13487
13488 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13489
13490         * gnulib-tool: Rename generated 'autobuild' script to
13491         'do-autobuild' in --create-megatestdir output.
13492
13493         * doc/gnulib.texi (Build robot for gnulib): Fix.
13494
13495 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13496
13497         * modules/sysexits (Depends-on): Add absolute-header.
13498
13499 2007-04-12  Eric Blake  <ebb9@byu.net>
13500
13501         No need to preserve errno on success.
13502         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
13503         Reported by Bruno Haible.
13504
13505 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13506
13507         * MODULES.html.sh (Support for maintaining and releasing
13508         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
13509
13510 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13511
13512         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
13513
13514 2007-04-12  Simon Josefsson  <simon@josefsson.org>
13515
13516         * modules/autobuild: New module.
13517
13518         * m4/autobuild.m4: New file.
13519
13520 2007-04-11  Bruno Haible  <bruno@clisp.org>
13521
13522         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
13523         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
13524         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
13525         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
13526         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13527         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13528         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13529         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
13530         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13531         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13532         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
13533         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13534         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13535         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
13536         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13537         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13538         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
13539         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13540         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13541         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
13542         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13543         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13544         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
13545         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13546         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13547         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
13548         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
13549         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
13550         Reported by Eric Blake.
13551
13552 2007-04-11  Bruno Haible  <bruno@clisp.org>
13553
13554         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
13555
13556 2007-04-10  Bruno Haible  <bruno@clisp.org>
13557
13558         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
13559         for NaN and Infinity. Needed on FreeBSD 6.1.
13560         * tests/test-vasnprintf-posix.c (test_function): Undo last change
13561         regarding results for "%010a" of Infinity and NaN.
13562         * tests/test-vasprintf-posix.c (test_function): Likewise.
13563         * tests/test-snprintf-posix.h (test_function): Likewise.
13564         * tests/test-sprintf-posix.h (test_function): Likewise.
13565         * tests/test-fprintf-posix.h (test_function): Likewise.
13566         * tests/test-printf-posix.h (test_function): Likewise.
13567         * tests/test-fprintf-posix.out: Likewise.
13568
13569 2007-04-10  Bruno Haible  <bruno@clisp.org>
13570
13571         * modules/locale-tests: New file.
13572         * tests/test-locale.c: New file.
13573
13574         * modules/locale: New file.
13575         * lib/locale_.h: New file.
13576         * m4/locale_h.m4: New file.
13577
13578 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
13579             Bruno Haible  <bruno@clisp.org>
13580
13581         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
13582         be determined, test for availability of the copysignf, copysign,
13583         copysignl functions.
13584         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
13585         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
13586         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
13587
13588 2007-04-09  Eric Blake  <ebb9@byu.net>
13589
13590         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
13591         * modules/stdio (Makefile.am): Support fflush.
13592         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
13593         * modules/fflush: New file.
13594         * lib/fflush.c: Likewise.
13595         * m4/fflush.m4: Likewise.
13596         * modules/fflush-tests: New test.
13597         * tests/test-fflush.c: Likewise.
13598         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
13599
13600 2007-04-06  Bruno Haible  <bruno@clisp.org>
13601
13602         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
13603         (VASNPRINTF): Use signbit for faster determination whether to print a
13604         minus sign.
13605         * modules/vasnprintf (Files): Remove lib/float+.h.
13606         * modules/fprintf-posix (Depends-on): Add signbit.
13607         * modules/snprintf-posix (Depends-on): Likewise.
13608         * modules/sprintf-posix (Depends-on): Likewise.
13609         * modules/vasnprintf-posix (Depends-on): Likewise.
13610         * modules/vasprintf-posix (Depends-on): Likewise.
13611         * modules/vfprintf-posix (Depends-on): Likewise.
13612         * modules/vsnprintf-posix (Depends-on): Likewise.
13613         * modules/vsprintf-posix (Depends-on): Likewise.
13614
13615 2007-04-06  Bruno Haible  <bruno@clisp.org>
13616
13617         * tests/test-frexp.c (main): Test also the sign bit of zero results.
13618         * tests/test-frexpl.c (main): Likewise.
13619         * tests/test-ldexpl.c (main): Likewise.
13620         * modules/frexp-tests (Depends-on): Add signbit.
13621         * modules/frexpl-tests (Depdends-on): Likewise.
13622         * modules/ldexpl-tests (Depdends-on): Likewise.
13623
13624 2007-04-06  Bruno Haible  <bruno@clisp.org>
13625
13626         * modules/signbit-tests: New file.
13627         * tests/test-signbit.c: New file.
13628
13629         * modules/signbit: New file.
13630         * lib/signbitf.c: New file.
13631         * lib/signbitd.c: New file.
13632         * lib/signbitl.c: New file.
13633         * m4/signbit.m4: New file.
13634         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
13635         (signbit): New macro.
13636         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
13637         REPLACE_SIGNBIT.
13638         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
13639         REPLACE_FREXPL into math.h.
13640
13641 2007-04-06  Bruno Haible  <bruno@clisp.org>
13642
13643         * modules/isnanf-nolibm-tests: New file.
13644         * tests/test-isnanf.c: New file.
13645
13646         * modules/isnanf-nolibm: New file.
13647         * lib/isnanf.h: New file.
13648         * lib/isnanf.c: New file.
13649         * lib/isnan.c: Consider the USE_FLOAT macro.
13650         * m4/isnanf.m4: New file.
13651
13652 2007-04-06  Bruno Haible  <bruno@clisp.org>
13653
13654         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
13655         (Link): New section.
13656
13657         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
13658
13659 2007-04-06  Bruno Haible  <bruno@clisp.org>
13660
13661         Assume the 'long double' type.
13662         * m4/longdouble.m4: Remove file.
13663         * config/srclist.txt: Don't mention longdouble.m4.
13664         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
13665         * lib/float+.h: Likewise.
13666         * lib/frexp.c: Likewise.
13667         * lib/printf-args.h: Likewise.
13668         * lib/printf-args.c: Likewise.
13669         * lib/printf-frexp.c: Likewise.
13670         * lib/printf-parse.c: Likewise.
13671         * lib/vasnprintf.c: Likewise.
13672         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
13673         * m4/intl.m4: Likewise.
13674         * m4/isnanl.m4: Likewise.
13675         * m4/printf.m4: Likewise.
13676         * m4/printf-frexpl.m4: Likewise.
13677         * m4/vasnprintf.m4: Likewise.
13678         * modules/allocsa (Files): Remove m4/longdouble.m4.
13679         * modules/gettext (Files): Likewise.
13680         * modules/relocatable-prog-wrapper (Files): Likewise.
13681         * modules/vasnprintf (Files): Likewise.
13682         * modules/isnanl (Files): Likewise.
13683         (Include): Simplify.
13684         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
13685         (Include): Simplify.
13686         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
13687         (Include): Simplify.
13688         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
13689         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13690         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
13691         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13692         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13693         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13694         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
13695         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13696         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
13697         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13698         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
13699         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
13700         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
13701         * tests/test-isnanl.c: Likewise.
13702         * tests/test-snprintf-posix.h: Likewise.
13703         * tests/test-sprintf-posix.h: Likewise.
13704         * tests/test-vasnprintf-posix.c: Likewise.
13705         * tests/test-vasnprintf-posix2.c: Likewise.
13706         * tests/test-vasprintf-posix.c: Likewise.
13707
13708 2007-04-06  Bruno Haible  <bruno@clisp.org>
13709
13710         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
13711         * lib/math_.h [__DECC]: Include the overridden include file through
13712         #include_next, outside the double-inclusion guard.
13713         * lib/stdio_.h [__DECC]: Likewise.
13714         * lib/stdlib_.h [__DECC]: Likewise.
13715         * lib/string_.h [__DECC]: Likewise.
13716         * lib/time_.h [__DECC]: Likewise.
13717         * lib/wchar_.h [__DECC]: Likewise.
13718         * lib/wctype_.h [__DECC]: Likewise.
13719         * lib/inttypes_.h [__DECC]: Likewise.
13720         Reported by Albert Chin <china@thewrittenword.com> in
13721         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
13722
13723 2007-04-04  Eric Blake  <ebb9@byu.net>
13724
13725         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
13726         1.5.x.
13727
13728 2007-04-04  Bruno Haible  <bruno@clisp.org>
13729
13730         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
13731         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
13732
13733 2007-04-04  Bruno Haible  <bruno@clisp.org>
13734
13735         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
13736         results for "%010a" of Infinity and NaN.
13737         * tests/test-vasprintf-posix.c (test_function): Likewise.
13738         * tests/test-snprintf-posix.h (test_function): Likewise.
13739         * tests/test-sprintf-posix.h (test_function): Likewise.
13740         * tests/test-fprintf-posix.h (test_function): Remove these tests.
13741         * tests/test-printf-posix.h (test_function): Likewise.
13742         * tests/test-fprintf-posix.out: Update.
13743         Needed for FreeBSD 6.1.
13744
13745 2007-04-04  Bruno Haible  <bruno@clisp.org>
13746
13747         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
13748         directly used by the gnulib modules nor by gnulib-tool.
13749
13750 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
13751
13752         * DEPENDENCIES: Give overall description of version dependency
13753         desirability.  Use more-typical names for apps.
13754         Add shell, coreutils, diffutils, grep, tar, gzip.
13755
13756 2007-04-04  Simon Josefsson  <simon@josefsson.org>
13757
13758         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
13759
13760 2007-04-04  Karl Berry  <karl@gnu.org>
13761
13762         * MODULES.html.sh (func_module): missing '.
13763
13764 2007-04-03  Bruno Haible  <bruno@clisp.org>
13765
13766         * modules/argmatch-tests (Makefile.am): New variable
13767         test_argmatch_LDADD.
13768         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
13769         * modules/array-list-tests (Makefile.am): New variable
13770         test_array_list_LDADD.
13771         * modules/array-oset-tests (Makefile.am): New variable
13772         test_array_oset_LDADD.
13773         * modules/avltree-list-tests (Makefile.am): New variable
13774         test_avltree_list_LDADD.
13775         * modules/avltree-oset-tests (Makefile.am): New variable
13776         test_avltree_oset_LDADD.
13777         * modules/avltreehash-list-tests (Makefile.am): New variable
13778         test_avltreehash_list_LDADD.
13779         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
13780         test_canonicalize_lgpl_LDADD.
13781         * modules/carray-list-tests (Makefile.am): New variable
13782         test_carray_list_LDADD.
13783         * modules/dirname-tests (Makefile.am): New variable
13784         test_dirname_LDADD.
13785         * modules/linked-list-tests (Makefile.am): New variable
13786         test_linked_list_LDADD.
13787         * modules/linkedhash-list-tests (Makefile.am): New variable
13788         test_linkedhash_list_LDADD.
13789         * modules/rbtree-list-tests (Makefile.am): New variable
13790         test_rbtree_list_LDADD.
13791         * modules/rbtree-oset-tests (Makefile.am): New variable
13792         test_rbtree_oset_LDADD.
13793         * modules/rbtreehash-list-tests (Makefile.am): New variable
13794         test_rbtreehash_list_LDADD.
13795         * modules/xvasprintf-tests (Makefile.am): New variable
13796         test_xvasprintf_LDADD.
13797         Reported by Eric Blake.
13798
13799 2007-04-03  Eric Blake  <ebb9@byu.net>
13800
13801         * DEPENDENCIES: Weaken m4 requirements.
13802
13803 2007-04-03  Bruno Haible  <bruno@clisp.org>
13804
13805         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
13806         * modules/isnanl-tests (configure.ac): Likewise.
13807
13808 2007-04-03  Ben Pfaff  <blp@gnu.org>
13809
13810         * modules/iconv_open: Add $(srcdir)/ to source directory
13811         references in Makefile fragments that call gperf, to fix VPATH
13812         builds.
13813
13814 2007-04-03  Bruno Haible  <bruno@clisp.org>
13815
13816         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
13817         * lib/ldexpl.c: Undo last change.
13818
13819 2007-04-03  Bruno Haible  <bruno@clisp.org>
13820
13821         * modules/printf-frexpl (Depends-on): Undo last change.
13822         (Files): Add m4/ldexpl.m4.
13823
13824 2007-04-03  Bruno Haible  <bruno@clisp.org>
13825
13826         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
13827         * modules/isnanl (Link): New section.
13828
13829         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
13830         * modules/frexp (Link): New section.
13831
13832         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
13833         * modules/frexpl (Link): New section.
13834
13835         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
13836         * modules/ldexpl (Link): New section.
13837
13838 2007-04-03  Bruno Haible  <bruno@clisp.org>
13839
13840         * modules/TEMPLATE-EXTENDED: New file.
13841         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
13842
13843 2007-04-03  Bruno Haible  <bruno@clisp.org>
13844
13845         * DEPENDENCIES: New file.
13846         Suggested by Simon Josefsson.
13847
13848 2007-04-03  Bruno Haible  <bruno@clisp.org>
13849
13850         * doc/gnulib.texi: Escape @.
13851
13852 2007-04-03  James Youngman  <jay@gnu.org>
13853         and Paul Eggert  <eggert@cs.ucla.edu>
13854
13855         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
13856         birthtime on all systems that have birthtime, not just those which
13857         use st_birthtimensec rather than st_birthtim.  Putting zero in
13858         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
13859         that the birth time is not available for files on an NFS mount.
13860
13861 2007-04-03  Simon Josefsson  <simon@josefsson.org>
13862
13863         * modules/memxor: Move back from crypto/, suggested by Bruno.
13864         * modules/crypto/hmac-sha1: Fix memxor dependency.
13865
13866         * modules/crypto/gc: Moved from ../.
13867
13868 2007-04-02  Eric Blake  <ebb9@byu.net>
13869
13870         * lib/ldexpl.c (includes): Avoid libm.
13871
13872         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
13873
13874 2007-04-02  Bruno Haible  <bruno@clisp.org>
13875
13876         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
13877         on IRIX.
13878
13879 2007-04-02  Bruno Haible  <bruno@clisp.org>
13880
13881         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
13882         x86 or x86_64 platforms running MacOS X.
13883         Reported by Ryan Schmidt <@ryandesign.com>.
13884
13885 2007-04-02  Bruno Haible  <bruno@clisp.org>
13886
13887         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
13888         i386.
13889
13890 2007-04-01  Simon Josefsson  <simon@josefsson.org>
13891
13892         * modules/crypto/arcfour: Moved from ../.
13893         * modules/crypto/arcfour-tests: Moved from ../.
13894         * modules/crypto/arctwo: Moved from ../.
13895         * modules/crypto/arctwo-tests: Moved from ../.
13896         * modules/crypto/des: Moved from ../.
13897         * modules/crypto/des-tests: Moved from ../.
13898         * modules/crypto/gc-arcfour: Moved from ../.
13899         * modules/crypto/gc-arcfour-tests: Moved from ../.
13900         * modules/crypto/gc-arctwo: Moved from ../.
13901         * modules/crypto/gc-arctwo-tests: Moved from ../.
13902         * modules/crypto/gc-des: Moved from ../.
13903         * modules/crypto/gc-des-tests: Moved from ../.
13904         * modules/crypto/gc-hmac-md5: Moved from ../.
13905         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
13906         * modules/crypto/gc-hmac-sha1: Moved from ../.
13907         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
13908         * modules/crypto/gc-md2: Moved from ../.
13909         * modules/crypto/gc-md2-tests: Moved from ../.
13910         * modules/crypto/gc-md4: Moved from ../.
13911         * modules/crypto/gc-md4-tests: Moved from ../.
13912         * modules/crypto/gc-md5: Moved from ../.
13913         * modules/crypto/gc-md5-tests: Moved from ../.
13914         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
13915         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
13916         * modules/crypto/gc-random: Moved from ../.
13917         * modules/crypto/gc-rijndael: Moved from ../.
13918         * modules/crypto/gc-rijndael-tests: Moved from ../.
13919         * modules/crypto/gc-sha1: Moved from ../.
13920         * modules/crypto/gc-sha1-tests: Moved from ../.
13921         * modules/crypto/gc-tests: Moved from ../.
13922         * modules/crypto/hmac-md5: Moved from ../.
13923         * modules/crypto/hmac-md5-tests: Moved from ../.
13924         * modules/crypto/hmac-sha1: Moved from ../.
13925         * modules/crypto/hmac-sha1-tests: Moved from ../.
13926         * modules/crypto/md2: Moved from ../.
13927         * modules/crypto/md2-tests: Moved from ../.
13928         * modules/crypto/md4: Moved from ../.
13929         * modules/crypto/md4-tests: Moved from ../.
13930         * modules/crypto/md5: Moved from ../.
13931         * modules/crypto/md5-tests: Moved from ../.
13932         * modules/crypto/memxor: Moved from ../.
13933         * modules/crypto/rijndael: Moved from ../.
13934         * modules/crypto/rijndael-tests: Moved from ../.
13935         * modules/crypto/sha1: Moved from ../.
13936
13937 2007-03-30  James Youngman  <jay@gnu.org>
13938
13939         * tests/test-stat-time.c (prepare_test): use chmod() rather than
13940         rename() to change the ctime of a file (because ctime is unaffected
13941         by rename on jfs2 on AIX 5.1).
13942         (main): Start by doing cleanup, in case a previous run failed leaving
13943         test files behind.
13944
13945 2007-03-31  Bruno Haible  <bruno@clisp.org>
13946
13947         Support old proprietary implementations of iconv.
13948         * modules/iconv_open: New file.
13949         * lib/iconv_.h: New file.
13950         * m4/iconv_h.m4: New file.
13951         * lib/iconv_open.c: New file.
13952         * lib/iconv_open-aix.gperf: New file.
13953         * lib/iconv_open-hpux.gperf: New file.
13954         * lib/iconv_open-irix.gperf: New file.
13955         * lib/iconv_open-osf.gperf: New file.
13956         * m4/iconv_open.m4: New file.
13957         * modules/linebreak (Depends-on): Add iconv_open.
13958         * modules/striconv (Depends-on): Likewise.
13959         * modules/striconveh (Depends-on): Likewise.
13960         * modules/unicodeio (Depends-on): Likewise.
13961         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
13962         (iconv_t)(-1).
13963         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
13964         conversion if cd is (iconv_t)(-1).
13965         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
13966         is not possible.
13967
13968 2007-03-31  Bruno Haible  <bruno@clisp.org>
13969
13970         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
13971         work on Solaris either. Protect also second use of "autodetect_jp".
13972
13973 2007-03-31  Bruno Haible  <bruno@clisp.org>
13974
13975         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
13976         the function is not present.
13977
13978 2007-03-31  Bruno Haible  <bruno@clisp.org>
13979
13980         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
13981         the function is not present.
13982
13983 2007-03-31  Bruno Haible  <bruno@clisp.org>
13984
13985         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
13986         a bug in HP-UX iconv_open().
13987
13988 2007-03-31  Bruno Haible  <bruno@clisp.org>
13989
13990         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
13991         (Mathematics <math.h>): New section, add fpieee.
13992         (Input/output <stdio.h>): Add fseterr.
13993         (Mathematics <math.h>): New section, add printf-frexp.
13994         (Container data structures): Add sublist.
13995         (Core language properties): Add fpucw, inline.
13996         (Functions for greatest-width integer types <inttypes.h>): Add
13997         imaxabs, imaxdiv, inttypes.
13998         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
13999         isnanl-nolibm, ldexp.
14000         (Mathematics <math.h>): New section, add printf-frexpl.
14001         (Support for systems lacking POSIX:2001): Add fprintf-posix,
14002         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
14003         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
14004         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
14005         (Unicode string functions): Add unistr/u*-mbtoucr.
14006         (Java): Add javacomp-script, javaexec-script.
14007         (C#): Add csharpcomp-script, csharpexec-script.
14008         (Support for building libraries and executables): Add havelib,
14009         relocatable-*.
14010         (Support for maintaining and releasing projects): Renamed from
14011         'Support for maintaining and release projects'. Add announce-gen.
14012
14013 2007-03-31  Bruno Haible  <bruno@clisp.org>
14014
14015         * README: Talk primarily about git.
14016         (git and CVS): Renamed from CVS.
14017         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
14018         gnulib is available through git.
14019         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
14020
14021 2007-03-30  Bruno Haible  <bruno@clisp.org>
14022
14023         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
14024         * lib/poll_.h: Likewise.
14025         * lib/stat_.h: Likewise.
14026         * lib/sys_time_.h: Likewise.
14027         * lib/sysexit_.h: Likewise.
14028         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
14029         * lib/stdbool_.h: Likewise.
14030         * lib/byteswap_.h: Add double-inclusion guard.
14031
14032 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
14033
14034         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
14035
14036 2007-03-30  Karl Berry  <karl@gnu.org>
14037
14038         * config/srclist-update: double space after USA in the license
14039         substitution, since that's how it's usually (?) written.
14040
14041 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
14042
14043         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
14044         reported by Bruno Haible.
14045
14046 2007-03-29  Bruno Haible  <bruno@clisp.org>
14047
14048         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
14049         a bug in AIX iconv().
14050
14051 2007-03-29  Bruno Haible  <bruno@clisp.org>
14052
14053         * modules/ldexpl-tests: New file.
14054         * tests/test-ldexpl.c: New file.
14055
14056 2007-03-29  Bruno Haible  <bruno@clisp.org>
14057
14058         * lib/ldexpl.c: Include fpucw.h.
14059         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
14060         multiplication.
14061         * modules/ldexpl (Depends-on): Add fpucw.
14062
14063 2007-03-29  Bruno Haible  <bruno@clisp.org>
14064
14065         * modules/ldexpl: New file.
14066         * m4/ldexpl.m4: New file.
14067         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
14068         set.
14069         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
14070         REPLACE_LDEXPL.
14071         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
14072         REPLACE_LDEXPL.
14073         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
14074         gl_FUNC_LDEXPL_WORKS.
14075         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
14076         * modules/mathl (Files): Remove lib/ldexpl.c.
14077         (Depends-on): Add ldexpl.
14078
14079 2007-03-29  Bruno Haible  <bruno@clisp.org>
14080
14081         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
14082
14083 2007-03-29  Bruno Haible  <bruno@clisp.org>
14084
14085         * tests/test-striconveh.c (main): Don't assume that a direct conversion
14086         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
14087         and possibly also HP-UX.
14088         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
14089         work on AIX, IRIX, HP-UX, OSF/1.
14090         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
14091         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
14092         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
14093         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
14094         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
14095         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
14096
14097 2007-03-29  Bruno Haible  <bruno@clisp.org>
14098
14099         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
14100
14101 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14102
14103         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
14104         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
14105
14106 2007-03-29  Eric Blake  <ebb9@byu.net>
14107
14108         * lib/acl-internal.h: Remove redundant include.
14109         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
14110         Cygwin when a file is locked.
14111
14112 2007-03-29  Bruno Haible  <bruno@clisp.org>
14113
14114         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
14115         file.
14116         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
14117
14118 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14119
14120         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
14121         try to remove a parent directory if the child couldn't be removed
14122         (except for the first rmdir, which could fail because the child
14123         doesn't exist).  Problem reported by Jeff Blaine in
14124         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
14125
14126 2007-03-28  Bruno Haible  <bruno@clisp.org>
14127
14128         * lib/striconveh.c (utf8conv_carefully): New function.
14129         (mem_cd_iconveh_internal): Invoke it.
14130
14131 2007-03-28  Bruno Haible  <bruno@clisp.org>
14132
14133         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
14134         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
14135         input.
14136         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
14137         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
14138         unistr/u8-uctomb.
14139
14140 2007-03-28  Bruno Haible  <bruno@clisp.org>
14141
14142         * modules/unistr/u8-mbtoucr: New file.
14143         * lib/unistr/u8-mbtoucr.c: New file.
14144         * modules/unistr/u16-mbtoucr: New file.
14145         * lib/unistr/u16-mbtoucr.c: New file.
14146         * modules/unistr/u16-mbtoucr: New file.
14147         * lib/unistr/u16-mbtoucr.c: New file.
14148         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
14149
14150 2007-03-27  Simon Josefsson  <simon@josefsson.org>
14151             Bruno Haible  <bruno@clisp.org>
14152
14153         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
14154         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
14155         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
14156
14157         * m4/stdio_h.m4: Add stubs for vasprintf too.
14158
14159         * modules/stdio: Support vasprintf in sed command.
14160
14161         * modules/vasprintf: Depend on stdio for prototypes.  Remove
14162         vasprintf.h.  Add stdio module indicator.
14163
14164         * lib/stdio_.h: Declare asprintf and vasprintf, based on
14165         vasprintf.h.
14166
14167         * lib/vasprintf.h: File removed.
14168
14169         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
14170         * lib/vasprintf.c: Ditto.
14171         * lib/xvasprintf.c: Ditto.
14172         * tests/test-vasprintf-posix.c: Ditto.
14173         * tests/test-vasprintf.c: Ditto.
14174
14175 2007-03-27  Bruno Haible  <bruno@clisp.org>
14176
14177         Make vasnprintf multithread-safe.
14178         * lib/vasnprintf.c (decimal_point_char): New function.
14179         (VASNPRINTF): Use it.
14180         Suggested by Simon Josefsson.
14181
14182 2007-03-27  Eric Blake  <ebb9@byu.net>
14183
14184         Support sub-second birthtime on cygwin.
14185         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
14186         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
14187         (get_stat_birthtime): Also work with st_birthtim.
14188
14189 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
14190
14191         * lib/stat-time.h (USE_BIRTHTIME): Remove.
14192         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
14193         (get_stat_birthtime_ns): Do not try to use "spare" fields.
14194         (get_stat_birthtime_ns): Simplify compile-time tests.
14195         (get_stat_birthtime): Change the API to look like
14196         get_stat_mtime etc., except return a negative tv_nsec on error.
14197         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
14198         Don't check for "spare" fields.
14199         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
14200         or for struct stat.st_birthtime, as these tests aren't used.
14201         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
14202
14203 2007-03-27  Bruno Haible  <bruno@clisp.org>
14204
14205         * lib/stat-time.h: Include <sys/stat.h>.
14206
14207 2007-03-27  James Youngman  <jay@gnu.org>
14208
14209         * lib/stat-time.h (get_stat_birthtime): New function for
14210           retrieving st_birthtime as provided by UFS2 (hence *BSD).
14211         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
14212           and its variants.
14213         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
14214         * modules/stat-time-test: New file.
14215         * tests/test-stat-time.c: New test, devised by Bruno Haible.
14216
14217 2007-03-26  Bruno Haible  <bruno@clisp.org>
14218
14219         Better support of signalling NaNs.
14220         * lib/atanl.c: Include isnanl.h.
14221         (atanl): Perform test for NaN at the beginning of the function and
14222         through a call to isnanl.
14223         * lib/cosl.c: Include isnanl.h.
14224         (cosl): Perform test for NaN at the beginning of the function and
14225         through a call to isnanl.
14226         * lib/ldexpl.c: Include isnanl.h.
14227         (ldexpl): Perform test for NaN through a call to isnanl.
14228         * lib/logl.c: Include isnanl.h.
14229         (logl): Perform test for NaN at the beginning of the function and
14230         through a call to isnanl.
14231         * lib/sinl.c: Include isnanl.h.
14232         (sinl): Perform test for NaN at the beginning of the function and
14233         through a call to isnanl.
14234         * lib/sqrtl.c: Include isnanl.h.
14235         (sqrtl): Perform test for NaN at the beginning of the function and
14236         through a call to isnanl.
14237         * lib/tanl.c: Include isnanl.h.
14238         (tanl): Perform test for NaN at the beginning of the function and
14239         through a call to isnanl.
14240         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
14241         * modules/mathl (Depends-on): Add isnanl.
14242
14243 2007-03-26  Eric Blake  <ebb9@byu.net>
14244
14245         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
14246         regression in logic sense of previous patch.
14247
14248 2007-03-26  Bruno Haible  <bruno@clisp.org>
14249
14250         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
14251         unportable shell command "if ! ...".
14252         Reported by Ralf Wildenhues.
14253
14254 2007-03-25  Bruno Haible  <bruno@clisp.org>
14255
14256         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
14257         <sysexits.h> file, and only add EX_CONFIG.
14258         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
14259         absolute file name and whether it is sufficient. Substitute also
14260         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
14261         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
14262         ABSOLUTE_SYSEXITS_H into sysexits.h.
14263
14264 2007-03-25  Bruno Haible  <bruno@clisp.org>
14265
14266         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
14267         hints is NULL.
14268
14269 2007-03-25  Bruno Haible  <bruno@clisp.org>
14270
14271         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
14272         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
14273
14274 2007-03-25  Bruno Haible  <bruno@clisp.org>
14275
14276         * lib/vasnprintf.c: Include langinfo.h.
14277         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
14278         multithread-safe.
14279         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
14280         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
14281         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14282         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14283         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14284         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14285         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14286         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
14287         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14288         Reported by Simon Josefsson.
14289
14290 2007-03-25  Bruno Haible  <bruno@clisp.org>
14291
14292         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
14293         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
14294         * modules/vasnprintf (Depends-on): Add stdint.
14295
14296 2007-03-25  Bruno Haible  <bruno@clisp.org>
14297
14298         * modules/fpieee: New file.
14299         * m4/fpieee.m4: New file.
14300         * modules/isnan-nolibm (Depends-on): Add fpieee.
14301         * modules/isnanl-nolibm (Depends-on): Add fpieee.
14302         * modules/isnanl (Depends-on): Add fpieee.
14303
14304 2007-03-25  Bruno Haible  <bruno@clisp.org>
14305
14306         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
14307
14308 2007-03-25  Bruno Haible  <bruno@clisp.org>
14309
14310         Avoid test failures on IRIX 6.5.
14311         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
14312         (main): Use it.
14313         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
14314         macros.
14315         (main): Use them.
14316
14317 2007-03-25  Bruno Haible  <bruno@clisp.org>
14318
14319         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
14320         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
14321         exists but doesn't work.
14322         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
14323         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
14324         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
14325         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
14326
14327 2007-03-25  Bruno Haible  <bruno@clisp.org>
14328
14329         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
14330         returns inf. Needed on IRIX 6.5.
14331
14332 2007-03-25  Bruno Haible  <bruno@clisp.org>
14333
14334         * tests/test-frexpl.c: Include isnanl-nolibm.h.
14335         (main): Use isnanl instead of x != x idiom.
14336         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
14337
14338         * tests/test-frexp.c: Include isnan.h.
14339         (main): Use isnan instead of x != x idiom.
14340         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
14341
14342 2007-03-25  Bruno Haible  <bruno@clisp.org>
14343
14344         * tests/test-frexp.c (NaN): New function/macro.
14345         (main): Use it instead of 0.0 / 0.0.
14346         * tests/test-isnan.c (NaN): New function/macro.
14347         (main): Use it instead of 0.0 / 0.0.
14348         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
14349         (test_function): Use it instead of 0.0 / 0.0.
14350         * tests/test-vasprintf-posix.c (NaN): New function/macro.
14351         (test_function): Use it instead of 0.0 / 0.0.
14352         * tests/test-snprintf-posix.h (NaN): New function/macro.
14353         (test_function): Use it instead of 0.0 / 0.0.
14354         * tests/test-sprintf-posix.h (NaN): New function/macro.
14355         (test_function): Use it instead of 0.0 / 0.0.
14356         * tests/test-fprintf-posix.h (NaN): New function/macro.
14357         (test_function): Use it instead of 0.0 / 0.0.
14358         * tests/test-printf-posix.h (NaN): New function/macro.
14359         (test_function): Use it instead of 0.0 / 0.0.
14360
14361         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
14362
14363 2007-03-25  Bruno Haible  <bruno@clisp.org>
14364
14365         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
14366
14367 2007-03-25  Bruno Haible  <bruno@clisp.org>
14368
14369         * lib/regexec.c (merge_state_with_log): Make static.
14370
14371 2007-03-25  Bruno Haible  <bruno@clisp.org>
14372
14373         * lib/trigl.c (kernel_rem_pio2): Make static.
14374
14375 2007-03-25  Bruno Haible  <bruno@clisp.org>
14376
14377         * lib/sincosl.c (sincosl_table): Make static.
14378
14379 2007-03-25  Bruno Haible  <bruno@clisp.org>
14380
14381         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
14382         if the compiler does not support C99.
14383
14384 2007-03-25  Bruno Haible  <bruno@clisp.org>
14385
14386         * modules/time (Makefile.am): Ensure all rule action lines start with a
14387         tab.
14388
14389 2007-03-24  Bruno Haible  <bruno@clisp.org>
14390
14391         * modules/tsearch-tests: New file.
14392         * tests/test-tsearch.sh: New file.
14393         * tests/test-tsearch.c: New file, mostly copied from glibc.
14394
14395         * modules/search-tests: New file.
14396         * tests/test-search.c: New file.
14397
14398         * modules/search: New file.
14399         * lib/search_.h: New file, incorporating lib/tsearch.h.
14400         * m4/search_h.m4: New file.
14401         * lib/tsearch.h: Remove file.
14402         * lib/tsearch.c: Include search.h instead of tsearch.h.
14403         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
14404         HAVE_TSEARCH.
14405         * modules/tsearch (Files): Remove lib/tsearch.h.
14406         (Depends-on): Add search.
14407         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
14408         (Include): Change tsearch.h into search.h.
14409
14410 2007-03-24  Bruno Haible  <bruno@clisp.org>
14411
14412         * modules/fpucw: New file.
14413         * lib/fpucw.h: New file.
14414         * lib/frexp.c: Include fpucw.h.
14415         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
14416         (FUNC): Use them.
14417         * lib/printf-frexp.c: Include fpucw.h.
14418         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
14419         (FUNC): Use them.
14420         * lib/vasnprintf.c: Include fpucw.h.
14421         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
14422         'long double' calculations.
14423         * tests/test-frexpl.c: Include fpucw.h.
14424         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
14425         * tests/test-printf-frexpl.c: Include fpucw.h.
14426         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
14427         * modules/frexpl (Depends-on): Add fpucw.
14428         * modules/printf-frexpl (Depends-on): Likewise.
14429         * modules/fprintf-posix (Depends-on): Likewise.
14430         * modules/snprintf-posix (Depends-on): Likewise.
14431         * modules/sprintf-posix (Depends-on): Likewise.
14432         * modules/vasnprintf-posix (Depends-on): Likewise.
14433         * modules/vasprintf-posix (Depends-on): Likewise.
14434         * modules/vfprintf-posix (Depends-on): Likewise.
14435         * modules/vsnprintf-posix (Depends-on): Likewise.
14436         * modules/vsprintf-posix (Depends-on): Likewise.
14437         * modules/frexpl-tests (Depends-on): Likewise.
14438         * modules/printf-frexpl-tests (Depends-on): Likewise.
14439
14440 2007-03-24  Bruno Haible  <bruno@clisp.org>
14441
14442         * lib/float+.h: New file.
14443         * lib/isnan.c: Include float+.h.
14444         (SIZE): New macro.
14445         (FUNC): Compare only SIZE bytes of the value.
14446         * lib/vasnprintf.c: Include float+.h.
14447         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
14448         SIZEOF_LDBL or SIZEOF_DBL bytes.
14449         * modules/isnan-nolibm (Files): Add lib/float+.h.
14450         * modules/isnanl-nolibm (Files): Add lib/float+.h.
14451         * modules/isnanl (Files): Add lib/float+.h.
14452         * modules/vasnprintf (Files): Add lib/float+.h.
14453
14454 2007-03-24  Bruno Haible  <bruno@clisp.org>
14455
14456         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
14457         include isnanl-nolibm.h.
14458
14459 2007-03-24  Bruno Haible  <bruno@clisp.org>
14460
14461         * tests/test-read-file.c (main): Don't produce spurious output for
14462         expected situations. Make the test fail if it encountered unexpected
14463         results.
14464
14465 2007-03-24  Bruno Haible  <bruno@clisp.org>
14466
14467         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
14468         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
14469
14470 2007-03-24  Bruno Haible  <bruno@clisp.org>
14471
14472         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
14473
14474 2007-03-24  Bruno Haible  <bruno@clisp.org>
14475
14476         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
14477         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
14478
14479         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
14480         * modules/utf8-ucs4: Turn into a symbolic link to module
14481         unistr/u8-mbtouc.
14482
14483         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
14484         utf8-ucs4-unsafe.
14485         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
14486         unistr/u8-mbtouc-unsafe.
14487
14488         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
14489         * modules/utf16-ucs4: Turn into a symbolic link to module
14490         unistr/u16-mbtouc.
14491
14492         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
14493         utf16-ucs4-unsafe.
14494         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
14495         unistr/u16-mbtouc-unsafe.
14496
14497         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
14498         * modules/ucs4-utf8: Turn into a symbolic link to module
14499         unistr/u8-ubtomb.
14500
14501         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
14502         * modules/ucs4-utf16: Turn into a symbolic link to module
14503         unistr/u16-ubtomb.
14504
14505 2007-03-24  Bruno Haible  <bruno@clisp.org>
14506
14507         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
14508         Enable the function only if HAVE_INLINE.
14509         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
14510         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
14511         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
14512         Enable the function only if HAVE_INLINE.
14513         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
14514         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
14515         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
14516         Enable the function only if HAVE_INLINE.
14517         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
14518         Enable the function only if HAVE_INLINE.
14519         * modules/utf8-ucs4: Update.
14520         * modules/utf8-ucs4-unsafe: Update.
14521         * modules/utf16-ucs4: Update.
14522         * modules/utf16-ucs4-unsafe: Update.
14523         * modules/ucs4-utf8: Update.
14524         * modules/ucs4-utf16: Update.
14525
14526 2007-03-24  Bruno Haible  <bruno@clisp.org>
14527
14528         * lib/utf8-ucs4.h: Remove file.
14529         * lib/utf8-ucs4-unsafe.h: Remove file.
14530         * lib/utf16-ucs4.h: Remove file.
14531         * lib/utf16-ucs4-unsafe.h: Remove file.
14532         * lib/ucs4-utf8.h: Remove file.
14533         * lib/ucs4-utf16.h: Remove file.
14534         * lib/unistr.h: Include their previous contents.
14535         * m4/utf-ucs4.m4: Remove file.
14536         * m4/ucs4-utf.m4: Remove file.
14537         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
14538         (Depends-on): Add unistr/base.
14539         (configure.ac): Remove gl_UTF_UCS4.
14540         (Makefile.am): Update.
14541         (Include): Change to unistr.h.
14542         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
14543         (Depends-on): Add unistr/base.
14544         (configure.ac): Remove gl_UTF_UCS4.
14545         (Makefile.am): Update.
14546         (Include): Change to unistr.h.
14547         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
14548         (Depends-on): Add unistr/base.
14549         (configure.ac): Remove gl_UTF_UCS4.
14550         (Makefile.am): Update.
14551         (Include): Change to unistr.h.
14552         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
14553         (Depends-on): Add unistr/base.
14554         (configure.ac): Remove gl_UTF_UCS4.
14555         (Makefile.am): Update.
14556         (Include): Change to unistr.h.
14557         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
14558         (Depends-on): Add unistr/base.
14559         (configure.ac): Remove gl_UCS4_UTF.
14560         (Makefile.am): Update.
14561         (Include): Change to unistr.h.
14562         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
14563         (Depends-on): Add unistr/base.
14564         (configure.ac): Remove gl_UCS4_UTF.
14565         (Makefile.am): Update.
14566         (Include): Change to unistr.h.
14567         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
14568         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
14569         utf8-ucs4-unsafe.h.
14570         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
14571         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
14572         utf16-ucs4-unsafe.h.
14573         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
14574         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
14575         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
14576         * lib/unistr/u8-strchr.c: Likewise.
14577         * lib/unistr/u8-strrchr.c: Likewise.
14578         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
14579         * lib/unistr/u16-strchr.c: Likewise.
14580         * lib/unistr/u16-strrchr.c: Likewise.
14581         * lib/striconveh.c: Update.
14582         * lib/linebreak.c: Update.
14583
14584 2007-03-24  Bruno Haible  <bruno@clisp.org>
14585
14586         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
14587         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
14588
14589 2007-03-22  Bruno Haible  <bruno@clisp.org>
14590
14591         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
14592
14593 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14594
14595         * MODULES.html.sh (File system functions): New module write-any-file.
14596         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
14597         * m4/write-any-file.m4: New files.
14598
14599 2007-03-23  Eric Blake  <ebb9@byu.net>
14600
14601         * gnulib-tool: Rearrange space-tab sequences, since some editors
14602         like to eat them.
14603
14604 2007-03-23  Eric Blake  <ebb9@byu.net>
14605
14606         * lib/version-etc.c (version_etc_va): Update license wording to
14607         be more concise.  Recommended by Richard Stallman.
14608
14609 2007-03-22  Bruno Haible  <bruno@clisp.org>
14610
14611         * lib/poll.c (MSG_PEEK): New fallback definition.
14612
14613 2007-03-22  Bruno Haible  <bruno@clisp.org>
14614
14615         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
14616         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
14617         (main): Update.
14618         Fixes a compilation error on BeOS.
14619
14620 2007-03-22  Bruno Haible  <bruno@clisp.org>
14621
14622         * modules/frexpl-tests: New file.
14623         * tests/test-frexpl.c: New file.
14624
14625         * modules/frexpl: New file.
14626         * m4/frexpl.m4: New file.
14627         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
14628         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
14629         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
14630         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
14631         (Depends-on): Add frexpl. Remove isnanl-nolibm.
14632         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
14633
14634 2007-03-22  Bruno Haible  <bruno@clisp.org>
14635
14636         * lib/frexpl.c: Share code with lib/frexp.c.
14637         * modules/mathl (Files): Add lib/frexp.c.
14638         (Depends-on): Add isnanl-nolibm.
14639
14640 2007-03-22  Bruno Haible  <bruno@clisp.org>
14641
14642         * modules/printf-frexp (Files): Add m4/frexp.m4.
14643         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
14644         only if the found frexp function actually works.
14645
14646 2007-03-22  Bruno Haible  <bruno@clisp.org>
14647
14648         * lib/frexp.c: Remove older implementation that uses divisions.
14649
14650 2007-03-21  Bruno Haible  <bruno@clisp.org>
14651
14652         * modules/frexp-tests: New file.
14653         * tests/test-frexp.c: New file.
14654
14655         * modules/frexp: New file.
14656         * lib/frexp.c: New file.
14657         * m4/frexp.m4: New file.
14658         * lib/math_.h (frexp): New declaration.
14659         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
14660         REPLACE_FREXP.
14661         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
14662
14663 2007-03-21  Bruno Haible  <bruno@clisp.org>
14664
14665         * modules/isnanl-tests: New file.
14666         * tests/test-isnanl.c: New file.
14667
14668         * modules/isnanl: New file.
14669         * lib/isnanl.h: New file.
14670         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
14671         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
14672         gl_FUNC_ISNANL_WORKS.
14673         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
14674         New macros.
14675
14676 2007-03-21  Bruno Haible  <bruno@clisp.org>
14677
14678         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
14679         lib/isnanl.h.
14680         (Include): Update.
14681         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
14682         * lib/vasnprintf.c: Update.
14683         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
14684         tests/test-isnanl.h, remove tests/test-isnanl.c.
14685         (Makefile.am): Update.
14686         * tests/test-isnanl-nolibm.c: New file.
14687         * tests/test-isnanl.h: New file.
14688         * tests/test-isnanl.c: Remove file.
14689
14690 2007-03-21  Jim Meyering  <jim@meyering.net>
14691
14692         When trying to open ".", treat ESTALE like EACCES.
14693         * lib/savewd.c (savewd_save): Resort to forking not just upon
14694         failure with EACCES, but also when errno is ESTALE.
14695
14696 2007-03-20  Bruno Haible  <bruno@clisp.org>
14697
14698         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
14699         Needed on AIX 5.1. Reported by Matthew Woehlke.
14700
14701 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14702
14703         Suggestions by Bruno Haible:
14704         * lib/acl-internal.h: Include "gettext.h" rather than rolling
14705         our own.
14706         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
14707         * modules/acl (Depends-on): Add gettext.
14708
14709 2007-03-19  Bruno Haible  <bruno@clisp.org>
14710
14711         * modules/iconvme: Remove file.
14712         * lib/iconvme.h: Remove file.
14713         * lib/iconvme.c: Remove file.
14714         * m4/iconvme.m4: Remove file.
14715
14716 2007-03-19  Bruno Haible  <bruno@clisp.org>
14717
14718         * doc/relocatable-maint.texi: Break long shell script line.
14719         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14720
14721 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14722
14723         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
14724         handle file_has_acl.
14725         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
14726         * lib/acl.c: Move header inclusions and related macro defns into
14727         lib/acl-internal.h.
14728         (S_ISLNK): Remove defn, since that's now done for us.
14729         (file_has_acl): Move to lib/file-has-acl.c.
14730         Call acl_trivial if available.  This is the crucial part of the fix.
14731         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
14732         shared within the library.  Rewrite a bit, partly to make it compatible
14733         with the GNU coding style.
14734         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
14735         Remove unnecessary double-quotes.
14736         Don't test for acl_to_text; the build will catch that.
14737         Replace acl_entries if it doesn't exist and it is needed.
14738         Check for -lsec and acl_trivial (as used on Solaris 10).
14739         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
14740         lib/file-has-acl.c.
14741         (Depends-on): Add sys_stat, for S_ISLNK.
14742
14743 2007-03-19  Ben Pfaff  <blp@gnu.org>
14744
14745         * doc/gnulib.texi: Fix typos.
14746         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
14747
14748 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
14749
14750         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
14751         If size is zero here, buf must be zero.
14752
14753 2007-03-19  Simon Josefsson  <simon@josefsson.org>
14754
14755         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
14756         <bruno@clisp.org>.
14757
14758 2007-03-18  Bruno Haible  <bruno@clisp.org>
14759
14760         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
14761         Suggested by Eric Blake.
14762
14763 2007-03-18  Ben Pfaff  <blp@gnu.org>
14764
14765         * doc/relocatable.texi: Recommend using as prefix a directory
14766         that does not exist and will never be created.  Based on
14767         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
14768         and others.
14769
14770 2007-03-17  Bruno Haible  <bruno@clisp.org>
14771
14772         * lib/fchownat.c: Include lchown.h.
14773
14774 2007-03-17  Bruno Haible  <bruno@clisp.org>
14775
14776         Fix endless loop when the given allocated size was > INT_MAX.
14777         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
14778         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
14779         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
14780         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
14781         * lib/sprintf.c (sprintf): Likewise.
14782
14783 2007-03-17  Bruno Haible  <bruno@clisp.org>
14784
14785         * tests/test-argp-2.sh (func_compare): Output a context diff.
14786
14787 2007-03-17  Bruno Haible  <bruno@clisp.org>
14788
14789         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
14790         locale's decimal-point character.
14791
14792 2007-03-17  Bruno Haible  <bruno@clisp.org>
14793
14794         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
14795         before comparing it. Needed because on some platforms (e.g. x86) a
14796         'long double' occupies less bytes than sizeof (long double).
14797
14798 2007-03-17  Bruno Haible  <bruno@clisp.org>
14799
14800         * tests/test-crc.c (main): Make printf statements 64-bit clean.
14801         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
14802         * tests/test-getaddrinfo.c (simple): Likewise.
14803         * tests/test-read-file.c (main): Likewise.
14804
14805 2007-03-17  Bruno Haible  <bruno@clisp.org>
14806
14807         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
14808
14809 2007-03-17  Bruno Haible  <bruno@clisp.org>
14810
14811         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
14812         unused variable.
14813
14814 2007-03-17  Bruno Haible  <bruno@clisp.org>
14815
14816         * tests/test-c-strcasecmp.c: Include c-strcase.h.
14817         * tests/test-c-strncasecmp.c: Likewise.
14818
14819 2007-03-17  Bruno Haible  <bruno@clisp.org>
14820
14821         * modules/stdlib (Depends-on): Add unistd.
14822         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
14823         Needed for MacOS X 10.3.
14824
14825 2007-03-17  Bruno Haible  <bruno@clisp.org>
14826
14827         * lib/unistr/u-strdup.h: Include <stdlib.h>.
14828
14829 2007-03-17  Bruno Haible  <bruno@clisp.org>
14830
14831         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
14832
14833 2007-03-17  Bruno Haible  <bruno@clisp.org>
14834
14835         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
14836         to reflect files copied from gnulib (with or without modifications).
14837         Suggested by Jim Meyering.
14838
14839 2007-03-17  Eric Blake  <ebb9@byu.net>
14840
14841         * NEWS: Document stdlib change from 2007-02-18.
14842
14843 2007-03-17  Jim Meyering  <jim@meyering.net>
14844
14845         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
14846         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
14847         someone uses a name containing shell meta-characters.
14848         Reported by Alfred M. Szmidt.
14849
14850         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
14851
14852 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14853
14854         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
14855         and copy gettext configuration files only if configure.ac contains
14856         a use of AM_GNU_GETTEXT_VERSION.
14857
14858 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
14859
14860         * build-aux/bootstrap (gnulib_name): New variable.
14861         (gnulib_tool_options): Use it.
14862
14863 2007-03-13  Simon Josefsson  <simon@josefsson.org>
14864
14865         * tests/test-des.c: Use new namespace.
14866
14867 2007-03-15  Bruno Haible  <bruno@clisp.org>
14868
14869         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
14870         Reported by James Youngman <jay@gnu.org>.
14871
14872 2007-03-15  Bruno Haible  <bruno@clisp.org>
14873
14874         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
14875         declared prototype. Needed with cc on OSF/1 5.1.
14876
14877 2007-03-15  Bruno Haible  <bruno@clisp.org>
14878
14879         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
14880         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
14881         (struct gl_list_implementation): Add dispose_fn argument to the
14882         'create_empty', 'create' methods.
14883         (struct gl_list_impl_base): Add field 'dispose_fn'.
14884         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
14885         argument.
14886         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
14887         dispose_fn argument.
14888         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
14889         dispose_fn on the dropped values.
14890         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
14891         dispose_fn argument.
14892         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
14893         dropped values.
14894         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
14895         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14896         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
14897         (gl_tree_remove_node): Call dispose_fn on the dropped value.
14898         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
14899         argument.
14900         (gl_tree_list_free): Call dispose_fn on the dropped values.
14901         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
14902         the dropped values.
14903         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
14904         Add dispose_fn argument.
14905         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
14906         Call dispose_fn on the dropped values.
14907         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
14908         Add dispose_fn argument.
14909         (gl_sublist_create): Initialize the 'dispose_fn' field.
14910         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
14911         * tests/test-array_list.c (main): Update.
14912         * tests/test-carray_list.c (main): Update.
14913         * tests/test-avltree_list.c (main): Update.
14914         * tests/test-rbtree_list.c (main): Update.
14915         * tests/test-avltreehash_list.c (main): Update.
14916         * tests/test-rbtreehash_list.c (main): Update.
14917         * tests/test-linked_list.c (main): Update.
14918         * tests/test-linkedhash_list.c (main): Update.
14919         * tests/test-array_oset.c (main): Update.
14920
14921 2007-03-15  Bruno Haible  <bruno@clisp.org>
14922
14923         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
14924         (gl_oset_create_empty): Add dispose_fn argument.
14925         (struct gl_oset_implementation): Add dispose_fn argument to
14926         'create_empty' method.
14927         (struct gl_oset_impl_base): Add dispose_fn field.
14928         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
14929         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
14930         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
14931         values.
14932         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
14933         (gl_tree_oset_free): Call dispose_fn on the dropped values.
14934         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14935         dropped value.
14936         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
14937         dropped value.
14938         * tests/test-array_oset.c (main): Update.
14939         * tests/test-avltree_oset.c (main): Update.
14940         * tests/test-rbtree_oset.c (main): Update.
14941         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
14942
14943 2007-03-13  Bruno Haible  <bruno@clisp.org>
14944
14945         * tests/test-stdbool.c (i): Update after last patch.
14946
14947 2007-03-12  Bruno Haible  <bruno@clisp.org>
14948
14949         * lib/quotearg.c: Include <wctype.h> early, before the definition of
14950         the iswprint macro. Needed on Solaris 2.5.1.
14951
14952 2007-03-12  Bruno Haible  <bruno@clisp.org>
14953
14954         * tests/test-printf-frexp.c (main): Declare x as volatile.
14955
14956 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14957
14958         * doc/gnulib.texi (Build robot for gnulib): New section.
14959
14960 2007-03-12  Jim Meyering  <jim@meyering.net>
14961
14962         * build-aux/bootstrap: New file.
14963         * build-aux/bootstrap.conf: New file, from coreutils.
14964
14965 2007-03-11  Bruno Haible  <bruno@clisp.org>
14966
14967         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
14968
14969 2007-03-12  Simon Josefsson  <simon@josefsson.org>
14970
14971         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
14972         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
14973         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
14974
14975 2007-03-11  Bruno Haible  <bruno@clisp.org>
14976
14977         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
14978         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
14979
14980 2007-03-11  Bruno Haible  <bruno@clisp.org>
14981
14982         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
14983         formula. Needed for SunPRO C 5.0.
14984
14985 2007-03-11  Bruno Haible  <bruno@clisp.org>
14986
14987         * modules/long-options (Depends-on): Add getopt.
14988
14989 2007-03-11  Bruno Haible  <bruno@clisp.org>
14990
14991         * modules/modechange (Depends-on): Add stdbool.
14992
14993 2007-03-11  Bruno Haible  <bruno@clisp.org>
14994
14995         * modules/i-ring (Depends-on): Add stdbool.
14996
14997 2007-03-11  Bruno Haible  <bruno@clisp.org>
14998
14999         * modules/gc-des (Depends-on): Add stdbool.
15000
15001 2007-03-11  Bruno Haible  <bruno@clisp.org>
15002
15003         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
15004
15005 2007-03-11  Bruno Haible  <bruno@clisp.org>
15006
15007         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
15008
15009 2007-03-11  Bruno Haible  <bruno@clisp.org>
15010
15011         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
15012
15013 2007-03-11  Bruno Haible  <bruno@clisp.org>
15014
15015         * lib/vasnprintf.c (sprintf): Undefine.
15016
15017 2007-03-11  Bruno Haible  <bruno@clisp.org>
15018
15019         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
15020         initializers in SunPRO C and Compaq C compilers.
15021
15022 2007-03-11  Bruno Haible  <bruno@clisp.org>
15023
15024         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
15025         decrementing code ANSI C compliant.
15026
15027 2007-03-11  Bruno Haible  <bruno@clisp.org>
15028
15029         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
15030         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
15031
15032 2007-03-11  Bruno Haible  <bruno@clisp.org>
15033
15034         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
15035         <stdbool.h> substitute doesn't pass.
15036
15037 2007-03-11  Bruno Haible  <bruno@clisp.org>
15038
15039         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
15040
15041 2007-03-11  Bruno Haible  <bruno@clisp.org>
15042
15043         * gnulib-tool (func_create_megatestdir): Create also an autobuild
15044         script, for submission to autobuild.josefsson.org.
15045
15046 2007-03-10  Bruno Haible  <bruno@clisp.org>
15047
15048         * modules/canonicalize-lgpl-tests: New file.
15049         * tests/test-canonicalize-lgpl.sh: New file.
15050         * tests/test-canonicalize-lgpl.c: New file.
15051
15052         * modules/c-strcase-tests: New file.
15053         * tests/test-c-strcase.sh: New file.
15054         * tests/test-c-strcasecmp.c: New file.
15055         * tests/test-c-strncasecmp.c: New file.
15056
15057         * modules/atexit-tests: New file.
15058         * tests/test-atexit.sh: New file.
15059         * tests/test-atexit.c: New file.
15060
15061 2007-03-10  Bruno Haible  <bruno@clisp.org>
15062
15063         * tests/test-binary-io.sh: Use temporary filenames that are not so
15064         likely to clash with those of other tests (in a parallel make).
15065         * tests/test-binary-io.c: Likewise.
15066
15067 2007-03-10  Bruno Haible  <bruno@clisp.org>
15068
15069         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
15070         fallback; use #error instead.
15071         Suggested by Simon Josefsson.
15072
15073 2007-03-10  Bruno Haible  <bruno@clisp.org>
15074
15075         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
15076         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
15077         first and the last.
15078
15079 2007-03-10  Bruno Haible  <bruno@clisp.org>
15080
15081         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
15082
15083 2007-03-10  Bruno Haible  <bruno@clisp.org>
15084
15085         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
15086         "make distcheck".
15087         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
15088         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
15089         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
15090
15091 2007-03-10  Bruno Haible  <bruno@clisp.org>
15092
15093         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
15094         variable.
15095         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
15096         variable.
15097
15098 2007-03-09  Eric Blake  <ebb9@byu.net>
15099         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
15100
15101         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
15102         types are not being provided by gnulib.
15103         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
15104         types are supported.
15105
15106 2007-03-10  Bruno Haible  <bruno@clisp.org>
15107
15108         * lib/stdio_.h (__attribute__): New macro.
15109         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
15110         vsprintf): Specify __attribute__ __format__ for GCC.
15111         Suggested by Eric Blake.
15112
15113 2007-03-09  Bruno Haible  <bruno@clisp.org>
15114
15115         * modules/printf-posix-tests: New file.
15116         * tests/test-printf-posix.sh: New file.
15117         * tests/test-printf-posix.c: New file.
15118
15119         * modules/printf-posix: New file.
15120         * lib/printf.c: New file.
15121         * m4/printf-posix-rpl.m4: New file.
15122         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
15123         REPLACE_PRINTF.
15124         * lib/stdio_.h (printf): New declaration.
15125         (format, __format__, ____printf____, ____scanf____, ____strftime____,
15126         ____strfmon____): New macros.
15127         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
15128         REPLACE_PRINTF.
15129
15130 2007-03-09  Bruno Haible  <bruno@clisp.org>
15131
15132         * tests/test-vasnprintf-posix2.sh: New file.
15133         * tests/test-vasnprintf-posix2.c: New file.
15134         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
15135         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
15136         (Makefile.am): Activate test-vasnprintf-posix2.sh.
15137
15138         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
15139         a locale dependent decimal point, rather than always '.'.
15140
15141 2007-03-09  Eric Blake  <ebb9@byu.net>
15142
15143         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
15144         spite of platforms like Tandem/NSK that define it to -1.
15145
15146 2007-03-08  Bruno Haible  <bruno@clisp.org>
15147
15148         * modules/vprintf-posix-tests: New file.
15149         * tests/test-vprintf-posix.sh: New file.
15150         * tests/test-vprintf-posix.c: New file.
15151         * tests/test-printf-posix.h: New file.
15152
15153         * modules/vprintf-posix: New file.
15154         * lib/vprintf.c: New file.
15155         * m4/vprintf-posix.m4: New file.
15156         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
15157         REPLACE_VPRINTF.
15158         * lib/stdio_.h (vprintf): New declaration.
15159         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
15160         REPLACE_VPRINTF.
15161
15162 2007-03-08  Bruno Haible  <bruno@clisp.org>
15163
15164         * modules/fprintf-posix-tests: New file.
15165         * tests/test-fprintf-posix.sh: New file.
15166         * tests/test-fprintf-posix.c: New file.
15167
15168         * modules/fprintf-posix: New file.
15169         * lib/fprintf.c: New file.
15170         * m4/fprintf-posix.m4: New file.
15171         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
15172         REPLACE_FPRINTF.
15173         * lib/stdio_.h (fprintf): New declaration.
15174         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
15175         REPLACE_FPRINTF.
15176
15177 2007-03-08  Bruno Haible  <bruno@clisp.org>
15178
15179         * modules/vfprintf-posix-tests: New file.
15180         * tests/test-vfprintf-posix.sh: New file.
15181         * tests/test-vfprintf-posix.c: New file.
15182         * tests/test-fprintf-posix.h: New file.
15183         * tests/test-fprintf-posix.out: New file.
15184
15185         * modules/vfprintf-posix: New file.
15186         * lib/vfprintf.c: New file.
15187         * m4/vfprintf-posix.m4: New file.
15188         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
15189         REPLACE_VFPRINTF.
15190         * lib/stdio_.h (vfprintf): New declaration.
15191         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
15192         REPLACE_VFPRINTF.
15193
15194 2007-03-08  Bruno Haible  <bruno@clisp.org>
15195
15196         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
15197
15198 2007-03-08  Bruno Haible  <bruno@clisp.org>
15199
15200         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
15201         instead of 'expr' invocations.
15202         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
15203         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
15204         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
15205         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
15206         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
15207         Suggested by Paul Eggert.
15208
15209 2007-03-08  Bruno Haible  <bruno@clisp.org>
15210
15211         * modules/fseterr-tests: New file.
15212         * tests/test-fseterr.c: New file.
15213
15214         * modules/fseterr: New file.
15215         * lib/fseterr.h: New file.
15216         * lib/fseterr.c: New file.
15217
15218 2007-03-08  Bruno Haible  <bruno@clisp.org>
15219
15220         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
15221         * lib/getopt_.h: Likewise.
15222         * lib/mbswidth.h: Likewise.
15223         * lib/setenv.h: Likewise.
15224         * lib/vasnprintf.h: Likewise.
15225         * lib/vasprintf.h: Likewise.
15226         * lib/verror.h: Likewise.
15227         * lib/xsetenv.h: Likewise.
15228         * lib/xvasprintf.h: Likewise.
15229
15230 2007-03-08  Jim Meyering  <jim@meyering.net>
15231
15232         * users.txt: Add parted.
15233
15234         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
15235
15236 2007-03-07  Bruno Haible  <bruno@clisp.org>
15237
15238         * m4/printf.m4: Make the shell script snippets copy&pastable.
15239
15240 2007-03-02  Bruno Haible  <bruno@clisp.org>
15241
15242         * lib/netinet_in_.h: New file.
15243         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
15244         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
15245         * modules/netinet_in (Files): Add lib/netinet_in_.h.
15246         (Depends-on): Add absolute-header.
15247         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
15248         into netinet/in.h.
15249
15250 2007-03-03  Bruno Haible  <bruno@clisp.org>
15251
15252         * lib/sys_select_.h: New file.
15253         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
15254         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
15255         * modules/sys_select (Files): Add lib/sys_select_.h.
15256         (Depends-on): Add absolute-header.
15257         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
15258         into sys/select.h.
15259
15260 2007-03-02  Bruno Haible  <bruno@clisp.org>
15261
15262         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
15263         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
15264         values.
15265         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
15266         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
15267         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
15268         * modules/sys_socket (Depends-on): Add absolute-header.
15269         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
15270         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
15271         (Include): Remove requirement of inclusion of <sys/types.h>.
15272
15273 2007-03-02  Bruno Haible  <bruno@clisp.org>
15274
15275         * lib/byteswap_.h (bswap_32): Fix formula.
15276
15277 2007-03-06  Bruno Haible  <bruno@clisp.org>
15278
15279         * modules/sprintf-posix-tests: New file.
15280         * tests/test-sprintf-posix.c: New file.
15281
15282         * modules/sprintf-posix: New file.
15283         * lib/sprintf.c: New file.
15284         * m4/sprintf-posix.m4: New file.
15285         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
15286         REPLACE_SPRINTF.
15287         * lib/stdio_.h (sprintf): New declaration.
15288         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
15289         REPLACE_SPRINTF.
15290
15291 2007-03-06  Bruno Haible  <bruno@clisp.org>
15292
15293         * modules/vsprintf-posix-tests: New file.
15294         * tests/test-vsprintf-posix.c: New file.
15295         * tests/test-sprintf-posix.h: New file.
15296
15297         * modules/vsprintf-posix: New file.
15298         * lib/vsprintf.c: New file.
15299         * m4/vsprintf-posix.m4: New file.
15300         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
15301         REPLACE_VSPRINTF.
15302         * lib/stdio_.h (vsprintf): New declaration.
15303         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
15304         REPLACE_VSPRINTF.
15305
15306 2007-03-06  Bruno Haible  <bruno@clisp.org>
15307
15308         * modules/vsnprintf (Depend-on): Remove minmax.
15309
15310 2007-03-06  Bruno Haible  <bruno@clisp.org>
15311
15312         * modules/snprintf-posix-tests: New file.
15313         * tests/test-snprintf-posix.c: New file.
15314
15315         * modules/snprintf-posix: New file.
15316         * m4/snprintf-posix.m4: New file.
15317         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
15318         gl_FUNC_SNPRINTF.
15319         (gl_FUNC_SNPRINTF): Invoke it.
15320         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
15321         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
15322         is set.
15323         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
15324
15325 2007-03-06  Bruno Haible  <bruno@clisp.org>
15326
15327         * modules/vsnprintf-posix-tests: New file.
15328         * tests/test-vsnprintf-posix.c: New file.
15329         * tests/test-snprintf-posix.h: New file.
15330
15331         * modules/vsnprintf-posix: New file.
15332         * m4/vsnprintf-posix.m4: New file.
15333         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
15334         gl_FUNC_VSNPRINTF.
15335         (gl_FUNC_VSNPRINTF): Invoke it.
15336         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
15337         * lib/stdio_.h (vsnprintf): Define as a replacement if
15338         REPLACE_VSNPRINTF is set.
15339         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
15340
15341 2007-03-06  Bruno Haible  <bruno@clisp.org>
15342
15343         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
15344         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
15345
15346 2007-03-06  Bruno Haible  <bruno@clisp.org>
15347
15348         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
15349         (asinl): Declare also if HAVE_DECL_ASINL is set.
15350         (atanl): Declare also if HAVE_DECL_ATANL is set.
15351         (ceill): Declare also if HAVE_DECL_CEILL is set.
15352         (cosl): Declare also if HAVE_DECL_COSL is set.
15353         (expl): Declare also if HAVE_DECL_EXPL is set.
15354         (floorl): Declare also if HAVE_DECL_FLOORL is set.
15355         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
15356         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
15357         (logl): Declare also if HAVE_DECL_LOGL is set.
15358         (sinl): Declare also if HAVE_DECL_SINL is set.
15359         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
15360         (tanl): Declare also if HAVE_DECL_TANL is set.
15361         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
15362         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
15363         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
15364         declaration of frexpl, ldexpl.
15365         * modules/printf-frexpl (Depends-on): Add math.
15366         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
15367
15368 2007-03-05  Bruno Haible  <bruno@clisp.org>
15369
15370         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
15371         frexpl and ldexpl are declared.
15372         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
15373
15374 2007-03-05  Bruno Haible  <bruno@clisp.org>
15375
15376         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
15377         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
15378
15379 2007-03-05  Bruno Haible  <bruno@clisp.org>
15380
15381         * lib/stdio_.h: Include <stddef.h>.
15382
15383 2007-03-05  Bruno Haible  <bruno@clisp.org>
15384
15385         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
15386
15387 2007-03-05  Bruno Haible  <bruno@clisp.org>
15388
15389         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
15390         NetBSD 4, from Ralf Wildenhues.
15391
15392 2007-03-04  Bruno Haible  <bruno@clisp.org>
15393
15394         * lib/vasprintf.h: Update #if logic for the case when the functions
15395         exist but are overridden.
15396
15397 2007-03-04  Bruno Haible  <bruno@clisp.org>
15398
15399         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
15400         implementations: glibc-2.4 and MacOS X 10.3.
15401         * tests/test-vasnprintf-posix.c (test_function): Test also the case
15402         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
15403         * tests/test-vasprintf-posix.c (test_function): Likewise.
15404
15405 2007-03-04  Bruno Haible  <bruno@clisp.org>
15406
15407         * modules/vasprintf-posix-tests: New file.
15408         * tests/test-vasprintf-posix.c: New file.
15409
15410         * modules/vasprintf-posix: New file.
15411         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
15412         defined.
15413         * m4/vasprintf-posix.m4: New file.
15414         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
15415         gl_FUNC_VASPRINTF.
15416         (gl_FUNC_VASPRINTF): Invoke it.
15417         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
15418         here.
15419         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
15420
15421 2007-03-04  Bruno Haible  <bruno@clisp.org>
15422
15423         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
15424         REPLACE_GETTIMEOFDAY.
15425         * modules/sys_time (Makefile.am): Likewise.
15426         * m4/sys_time_h.m4: Likewise.
15427         * m4/gettimeofday.m4: Likewise.
15428
15429 2007-03-04  Bruno Haible  <bruno@clisp.org>
15430
15431         * modules/vasnprintf-posix-tests: New file.
15432         * tests/test-vasnprintf-posix.c: New file.
15433
15434         * modules/vasnprintf-posix: New file.
15435         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
15436         printf-frexpl.h.
15437         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
15438         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
15439         REPLACE_VASNPRINTF is defined.
15440         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
15441         gl_FUNC_VASNPRINTF.
15442         (gl_FUNC_VASNPRINTF): Invoke it.
15443         * m4/vasnprintf-posix.m4: New file.
15444         * m4/printf.m4: New file.
15445
15446 2007-03-04  Bruno Haible  <bruno@clisp.org>
15447
15448         Compile progreloc.c only if --enable-relocatable is specified.
15449         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
15450         if --enable-relocatable was specified.
15451         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
15452         lib_SOURCES.
15453
15454 2007-03-04  Jim Meyering  <jim@meyering.net>
15455
15456         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
15457         Use it consistently, rather than enumerating errno constants.
15458
15459 2007-03-04  Bruno Haible  <bruno@clisp.org>
15460
15461         * modules/xvasprintf-tests: New file.
15462         * tests/test-xvasprintf.c: New file.
15463
15464         * modules/vasprintf-tests: New file.
15465         * tests/test-vasprintf.c: New file.
15466
15467         * modules/vasnprintf-tests: New file.
15468         * tests/test-vasnprintf.c: New file.
15469
15470         * modules/vsnprintf-tests: New file.
15471         * tests/test-vsnprintf.c: New file.
15472
15473         * modules/snprintf-tests: New file.
15474         * tests/test-snprintf.c: New file.
15475
15476 2007-03-04  Bruno Haible  <bruno@clisp.org>
15477
15478         Compile relocatable.c only if --enable-relocatable is specified.
15479         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
15480         gl_RELOCATABLE_LIBRARY.
15481         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
15482         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
15483         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
15484         gl_RELOCATABLE_LIBRARY.
15485         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
15486         (Makefile.am): Remove lib_SOURCES.
15487         * modules/relocatable-lib-lgpl (configure.ac): Invoke
15488         gl_RELOCATABLE_LIBRARY.
15489         (Makefile.am): Remove lib_SOURCES.
15490         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
15491         always.
15492         * modules/relocatable-prog-wrapper (configure.ac): Invoke
15493         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
15494
15495 2007-03-04  Bruno Haible  <bruno@clisp.org>
15496
15497         * modules/argmatch-tests: New file.
15498         * tests/test-argmatch.c: New file.
15499
15500         * tests/test-allocsa.c (main): Halve the number of loop runs.
15501
15502         * modules/alloca-opt-tests: New file.
15503         * tests/test-alloca-opt.c: New file.
15504
15505 2007-03-04  Jim Meyering  <jim@meyering.net>
15506
15507         Work around difference between Linux ACLs and Solaris 10 ZFS.
15508         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
15509         for EINVAL.
15510
15511 2007-03-03  Bruno Haible  <bruno@clisp.org>
15512
15513         * modules/relocatable-prog (Depends-on): Add back progreloc's
15514         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
15515
15516 2007-03-03  Bruno Haible  <bruno@clisp.org>
15517
15518         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
15519         * modules/relocatable-lib: New file.
15520
15521 2007-03-03  Bruno Haible  <bruno@clisp.org>
15522
15523         * modules/relocatable-prog: Renamed from modules/relocatable.
15524         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
15525
15526 2007-03-03  Bruno Haible  <bruno@clisp.org>
15527
15528         * modules/relocatable-script (Files): Add doc/relocatable.texi,
15529         m4/relocatable-lib.m4.
15530         (Depends-on): Remove 'relocatable'.
15531         (configure.ac): Add gl_RELOCATABLE_NOP.
15532
15533 2007-03-03  Bruno Haible  <bruno@clisp.org>
15534
15535         * modules/relocatable-prog-wrapper: New file.
15536         * modules/relocatable (Depends-on): Add it. Remove all other
15537         dependencies except progname.
15538         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
15539
15540         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
15541         (gl_FUNC_STRERROR): Nop.
15542         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
15543
15544         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
15545         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
15546
15547         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
15548         (gl_FUNC_READLINK): Update.
15549
15550         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
15551
15552 2007-03-03  Bruno Haible  <bruno@clisp.org>
15553
15554         * lib/xreadlink.c: Include <unistd.h> unconditionally.
15555         * modules/xreadlink (Depends-on): Add unistd.
15556         * modules/xreadlink-with-size (Depends-on): Likewise.
15557
15558 2007-03-03  Bruno Haible  <bruno@clisp.org>
15559
15560         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
15561         extracted from gt_FUNC_SETENV.
15562         (gt_FUNC_SETENV): Remove macro.
15563         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
15564         remove gt_FUNC_SETENV.
15565
15566 2007-03-03  Bruno Haible  <bruno@clisp.org>
15567
15568         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
15569         ENABLE_RELOCATABLE here.
15570         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
15571
15572 2007-03-03  Bruno Haible  <bruno@clisp.org>
15573
15574         * modules/rbtreehash-list-tests (Depends-on): Add progname.
15575         * tests/test-rbtreehash_list.c: Include progname.h.
15576         (main): Call set_program_name.
15577
15578         * modules/rbtree-oset-tests (Depends-on): Add progname.
15579         * tests/test-rbtree_oset.c: Include progname.h.
15580         (main): Call set_program_name.
15581
15582         * modules/rbtree-list-tests (Depends-on): Add progname.
15583         * tests/test-rbtree_list.c: Include progname.h.
15584         (main): Call set_program_name.
15585
15586         * modules/linked-list-tests (Depends-on): Add progname.
15587         * tests/test-linked_list.c: Include progname.h.
15588         (main): Call set_program_name.
15589
15590 2007-03-03  Bruno Haible  <bruno@clisp.org>
15591
15592         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
15593         All uses of __restrict changed to _Restrict_.
15594         * lib/glob_.h (__restrict): Remove macro.
15595
15596 2007-03-02  Bruno Haible  <bruno@clisp.org>
15597
15598         * modules/gettext (configure.ac): Require gettext infrastructure
15599         from version 0.16.1.
15600
15601 2007-03-02  Bruno Haible  <bruno@clisp.org>
15602
15603         * modules/linkedhash-list-tests (Depends-on): Add progname.
15604         * tests/test-linkedhash_list.c: Include progname.h.
15605         (main): Call set_program_name.
15606
15607         * modules/carray-list-tests (Depends-on): Add progname.
15608         * tests/test-carray_list.c: Include progname.h.
15609         (main): Call set_program_name.
15610
15611         * modules/avltreehash-list-tests (Depends-on): Add progname.
15612         * tests/test-avltreehash_list.c: Include progname.h.
15613         (main): Call set_program_name.
15614
15615         * modules/avltree-oset-tests (Depends-on): Add progname.
15616         * tests/test-avltree_oset.c: Include progname.h.
15617         (main): Call set_program_name.
15618
15619         * modules/avltree-list-tests (Depends-on): Add progname.
15620         * tests/test-avltree_list.c: Include progname.h.
15621         (main): Call set_program_name.
15622
15623         * modules/array-oset-tests (Depends-on): Add progname.
15624         * tests/test-array_oset.c: Include progname.h.
15625         (main): Call set_program_name.
15626
15627         * modules/array-list-tests (Depends-on): Add progname.
15628         * tests/test-array_list.c: Include progname.h.
15629         (main): Call set_program_name.
15630
15631         * modules/argp-tests (Depends-on): Add progname.
15632         * tests/test-argp.c: Include argp.h first. Include progname.h.
15633         (main): Call set_program_name.
15634
15635 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15636
15637         * doc/gnulib-tool.texi (Initial import): Reword description of
15638         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
15639         limited effect even if defined after the first system include.
15640
15641 2007-03-01  Bruno Haible  <bruno@clisp.org>
15642
15643         * build-aux/config.libpath: Update to libtool-1.5.22.
15644         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
15645
15646 2007-03-01  Bruno Haible  <bruno@clisp.org>
15647
15648         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
15649         foo_CFLAGS.
15650         Reported by Ralf Wildenhues.
15651
15652 2007-03-01  Bruno Haible  <bruno@clisp.org>
15653
15654         * build-aux/install-reloc: Remove object files left over by some
15655         compilers.
15656         Reported by Ralf Wildenhues.
15657
15658 2007-03-01  Bruno Haible  <bruno@clisp.org>
15659
15660         * build-aux/install-reloc: Break long lines.
15661
15662 2007-03-01  Bruno Haible  <bruno@clisp.org>
15663
15664         * doc/relocatable.texi: Document that it may not work on OpenBSD.
15665         Reported by Ralf Wildenhues.
15666
15667 2007-03-01  Bruno Haible  <bruno@clisp.org>
15668
15669         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
15670         include ordering constraints.
15671
15672 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15673
15674         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
15675         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
15676         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
15677         as another example.
15678         * lib/time_.h: Fix misspelling.
15679         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
15680         Require gl_HEADER_TIME_H_DEFAULTS.
15681         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
15682         * m4/time_r.m4 (gl_TIME_R): Likewise.
15683         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
15684
15685 2007-03-01  Bruno Haible  <bruno@clisp.org>
15686
15687         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
15688         * m4/utimens.m4 (gl_UTIMENS): Likewise.
15689
15690 2007-03-01  Jim Meyering  <jim@meyering.net>
15691
15692         * modules/xreadlink (Maintainer): Add my name.
15693         * modules/xreadlink-with-size (Depends-on): Alphabetize.
15694
15695 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
15696             Bruno Haible  <bruno@clisp.org>
15697
15698         * build-aux/install-reloc: Compile also c-ctype.c.
15699         * build-aux/relocatable.sh.in: New file.
15700         * doc/relocatable.texi: New file.
15701         * doc/relocatable-maint.texi: New file.
15702         * doc/gnulib.texi: Include relocatable-maint.texi.
15703         * lib/progreloc.c: Include unistd.h unconditionally.
15704         * lib/relocwrapper.c: Include unistd.h unconditionally.
15705         Include c-ctype.h.
15706         (add_dotbin): Use c_tolower.
15707         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
15708         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
15709         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
15710         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
15711         to m4/relocatable-lib.m4.
15712         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
15713         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
15714         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
15715         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
15716         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
15717         * modules/relocatable: New file.
15718         * modules/relocatable-lib: New file.
15719         * modules/relocatable-script: New file.
15720
15721 2007-02-28  Bruno Haible  <bruno@clisp.org>
15722
15723         Import --enable-relocatable infrastructure.
15724         * build-aux/config.libpath: New file, from GNU gettext.
15725         * build-aux/install-reloc: New file, from GNU gettext.
15726         * build-aux/reloc-ldflags: New file, from GNU gettext.
15727         * lib/relocatable.h: New file, from GNU gettext.
15728         * lib/relocatable.c: New file, from GNU gettext.
15729         * lib/relocwrapper.c: New file, from GNU gettext.
15730         * m4/relocatable.m4: New file, from GNU gettext.
15731
15732 2007-02-28  Bruno Haible  <bruno@clisp.org>
15733
15734         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
15735
15736         * modules/xreadlink: New file, from GNU gettext with modifications.
15737         * lib/xreadlink.c: New file, from GNU gettext.
15738         * lib/xreadlink.h: Add comments.
15739         (xreadlink): New declaration.
15740
15741         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
15742         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
15743         lib/xreadlink-with-size.c.
15744         (configure.ac): Remove gl_XREADLINK invocation.
15745         (Makefile.am): Augment lib_SOURCES.
15746         * m4/xreadlink.m4: Remove file.
15747         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
15748         (xreadlink_with_size): Renamed from xreadink.
15749         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
15750         * modules/canonicalize (Depends-on): Replace xreadlink with
15751         xreadlink-with-size.
15752         * lib/canonicalize.c (canonicalize_filename_mode): Update.
15753
15754 2007-02-25  Jim Meyering  <jim@meyering.net>
15755
15756         * build-aux/announce-gen: When complaining about excess arguments,
15757         list them.
15758
15759 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
15760
15761         * README: Document signed integer overflow situation more
15762         accurately.
15763
15764 2007-02-25  Bruno Haible  <bruno@clisp.org>
15765
15766         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
15767         'a' or 'A' conversion.
15768
15769 2007-02-25  Bruno Haible  <bruno@clisp.org>
15770
15771         * modules/filename: Renamed from modules/pathname.
15772         (Files): Replace lib/pathname.h with lib/filename.h. Replace
15773         lib/concatpath.c with lib/concat-filename.c.
15774         (Makefile.am): Update.
15775         (Include): Replace pathname.h with filename.h.
15776         * lib/filename.h: Renamed from lib/pathname.h.
15777         (concatenated_filename): Renamed from concatenated_pathname.
15778         * lib/concat-filename.c: Renamed from lib/concatpath.c.
15779         (concatenated_filename): Renamed from concatenated_pathname.
15780         * lib/findprog.c: Include filename.h instead of pathname.h.
15781         (find_in_path): Update.
15782         * lib/javacomp.c: Include filename.h instead of pathname.h.
15783         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
15784         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
15785         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
15786         is_oldgcj_14_13_usable, is_javac_usable): Update.
15787         * lib/javaexec.c: Include filename.h instead of pathname.h.
15788         (execute_java_class): Update.
15789         * modules/findprog: Update.
15790         * modules/javacomp: Update.
15791         * modules/javaexec: Update.
15792         * MODULES.html.sh (File system functions): Add 'filename', remove
15793         'pathname'.
15794
15795 2007-02-25  Bruno Haible  <bruno@clisp.org>
15796
15797         * modules/printf-frexpl-tests: New file.
15798         * tests/test-printf-frexpl.c: New file.
15799
15800         * modules/printf-frexpl: New file.
15801         * lib/printf-frexpl.h: New file.
15802         * lib/printf-frexpl.c: New file.
15803         * m4/printf-frexpl.m4: New file.
15804
15805 2007-02-25  Bruno Haible  <bruno@clisp.org>
15806
15807         * modules/printf-frexp-tests: New file.
15808         * tests/test-printf-frexp.c: New file.
15809
15810         * modules/printf-frexp: New file.
15811         * lib/printf-frexp.h: New file.
15812         * lib/printf-frexp.c: New file.
15813         * m4/printf-frexp.m4: New file.
15814
15815 2007-02-25  Bruno Haible  <bruno@clisp.org>
15816
15817         Assume automake >= 1.10 for the tests.
15818         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
15819         * modules/arctwo-tests: Likewise.
15820         * modules/argp-tests: Likewise.
15821         * modules/avltree-list-tests: Likewise.
15822         * modules/avltree-oset-tests: Likewise.
15823         * modules/avltreehash-list-tests: Likewise.
15824         * modules/carray-list-tests: Likewise.
15825         * modules/crc-tests: Likewise.
15826         * modules/des-tests: Likewise.
15827         * modules/gc-arcfour-tests: Likewise.
15828         * modules/gc-arctwo-tests: Likewise.
15829         * modules/gc-des-tests: Likewise.
15830         * modules/gc-hmac-md5-tests: Likewise.
15831         * modules/gc-hmac-sha1-tests: Likewise.
15832         * modules/gc-md2-tests: Likewise.
15833         * modules/gc-md4-tests: Likewise.
15834         * modules/gc-md5-tests: Likewise.
15835         * modules/gc-pbkdf2-sha1-tests: Likewise.
15836         * modules/gc-rijndael-tests: Likewise.
15837         * modules/gc-sha1-tests: Likewise.
15838         * modules/gc-tests: Likewise.
15839         * modules/getaddrinfo-tests: Likewise.
15840         * modules/hmac-md5-tests: Likewise.
15841         * modules/hmac-sha1-tests: Likewise.
15842         * modules/linked-list-tests: Likewise.
15843         * modules/linkedhash-list-tests: Likewise.
15844         * modules/lock-tests: Likewise.
15845         * modules/md2-tests: Likewise.
15846         * modules/md4-tests: Likewise.
15847         * modules/md5-tests: Likewise.
15848         * modules/rbtree-list-tests: Likewise.
15849         * modules/rbtree-oset-tests: Likewise.
15850         * modules/rbtreehash-list-tests: Likewise.
15851         * modules/read-file-tests: Likewise.
15852         * modules/rijndael-tests: Likewise.
15853         * modules/stdint-tests: Likewise.
15854         * modules/tls-tests: Likewise.
15855
15856 2007-02-24  Bruno Haible  <bruno@clisp.org>
15857
15858         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
15859         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
15860         function; instead check whether isnan with a double argument links.
15861         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
15862         function; instead check whether isnan with a 'long double' argument
15863         links.
15864         Reported by Eric Blake <ebb9@byu.net>.
15865
15866 2007-02-24  Bruno Haible  <bruno@clisp.org>
15867
15868         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
15869         defined.
15870         * lib/isnanl.c: Remove all code. Just include isnan.c.
15871         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
15872
15873 2007-02-25  Jim Meyering  <jim@meyering.net>
15874
15875         Avoid conflicting types for 'unsetenv' on FreeBSD.
15876         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
15877         conflicting with FreeBSD's (5.0 and 6.1) function declaration
15878         in stdlib.h.
15879
15880 2007-02-24  Bruno Haible  <bruno@clisp.org>
15881
15882         * modules/isnanl-nolibm-tests: New file.
15883         * tests/test-isnanl.c: New file.
15884
15885         * modules/isnanl-nolibm: New file.
15886         * lib/isnanl.h: New file.
15887         * lib/isnanl.c: New file.
15888         * m4/isnanl.m4: New file.
15889
15890 2007-02-24  Bruno Haible  <bruno@clisp.org>
15891
15892         * modules/isnan-nolibm-tests: New file.
15893         * tests/test-isnan.c: New file.
15894
15895         * modules/isnan-nolibm: New file.
15896         * lib/isnan.h: New file.
15897         * lib/isnan.c: New file.
15898         * m4/isnan.m4: New file.
15899
15900 2007-02-24  Bruno Haible  <bruno@clisp.org>
15901
15902         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
15903         assume that an exponent fits in 20 bits.
15904
15905 2007-02-24  Jim Meyering  <jim@meyering.net>
15906
15907         * m4/regex.m4: Update the description of the configure-time option,
15908         --without-included-regex, to state accurately what the defaults are,
15909         and perhaps to give people an idea why using this option is risky.
15910
15911 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
15912
15913         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
15914         loops on small arguments.  This attempts to avoid the problem
15915         Bruno Haible reported for AIX 4.3.2 in
15916         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
15917
15918 2007-02-23  Bruno Haible  <bruno@clisp.org>
15919
15920         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
15921         Needed for help2man.
15922
15923 2007-02-23  Karl Berry  <karl@gnu.org>
15924
15925         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
15926         exists, foo.h should be cvs-ignored, not committed.
15927
15928 2007-02-23  Eric Blake  <ebb9@byu.net>
15929
15930         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
15931         * lib/stat-time.h (includes): Likewise.
15932         * lib/utimecmp.c (includes): Likewise.
15933         * lib/utimens.h (includes): Likewise.
15934         * lib/getdate.y (includes): Also include "timespec.h" for use
15935         internal to the module.
15936         * modules/utimens (Depends-on): Revert yesterday's patch.
15937         * modules/nanosleep (Depends-on): Add missing dependency.
15938
15939 2007-02-22  Bruno Haible  <bruno@clisp.org>
15940
15941         * lib/glob.c: Don't include getlogin_r.h.
15942
15943 2007-02-22  Jim Meyering  <jim@meyering.net>
15944
15945         * modules/utimens (Depends-on): Add timespec, required for
15946         utimens.h's inclusion of timespec.h.
15947
15948 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
15949
15950         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
15951         long unreadable paths in GNU/Linux.  Problem reported by Andreas
15952         Schwab in
15953         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
15954         I'll try to think of a better way to fix the Solaris problem.
15955
15956         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
15957         like glibc; on Solaris 10, it fails with errno == EINVAL.
15958         POSIX says the behavior is unspecified if the first argument is NULL,
15959         so play it safe and never pass NULL to the system getcwd.
15960
15961 2007-02-21  Jim Meyering  <jim@meyering.net>
15962
15963         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
15964         of gettimeofday.  It would conflict with the one now always
15965         provided via sys_time_.h.  Reported by Matthew Woehlke, as
15966         an IRIX 6.5 build failure.
15967
15968 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
15969
15970         Minor fixups to port to Solaris 10 with Sun C 5.8.
15971         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
15972         * modules/getcwd (Depends-on): Add dirfd.
15973         * lib/putenv.c (putenv): #undef it.
15974         (rpl_putenv): New decl.
15975         (malloc, free): Include <stdlib.h> rather than prototyping separately.
15976
15977 2007-02-20  Bruno Haible  <bruno@clisp.org>
15978
15979         * modules/stdio-tests: New file.
15980         * tests/test-stdio.c: New file.
15981
15982         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
15983         (Depends-on): Add stdio.
15984         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15985         (Include): Use <stdio.h> instead of vsnprintf.h.
15986         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15987         HAVE_DECL_VSNPRINTF.
15988         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
15989
15990         * modules/snprintf (Files): Remove lib/snprintf.h.
15991         (Depends-on): Add stdio.
15992         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
15993         (Include): Use <stdio.h> instead of snprintf.h.
15994         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
15995         HAVE_DECL_SNPRINTF.
15996         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
15997         * lib/getaddrinfo.c: Likewise.
15998
15999         * modules/stdio: New file.
16000         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
16001         * lib/snprintf.h: Remove file.
16002         * lib/vsnprintf.h: Remove file.
16003         * lib/.cppi-disable: Remove snprintf.h.
16004         * m4/stdio_h.m4: New file.
16005         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
16006
16007 2007-02-20  Jim Meyering  <jim@meyering.net>
16008
16009         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
16010         used by e.g., mingw.  From Bruno Haible.
16011
16012 2007-02-19  Bruno Haible  <bruno@clisp.org>
16013
16014         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
16015         warnings.
16016         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16017
16018 2007-02-19  Bruno Haible  <bruno@clisp.org>
16019
16020         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
16021         from mingw users.
16022
16023 2007-02-19  Bruno Haible  <bruno@clisp.org>
16024
16025         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
16026         warnings.
16027         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
16028
16029 2007-02-19  Jim Meyering  <jim@meyering.net>
16030
16031         Don't use FD after a successful "fdopendir (fd)".
16032         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
16033         Reset it by calling dirfd on the just-obtained DIR*.
16034
16035         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
16036         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
16037
16038 2007-02-18  Bruno Haible  <bruno@clisp.org>
16039
16040         * lib/readlink.c: Include <unistd.h>.
16041         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
16042         HAVE_READLINK.
16043         * modules/readlink (Depends-on): Add unistd.
16044         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16045         (Include): Add <unistd.h>.
16046
16047         * lib/getlogin_r.h: Remove file.
16048         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
16049         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
16050         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
16051         HAVE_DECL_GETLOGIN_R.
16052         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
16053         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16054         (Include): Use <unistd.h> instead of getlogin_r.h.
16055
16056         * lib/getcwd.h: Remove file.
16057         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
16058         * lib/xgetcwd.c: Likewise.
16059         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
16060         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
16061         * modules/getcwd (Files): Remove lib/getcwd.h.
16062         (Depends-on): Add unistd.
16063         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16064         (Include): Use <unistd.h> instad of getcwd.h.
16065
16066         * lib/ftruncate.c: Include <unistd.h> first.
16067         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
16068         Set HAVE_FTRUNCATE.
16069         * modules/ftruncate (Depends-on): Add unistd.
16070         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16071
16072         * lib/fchdir.c: Include <unistd.h> first.
16073         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
16074         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
16075         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
16076         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16077         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
16078
16079         * lib/dup2.c: Include <unistd.h> first.
16080         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
16081         HAVE_DUP2.
16082         * modules/dup2 (Depends-on): Add unistd.
16083         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16084
16085         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
16086         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
16087         REPLACE_CHOWN. Don't define chown as a macro here.
16088         * modules/chown (Depends-on): Add unistd.
16089         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
16090
16091         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
16092         Add definition for GL_LINK_WARNING.
16093         (chown, dup2): New declarations.
16094         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
16095         link warning.
16096         (ftruncate): New declaration.
16097         (getcwd): New declaration, taken from old getcwd.h.
16098         (getlogin_r): New declaration, taken from old getlogin_r.h.
16099         (readlink): New declaration.
16100         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
16101         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
16102         (gl_PREREQ_UNISTD): Remove macro.
16103         (gl_UNISTD_MODULE_INDICATOR): New macro.
16104         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
16105         many new variables. Don't set UNISTD_H.
16106         * modules/unistd (Description): Change.
16107         (Depends-on): Add link-warning.
16108         (configure.ac): Update.
16109         (Makefile.am): Create unistd.h always. Substitute many new variables
16110         into it.
16111
16112 2007-02-18  Bruno Haible  <bruno@clisp.org>
16113
16114         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
16115         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
16116         HAVE_GETSUBOPT.
16117         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
16118         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
16119         * lib/getsubopt.h: Remove file.
16120         * modules/getsubopt (Files): Remove lib/getsubopt.h.
16121         (Depends-on): Add stdlib.
16122         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16123         (Includes): Use <stdlib.h> instead of getsubopt.h.
16124         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
16125         Set HAVE_GETSUBOPT.
16126         * lib/getsubopt.c: Don't include getsubopt.h.
16127
16128 2007-02-18  Bruno Haible  <bruno@clisp.org>
16129
16130         * modules/fchdir (Depends-on): Add dup2.
16131
16132 2007-02-18  Bruno Haible  <bruno@clisp.org>
16133
16134         * lib/stdlib_.h: Handle glibc's special invocation convention
16135         specially.
16136
16137 2007-02-18  Bruno Haible  <bruno@clisp.org>
16138
16139         * modules/stdlib-tests: New file.
16140         * tests/test-stdlib.c: New file.
16141
16142         * modules/mkstemp (Files): Remove lib/mkstemp.h.
16143         (Depends-on): Add stdlib.
16144         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16145         (Includes): Use <stdlib.h> instead of mkstemp.h.
16146         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
16147         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
16148         * lib/mkstemp.c: Don't include mkstemp.h.
16149         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
16150         * lib/stdlib--.h: Don't include mkstemp.h.
16151
16152         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
16153         (Depends-on): Add stdlib.
16154         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
16155         (Includes): Use <stdlib.h> instead of mkdtemp.h.
16156         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
16157         HAVE_MKDTEMP.
16158         * lib/mkdtemp.c: Don't include mkdtemp.h.
16159         * lib/clean-temp.c: Don't include mkdtemp.h.
16160
16161         * modules/exit (Files): Remove lib/exit.h.
16162         (Depends-on): Add stdlib.
16163         (Makefile.am): Remove lib_SOURCES.
16164         (Include): Use <stdlib.h> instead of exit.h.
16165         * lib/argmatch.c: Don't include exit.h.
16166         * lib/execute.c: Likewise.
16167         * lib/pagealign_alloc.c: Likewise.
16168         * lib/pipe.c: Likewise.
16169         * lib/wait-process.c: Likewise.
16170         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
16171         * lib/exitfail.c: Likewise.
16172         * lib/savewd.c: Likewise.
16173         * lib/xsetenv.c: Likewise.
16174
16175         * modules/stdlib: New file.
16176         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
16177         and extra comments about mkstemp().
16178         * lib/exit.h: Remove file.
16179         * lib/mkdtemp.h: Remove file.
16180         * lib/mkstemp.h: Remove file.
16181         * m4/stdlib_h.m4: New file.
16182         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
16183
16184 2007-02-18  Bruno Haible  <bruno@clisp.org>
16185
16186         * modules/math-tests: New file.
16187         * tests/test-math.c: New file.
16188
16189         * modules/math: New file.
16190         * modules/mathl (Files): Remove lib/mathl.h.
16191         (Depends-on): Add math.
16192         (Makefile.am): Don't mention mathl.h.
16193         (Include): Use <math.h> instead of mathl.h.
16194         * lib/math_.h: New file.
16195         * lib/mathl.h: Remove file.
16196         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
16197         mathl.h.
16198         * lib/asinl.c: Likewise.
16199         * lib/atanl.c: Likewise.
16200         * lib/ceill.c: Likewise.
16201         * lib/cosl.c: Likewise.
16202         * lib/expl.c: Likewise.
16203         * lib/floorl.c: Likewise.
16204         * lib/frexpl.c: Likewise.
16205         * lib/ldexpl.c: Likewise.
16206         * lib/logl.c: Likewise.
16207         * lib/sincosl.c: Likewise.
16208         * lib/sinl.c: Likewise.
16209         * lib/sqrtl.c: Likewise.
16210         * lib/tanl.c: Likewise.
16211         * lib/trigl.c: Likewise.
16212         * m4/math_h.m4: New file.
16213         * MODULES.html.sh (Mathematics): Add math.
16214
16215 2007-02-17  Bruno Haible  <bruno@clisp.org>
16216
16217         * modules/wctype-tests: New file.
16218         * tests/test-wctype.c: New file.
16219
16220         * modules/wchar-tests: New file.
16221         * tests/test-wchar.c: New file.
16222
16223         * modules/unistd-tests: New file.
16224         * tests/test-unistd.c: New file.
16225
16226         * modules/time-tests: New file.
16227         * tests/test-time.c: New file.
16228
16229         * modules/sysexits-tests: New file.
16230         * tests/test-sysexits.c: New file.
16231
16232         * modules/sys_time-tests: New file.
16233         * tests/test-sys_time.c: New file.
16234
16235         * modules/sys_stat-tests: New file.
16236         * tests/test-sys_stat.c: New file.
16237
16238         * modules/sys_socket-tests: New file.
16239         * tests/test-sys_socket.c: New file.
16240
16241         * modules/sys_select-tests: New file.
16242         * tests/test-sys_select.c: New file.
16243
16244         * modules/string-tests: New file.
16245         * tests/test-string.c: New file.
16246
16247         * modules/stdbool-tests: New file.
16248         * tests/test-stdbool.c: New file.
16249
16250         * modules/netinet_in-tests: New file.
16251         * tests/test-netinet_in.c: New file.
16252
16253         * modules/inttypes-tests: New file.
16254         * tests/test-inttypes.c: New file.
16255
16256         * modules/fcntl-tests: New file.
16257         * tests/test-fcntl.c: New file.
16258
16259         * modules/byteswap-tests: New file.
16260         * tests/test-byteswap.c: New file.
16261
16262         * modules/arpa_inet-tests: New file.
16263         * tests/test-arpa_inet.c: New file.
16264
16265 2007-02-17  Bruno Haible  <bruno@clisp.org>
16266
16267         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
16268         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
16269         if the corresponding module is not enabled. Emit link warnings if
16270         the function is used nevertheless.
16271         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
16272         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
16273         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
16274         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
16275         * modules/inttypes (Depends-on): Add link-warning.
16276         (Makefile.am): Copy the contents of build-aux/link-warning.h into
16277         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
16278         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
16279         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
16280         * modules/imaxdiv (configure.ac): Likewise.
16281         * modules/strtoimax (configure.ac): Likewise.
16282         * modules/strtoumax (configure.ac): Likewise.
16283
16284 2007-02-17  Bruno Haible  <bruno@clisp.org>
16285
16286         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
16287         gl_STRING_MODULE_INDICATOR_DEFAULTS.
16288         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
16289         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
16290
16291 2007-02-17  Bruno Haible  <bruno@clisp.org>
16292
16293         * modules/link-warning: New file.
16294         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
16295         * lib/string_.h (GL_LINK_WARNING): Remove definition.
16296         * modules/string (Depends-on): Add link-warning.
16297         (Makefile.am): Copy the contents of build-aux/link-warning.h into
16298         string.h.
16299         * MODULES.html.sh (Support for building libraries and executables): Add
16300         link-warning.
16301
16302 2007-02-17  Bruno Haible  <bruno@clisp.org>
16303
16304         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
16305         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
16306         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
16307         long lines.
16308
16309 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
16310             Bruno Haible  <bruno@clisp.org>
16311
16312         * modules/tmpfile: New file.
16313         * lib/tmpfile.c: New file.
16314         * m4/tmpfile.m4: New file.
16315         * MODULES.html.sh (func_all_modules): New section "Input/output".
16316
16317 2007-02-15  Bruno Haible  <bruno@clisp.org>
16318
16319         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
16320         (supports_delete_on_close): New function.
16321         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
16322
16323 2007-02-14  Bruno Haible  <bruno@clisp.org>
16324
16325         * modules/mbspcasecmp-tests: New file.
16326         * tests/test-mbspcasecmp.sh: New file.
16327         * tests/test-mbspcasecmp.c: New file.
16328
16329         New module mbspcasecmp.
16330         * modules/mbspcasecmp: New file.
16331         * lib/mbspcasecmp.c: New file.
16332         * lib/string_.h (strncasecmp): Change warning message.
16333         (mbspcasecmp): New declaration.
16334         * m4/mbspcasecmp.m4: New file.
16335         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16336         GNULIB_MBSPCASECMP.
16337         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
16338         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
16339
16340 2007-02-14  Bruno Haible  <bruno@clisp.org>
16341
16342         * modules/mbsncasecmp-tests: New file.
16343         * tests/test-mbsncasecmp.sh: New file.
16344         * tests/test-mbsncasecmp.c: New file.
16345
16346         New module mbsncasecmp.
16347         * modules/mbsncasecmp: New file.
16348         * lib/mbsncasecmp.c: New file.
16349         * lib/string_.h (mbsncasecmp): New declaration.
16350         * m4/mbsncasecmp.m4: New file.
16351         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16352         GNULIB_MBSNCASECMP.
16353         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
16354         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
16355
16356 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
16357
16358         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
16359         Verify that it doesn't overlap with our flags.
16360         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
16361         do not have the desired effect in multibyte locales; instead, use
16362         mbscasecmp.
16363         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
16364         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
16365         we don't require GNU fnmatch ourselves (if our users require it, they
16366         should do so explicitly).
16367
16368         Fix regex code so it doesn't rely on strcasecmp.
16369         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
16370         Otherwise, include gnulib's langinfo.h.
16371         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
16372         undesirable behavior in non-C locales.  Instead, rely on localecharset.
16373         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
16374         * modules/regex (FILES): Remove m4/codeset.m4.
16375         (Depends-on): Add localcharset.  Remove strcase.
16376
16377 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16378
16379         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
16380         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
16381
16382 2007-02-13  Bruno Haible  <bruno@clisp.org>
16383
16384         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
16385         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16386
16387 2007-02-12  Bruno Haible  <bruno@clisp.org>
16388
16389         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
16390         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
16391         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
16392         time warning rather than a link error.
16393
16394 2007-02-12  Bruno Haible  <bruno@clisp.org>
16395
16396         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
16397         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
16398         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16399
16400 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
16401
16402         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
16403         args, not 2.
16404
16405 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
16406
16407         New module 'time', so that apps can include <time.h> as per
16408         POSIX and GNU instead of separate include files like time_r.h
16409         and timegm.h.  This implementation tries out a simpler approach
16410         for replacing decls in standard include files (as compared to
16411         the string module), somewhat as an experiment.
16412
16413         * config/srclist.txt: Comment out mktime.c for now.
16414         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
16415         since it doesn't apply any more.  Use generic wording instead.
16416         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
16417         'time'.
16418         * lib/time_.h, m4/time_h.m4, modules/time: New files.
16419         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
16420         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
16421         Don't include <sys/types.h>; no longer needed since we assume C89.
16422         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
16423         * lib/strftime.c: Likewise.
16424         * lib/time_r.c: Likewise.
16425         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
16426         * lib/nanosleep.c: Include <time.h> first, to check interface.
16427         * lib/strptime.c: Likewise.
16428         * lib/time_r.c: Likewise.
16429         * lib/timegm.c: Likewise.
16430         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
16431         needed.
16432         * lib/timegm.c: Don't include timegm.h; no longer needed.
16433         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
16434         time.h now handles any problems in that area.
16435         (struct timespec, nanosleep): Remove; time.h now arranges for these.
16436         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
16437         that time.h defines struct timespec.
16438         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
16439         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
16440         handles that.
16441         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
16442         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
16443         needed.  Set REPLACE_LOCALTIME.
16444         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
16445         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
16446         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
16447         nanosleep; time_h.m4 now does that.  Don't require
16448         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
16449         module handles this now.
16450         * modules/getdate (Depends-on): Remove timespec.  Add time.
16451         * modules/nanosleep (Depends-on): Likewise.
16452         * modules/stat-time (Depends-on): Likewise.
16453         * modules/nanosleep (Include): Include time.h, not timespec.h.
16454         * modules/strptime (Files): Remove lib/strptime.h.
16455         (Depends-on): Add extensions, time.
16456         (Include): Include time.h, not strptime.h.
16457         * modules/time_r (Files): Remove lib/time_r.h.
16458         (Depends-on): Add time.
16459         (Include): Include time.h, not time_r.h.
16460         * modules/timegm: Likewise.
16461         * modules/timespec (Description): Now does timespec-related decls
16462         of our own, instead of struct timespec itself.
16463         (Depends-on): Add time; remove extensions.
16464         (Maintainer): Add self.
16465         * modules/utimecmp (Depends-on): Add time; remove timespec.
16466         * modules/utimens (Depends-on): Likewise.
16467         * modules/xnanosleep (Depends-on): Likewise.
16468
16469 2007-02-11  Bruno Haible  <bruno@clisp.org>
16470
16471         * lib/c-strstr.c: Include allocsa.h.
16472         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16473         * lib/c-strcasestr.c: Include allocsa.h.
16474         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16475         * lib/strcasestr.c: Include allocsa.h.
16476         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
16477         * lib/mbsstr.c: Include allocsa.h.
16478         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
16479         allocsa/freesa instead of malloc/free.
16480         * lib/mbscasestr.c: Include allocsa.h.
16481         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
16482         allocsa/freesa instead of malloc/free.
16483         * modules/c-strstr (Depends-on): Add allocsa.
16484         * modules/c-strcasestr (Depends-on): Likewise.
16485         * modules/strcasestr (Depends-on): Likewise.
16486         * modules/mbsstr (Depends-on): Likewise.
16487         * modules/mbscasestr (Depends-on): Likewise.
16488
16489 2007-02-11  Bruno Haible  <bruno@clisp.org>
16490
16491         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
16492
16493         * modules/mbsspn-tests: New file.
16494         * tests/test-mbsspn.sh: New file.
16495         * tests/test-mbsspn.c: New file.
16496
16497 2007-02-11  Bruno Haible  <bruno@clisp.org>
16498
16499         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
16500
16501         * modules/mbspbrk-tests: New file.
16502         * tests/test-mbspbrk.sh: New file.
16503         * tests/test-mbspbrk.c: New file.
16504
16505 2007-02-11  Bruno Haible  <bruno@clisp.org>
16506
16507         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
16508         unneeded cast.
16509
16510         * modules/mbscspn-tests: New file.
16511         * tests/test-mbscspn.sh: New file.
16512         * tests/test-mbscspn.c: New file.
16513
16514 2007-02-11  Bruno Haible  <bruno@clisp.org>
16515
16516         * modules/mbscasecmp-tests: New file.
16517         * tests/test-mbscasecmp.sh: New file.
16518         * tests/test-mbscasecmp.c: New file.
16519
16520 2007-02-11  Bruno Haible  <bruno@clisp.org>
16521
16522         Ensure O(n) worst-case complexity of mbscasestr.
16523         * lib/mbscasestr.c: Include stdbool.h.
16524         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
16525         functions.
16526         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
16527         the bookkeeping indicates that it's worth it.
16528         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
16529
16530         * modules/mbscasestr-tests: New file.
16531         * tests/test-mbscasestr1.c: New file.
16532         * tests/test-mbscasestr2.sh: New file.
16533         * tests/test-mbscasestr2.c: New file.
16534         * tests/test-mbscasestr3.sh: New file.
16535         * tests/test-mbscasestr3.c: New file.
16536         * tests/test-mbscasestr4.sh: New file.
16537         * tests/test-mbscasestr4.c: New file.
16538         * m4/locale-tr.m4: New file.
16539
16540 2007-02-11  Bruno Haible  <bruno@clisp.org>
16541
16542         Ensure O(n) worst-case complexity of mbsstr.
16543         * lib/mbsstr.c: Include stdbool.h.
16544         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
16545         functions.
16546         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
16547         bookkeeping indicates that it's worth it.
16548         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
16549
16550         * modules/mbsstr-tests: New file.
16551         * tests/test-mbsstr1.c: New file.
16552         * tests/test-mbsstr2.sh: New file.
16553         * tests/test-mbsstr2.c: New file.
16554         * tests/test-mbsstr3.sh: New file.
16555         * tests/test-mbsstr3.c: New file.
16556         * m4/locale-fr.m4: New file.
16557
16558 2007-02-11  Bruno Haible  <bruno@clisp.org>
16559
16560         * lib/mbsrchr.c (mbsrchr): Fix bug.
16561
16562         * modules/mbsrchr-tests: New file.
16563         * tests/test-mbsrchr.sh: New file.
16564         * tests/test-mbsrchr.c: New file.
16565
16566 2007-02-11  Bruno Haible  <bruno@clisp.org>
16567
16568         * lib/mbschr.c (mbschr): Fix bug.
16569
16570         * modules/mbschr-tests: New file.
16571         * tests/test-mbschr.sh: New file.
16572         * tests/test-mbschr.c: New file.
16573         * m4/locale-zh.m4: New file.
16574
16575 2007-02-11  Bruno Haible  <bruno@clisp.org>
16576
16577         Support for copying multibyte string iterators.
16578         * lib/mbiter.h: Include <string.h>.
16579         (mbiter_multi_copy): New function.
16580         (mbi_copy): New macro.
16581         * lib/mbuiter.h: Include <string.h>.
16582         (mbuiter_multi_copy): New function.
16583         (mbui_copy): New macro.
16584
16585 2007-02-11  Bruno Haible  <bruno@clisp.org>
16586
16587         New module mbslen.
16588         * modules/mbslen: New file.
16589         * lib/mbslen.c: New file.
16590         * lib/string_.h (mbslen): New declaration.
16591         * m4/mbslen.m4: New file.
16592         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16593         GNULIB_MBSLEN.
16594         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
16595         * MODULES.html.sh (Internationalization functions): Add mbslen.
16596
16597 2007-02-11  Bruno Haible  <bruno@clisp.org>
16598
16599         Ensure O(n) worst-case complexity of strcasestr substitute.
16600         * lib/strcasestr.c: Include stdbool.h.
16601         (knuth_morris_pratt): New function.
16602         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
16603         bookkeeping indicates that it's worth it.
16604         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
16605
16606         * modules/strcasestr-tests: New file.
16607         * tests/test-strcasestr.c: New file.
16608
16609 2007-02-11  Bruno Haible  <bruno@clisp.org>
16610
16611         Ensure O(n) worst-case complexity of c_strcasestr.
16612         * lib/c-strcasestr.c: Include stdbool.h, string.h.
16613         (knuth_morris_pratt): New function.
16614         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
16615         the bookkeeping indicates that it's worth it.
16616         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
16617
16618         * modules/c-strcasestr-tests: New file.
16619         * tests/test-c-strcasestr.c: New file.
16620
16621 2007-02-11  Bruno Haible  <bruno@clisp.org>
16622
16623         Ensure O(n) worst-case complexity of c_strstr.
16624         * lib/c-strstr.c: Include stdbool.h, string.h.
16625         (knuth_morris_pratt): New function.
16626         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
16627         bookkeeping indicates that it's worth it.
16628         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
16629
16630         * lib/c-strstr.c: Complete rewrite for maintainability.
16631
16632         * modules/c-strstr-tests: New file.
16633         * tests/test-c-strstr.c: New file.
16634
16635 2007-02-11  Bruno Haible  <bruno@clisp.org>
16636
16637         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
16638         5.2.1 and earlier, whereby \055 was treated just like the range
16639         delimiter '-'.
16640         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
16641
16642 2007-02-08  Bruno Haible  <bruno@clisp.org>
16643
16644         * modules/regex (Depends-on): Add stdbool.
16645         Reported by Dalibor Topic <robilad@kaffe.org>.
16646
16647 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
16648
16649         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
16650         Prefer returning from main to exiting from it.
16651         Remove unnecessary parens after sizeof.
16652
16653 2007-02-05  Bruno Haible  <bruno@clisp.org>
16654
16655         New module mbssep.
16656         * modules/mbssep: New file.
16657         * lib/mbssep.c: New file.
16658         * lib/string_.h (strsep): Add a conditional link warning.
16659         (mbssep): New declaration.
16660         * m4/mbssep.m4: New file.
16661         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16662         GNULIB_MBSSEP.
16663         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
16664         * MODULES.html.sh (Internationalization functions): Add mbssep.
16665
16666 2007-02-05  Bruno Haible  <bruno@clisp.org>
16667
16668         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
16669         Optimize search in case of 1 delimiter.
16670
16671 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16672
16673         * lib/acl.h: Include sys/types.h before sys/acl.h.
16674
16675 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
16676
16677         Merge upstream fix for glibc bugzilla #3957:
16678
16679         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
16680
16681         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
16682         bit for RE_HAT_LISTS_NOT_NEWLINE.
16683         (build_charclass_op): Remove bogus comment.
16684
16685 2007-02-05  Simon Josefsson  <simon@josefsson.org>
16686
16687         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
16688
16689 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16690
16691         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
16692         * lib/memmem.c [!defined _LIBC]: Include config.h.
16693
16694 2007-02-04  Bruno Haible  <bruno@clisp.org>
16695
16696         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
16697         warning message.
16698
16699 2007-02-04  Bruno Haible  <bruno@clisp.org>
16700
16701         New module mbstok_r.
16702         * modules/mbstok_r: New file.
16703         * lib/mbstok_r.c: New file.
16704         * lib/string_.h (strtok_r): Change argument names to match the
16705         comments. Add a conditional link warning.
16706         (mbstok_r): New declaration.
16707         * m4/mbstok_r.m4: New file.
16708         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16709         GNULIB_MBSTOK_R.
16710         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
16711         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
16712
16713 2007-02-04  Bruno Haible  <bruno@clisp.org>
16714
16715         New module mbsspn.
16716         * modules/mbsspn: New file.
16717         * lib/mbsspn.c: New file.
16718         * lib/string_.h (strspn): Add a conditional link warning.
16719         (mbsspn): New declaration.
16720         * m4/mbsspn.m4: New file.
16721         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16722         GNULIB_MBSSPN.
16723         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
16724         * MODULES.html.sh (Internationalization functions): Add mbsspn.
16725
16726 2007-02-04  Bruno Haible  <bruno@clisp.org>
16727
16728         New module mbspbrk.
16729         * modules/mbspbrk: New file.
16730         * lib/mbspbrk.c: New file.
16731         * lib/string_.h (strpbrk): Add a conditional link warning.
16732         (mbspbrk): New declaration.
16733         * m4/mbspbrk.m4: New file.
16734         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16735         GNULIB_MBSPBRK.
16736         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
16737         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
16738
16739 2007-02-04  Bruno Haible  <bruno@clisp.org>
16740
16741         New module mbscspn.
16742         * modules/mbscspn: New file.
16743         * lib/mbscspn.c: New file.
16744         * lib/string_.h (strcspn): Add a conditional link warning.
16745         (mbscspn): New declaration.
16746         * m4/mbscspn.m4: New file.
16747         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16748         GNULIB_MBSCSPN.
16749         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
16750         * MODULES.html.sh (Internationalization functions): Add mbscspn.
16751
16752 2007-02-04  Bruno Haible  <bruno@clisp.org>
16753
16754         New module mbscasestr, reduced goal of strcasestr.
16755         * modules/mbscasestr: New file.
16756         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
16757         (mbscasestr): Renamed from strcasestr.
16758         * lib/strcasestr.c: Don't include mbuiter.h.
16759         (strcasestr): Remove support for multibyte locales.
16760         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
16761         Change the conditional link warning.
16762         (mbscasestr): New declaration.
16763         * m4/mbscasestr.m4: New file.
16764         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
16765         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
16766         REPLACE_STRCASESTR.
16767         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
16768         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16769         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16770         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
16771         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
16772         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
16773         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
16774         (Depends-on): Remove mbuiter.
16775         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
16776
16777 2007-02-04  Bruno Haible  <bruno@clisp.org>
16778
16779         Simplify handling of strncasecmp.
16780         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
16781         the conditional link warning.
16782         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16783         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
16784         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
16785         * modules/strcase (configure.ac): Don't invoke
16786         gl_STRING_MODULE_INDICATOR.
16787         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
16788
16789 2007-02-04  Bruno Haible  <bruno@clisp.org>
16790
16791         New module mbscasecmp, reduced goal of strcasecmp.
16792         * modules/mbscasecmp: New file.
16793         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
16794         (mbscasecmp): Renamed from strcasecmp.
16795         * lib/strcasecmp.c: Don't include mbuiter.h.
16796         (strcasecmp): Remove support for multibyte locales.
16797         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
16798         Change the conditional link warning.
16799         (mbscasecmp): New declaration.
16800         * m4/mbscasecmp.m4: New file.
16801         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
16802         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
16803         REPLACE_STRCASECMP.
16804         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
16805         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16806         GNULIB_MBSCASECMP.
16807         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
16808         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
16809         * modules/strcase (Files): Remove m4/mbrtowc.m4.
16810         (Depends-on): Remove mbuiter.
16811         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
16812
16813 2007-02-04  Bruno Haible  <bruno@clisp.org>
16814
16815         New module mbsstr. Remove module strstr.
16816         * modules/mbsstr: New file.
16817         * modules/strstr: Remove file.
16818         * lib/mbsstr.c: Renamed from lib/strstr.c.
16819         (mbsstr): Renamed from strstr.
16820         * lib/string_.h (strstr): Remove declaration. Change the conditional
16821         link warning.
16822         (mbsstr): New declaration.
16823         * m4/mbsstr.m4: New file.
16824         * m4/strstr.m4: Remove file.
16825         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
16826         REPLACE_STRSTR.
16827         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
16828         Don't initialize GNULIB_STRSTR.
16829         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
16830         substitute GNULIB_STRSTR and REPLACE_STRSTR.
16831         * MODULES.html.sh (Internationalization functions): Add mbsstr.
16832         (Support for systems lacking ANSI C 89): Remove strstr.
16833
16834 2007-02-04  Bruno Haible  <bruno@clisp.org>
16835
16836         New module mbsrchr.
16837         * modules/mbsrchr: New file.
16838         * lib/mbsrchr.c: New file.
16839         * lib/string_.h (strrchr): Add a conditional link warning.
16840         (mbsrchr): New declaration.
16841         * m4/mbsrchr.m4: New file.
16842         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16843         GNULIB_MBSRCHR.
16844         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
16845         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
16846
16847 2007-02-04  Bruno Haible  <bruno@clisp.org>
16848
16849         New module mbschr.
16850         * modules/mbschr: New file.
16851         * lib/mbschr.c: New file.
16852         * lib/string_.h (strchr): Add a conditional link warning.
16853         (mbschr): New declaration.
16854         * m4/mbschr.m4: New file.
16855         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
16856         GNULIB_MBSCHR.
16857         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
16858         * MODULES.html.sh (Internationalization functions): Add mbschr.
16859
16860 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
16861
16862         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
16863
16864         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
16865
16866 2007-02-04  Bruno Haible  <bruno@clisp.org>
16867
16868         New module description section 'configure.ac-early'.
16869         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
16870         (func_get_autoconf_early_snippet): New function.
16871         (func_import, func_create_testdir): Use it. Remove special cases for
16872         modules 'extensions' and 'lock'.
16873         * modules/extensions (configure.ac-early): Require
16874         gl_USE_SYSTEM_EXTENSIONS.
16875         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
16876
16877 2007-02-04  Bruno Haible  <bruno@clisp.org>
16878
16879         Make use of gcj-4.3's -fsource and -ftarget option.
16880         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
16881         and if so try the options -fsource and -ftarget.
16882         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
16883         source_version, ftarget_option, target_version arguments.
16884         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
16885         (is_envjavac_oldgcj_14_14_usable): Renamed from
16886         is_envjavac_gcj_14_14_usable.
16887         (is_envjavac_oldgcj_14_13_usable): Renamed from
16888         is_envjavac_gcj_14_13_usable.
16889         (is_gcj_present): Update.
16890         (is_gcj_43, is_gcj43_usable): New functions.
16891         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
16892         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
16893         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
16894         try the options -fsource and -ftarget.
16895
16896 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
16897
16898         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
16899         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
16900         larger value.
16901
16902 2007-02-03  Jim Meyering  <jim@meyering.net>
16903
16904         Give tools a better chance to allocate space for very large buffers.
16905         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
16906
16907         Make pwd and readlink work also when run with an unreadable parent dir
16908         on systems with openat support.
16909         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
16910         provided getcwd function, even when we have openat support.
16911         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
16912
16913 2007-02-02  Bruno Haible  <bruno@clisp.org>
16914
16915         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
16916         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
16917         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
16918         portability problems if one of these functions is only used on specific
16919         platforms.
16920         Reported by Paul Eggert.
16921
16922 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
16923
16924         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
16925         is causing more trouble than it's curing.
16926         * lib/regex_internal.h (__mempcpy): Remove.
16927         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
16928         (and make the code a tad smaller to boot).
16929         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
16930
16931 2007-02-02  Jim Meyering  <jim@meyering.net>
16932
16933         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
16934         section, not in the Makefile.am: one.
16935
16936 2007-02-02  Eric Blake  <ebb9@byu.net>
16937
16938         * lib/strchrnul.c: Always include config.h first.
16939
16940         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
16941         gnulib strstr is not necessary here.
16942
16943 2007-02-02  Simon Josefsson  <simon@josefsson.org>
16944
16945         * m4/socklen.m4: Fix typo.
16946
16947 2007-02-02  Eric Blake  <ebb9@byu.net>
16948
16949         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
16950         * modules/netinet_in (Makefile.am): Likewise.
16951
16952 2007-02-01  Bruno Haible  <bruno@clisp.org>
16953
16954         * lib/string_.h (GL_LINK_WARNING): New macro.
16955         (strcasecmp, strstr, strcasestr): If provided by the system,
16956         conditionally define as a macro that leads to a warning instead of to
16957         an error.
16958         (strncasecmp): Conditionally define as a macro that leads to a warning.
16959
16960 2007-02-01  Karl Berry  <karl@gnu.org>
16961
16962         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
16963
16964 2007-02-01  Bruno Haible  <bruno@clisp.org>
16965
16966         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
16967         renamings.
16968
16969 2007-02-01  Eric Blake  <ebb9@byu.net>
16970
16971         * modules/regex (Depends-on): Revert dependence on mempcpy.
16972         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
16973         module's definition of mempcpy.
16974         Reported by Paul Eggert.
16975
16976 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
16977
16978         * lib/string_.h: If the gnulib module XYZ is not present, undefine
16979         the symbol XYZ before redefining it.  This fixes a problem with
16980         programs that don't use XYZ, when compiled on systems that define
16981         XYZ to something else.
16982
16983 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
16984
16985         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
16986         occurs when "mkdir -m foo" creates a setgid directory that is (1)
16987         writeable to group or other and (2) is intended to have a special
16988         mode bit that is set or cleared.  In such a case, the directory
16989         should be neither group- nor other-writeable until the special
16990         mode bits are right.
16991
16992 2007-01-31  Eric Blake  <ebb9@byu.net>
16993
16994         * modules/mountlist (Depends-on): Add strstr.
16995
16996         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
16997         bug.
16998         * modules/string (Makefile.am): Remove redundant replacement.
16999         * modules/regex (Depends-on): Add mempcpy.
17000
17001 2007-01-31  Bruno Haible  <bruno@clisp.org>
17002
17003         New module description field 'Link'.
17004         * gnulib-tool (func_usage): Document --extract-link-directive.
17005         (sed_extract_prog): Recognize 'Link' directive.
17006         (func_get_link_directive): New function.
17007         (func_import): Show summary of link directives.
17008         Handle --extract-link-directive option.
17009         * modules/acl (Link): New section.
17010         * modules/clock-time (Link): New section.
17011         * modules/euidaccess (Link): New section.
17012         * modules/gettext (Link): New section.
17013         * modules/iconv (Link): New section.
17014         * modules/lock (Link): New section.
17015         * modules/nanosleep (Link): New section.
17016         * modules/readline (Link): New section.
17017
17018 2007-01-27  Bruno Haible  <bruno@clisp.org>
17019
17020         Enforce the use of gnulib modules for unportable <string.h> functions.
17021         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
17022         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
17023         (gl_HEADER_STRING_H_BODY): Require it.
17024         * lib/string_.h: If the gnulib module XYZ is not present, redefine
17025         the symbol XYZ to one that gives a link error.
17026         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
17027         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
17028         * modules/mempcpy (configure.ac): Likewise.
17029         * modules/memrchr (configure.ac): Likewise.
17030         * modules/stpcpy (configure.ac): Likewise.
17031         * modules/stpncpy (configure.ac): Likewise.
17032         * modules/strcase (configure.ac): Likewise.
17033         * modules/strcasestr (configure.ac): Likewise.
17034         * modules/strchrnul (configure.ac): Likewise.
17035         * modules/strdup (configure.ac): Likewise.
17036         * modules/strndup (configure.ac): Likewise.
17037         * modules/strnlen (configure.ac): Likewise.
17038         * modules/strpbrk (configure.ac): Likewise.
17039         * modules/strsep (configure.ac): Likewise.
17040         * modules/strstr (configure.ac): Likewise.
17041         * modules/strtok_r (configure.ac): Likewise.
17042
17043 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
17044
17045         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
17046
17047 2007-01-30  Jim Meyering  <jim@meyering.net>
17048
17049         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
17050
17051 2007-01-29  Bruno Haible  <bruno@clisp.org>
17052
17053         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
17054         * lib/execute.c: Likewise.
17055         * lib/pipe.c: Likewise.
17056         * lib/printf-args.h: Likewise.
17057         * lib/printf-args.c: Likewise.
17058         * lib/printf-parse.c: Likewise.
17059         * lib/vasnprintf.c: Likewise.
17060
17061 2007-01-29  Eric Blake  <ebb9@byu.net>
17062
17063         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
17064         declaration.
17065
17066 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
17067
17068         * lib/strptime.h (strptime): Use 'restrict' for args where
17069         POSIX requires this.
17070         * lib/strptime.c (strptime): Likewise.
17071         Change license notice from LGPL to GPL, since gnulib-tool will
17072         change this as needed.
17073         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
17074         defined.
17075         Include "strptime.h" first, to check interface.
17076         Do not #undef _LIBC and _NL_CURRENT.
17077         Do not include <stdlib.h>; no longer needed.
17078         Include "time_r.h" and declare ptime_locale_status
17079         only if _LIBC is not defined.
17080         (__P): Remove unused macro.
17081         (match_string): Bring back glibc version, but use it only if _LIBC
17082         is defined.
17083         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
17084         Remove unnecessary assertion and abort() call.
17085         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
17086         * m4/strptime.m4: Fix serial number comment.
17087         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
17088         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
17089         (Depends-on): Add time_r.
17090
17091 2007-01-29  Bruno Haible  <bruno@clisp.org>
17092
17093         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
17094         strptime.
17095         * modules/strptime (Depends-on): Add stdbool.
17096         * lib/strptime.h: Include <time.h> always. Add comments.
17097
17098 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
17099
17100         * modules/strptime: New file.
17101         * lib/strptime.h: New file.
17102         * lib/strptime.c: New file.
17103         * m4/strptime.m4: New file.
17104
17105 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
17106
17107         * MODULES.html.sh: New module mpsort.
17108         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
17109
17110         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
17111         a circularity problem with HP-UX ia64 reported by Bob Proulx in
17112         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
17113         All uses changed.
17114         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
17115         All uses changed.
17116         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
17117         to _Restrict_.
17118         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
17119         the parameter matches the prototype.
17120
17121 2007-01-28  Jim Meyering  <jim@meyering.net>
17122
17123         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
17124         sys/time.h here, reverting that part of the previous patch:
17125         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
17126
17127 2007-01-28  Bruno Haible  <bruno@clisp.org>
17128
17129         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
17130         value of $(SYS_TIME_H).
17131         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
17132         remove it conditionally, too. [added by Jim Meyering]
17133         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
17134         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
17135         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
17136         GETTIMEOFDAY_REPLACEMENT to 1.
17137
17138 2007-01-28  Bruno Haible  <bruno@clisp.org>
17139
17140         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
17141         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
17142         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
17143         Set UNISTD_H instead of UNISTD_H2.
17144         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
17145
17146 2007-01-28  Bruno Haible  <bruno@clisp.org>
17147
17148         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
17149         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
17150
17151 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17152
17153         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
17154         (func_create_testdir): Ensure C locale for `grep' and `tr'
17155         character ranges.
17156         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
17157         ACLOCAL_AMFLAGS parsing state machine.
17158
17159 2007-01-27  Bruno Haible  <bruno@clisp.org>
17160
17161         * modules/unistr/base: Update.
17162
17163 2007-01-27  Bruno Haible  <bruno@clisp.org>
17164
17165         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
17166         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
17167         * modules/unistr/u32-mbtouc-unsafe: Renamed from
17168         modules/unistr/u32-mbtouc.
17169         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
17170         * lib/unistr.h: Update.
17171         * lib/linebreak.c: Update.
17172         * modules/unistr/u32-mbtouc: Renamed from
17173         modules/unistr/u32-mbtouc-safe.
17174         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
17175         * lib/unistr.h: Update.
17176         * lib/unistr/u32-to-u8.c: Update.
17177         * lib/unistr/u32-to-u16.c: Update.
17178
17179 2007-01-27  Bruno Haible  <bruno@clisp.org>
17180
17181         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
17182         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
17183         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
17184         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
17185         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
17186         * modules/unistr/u16-mbtouc-unsafe: Renamed from
17187         modules/unistr/u16-mbtouc.
17188         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
17189         * lib/unistr.h: Update.
17190         * lib/linebreak.c: Update.
17191         * modules/linebreak: Update.
17192         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
17193         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
17194         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
17195         * modules/unistr/u16-mbtouc: Renamed from
17196         modules/unistr/u16-mbtouc-safe.
17197         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
17198         * lib/unistr.h: Update.
17199         * lib/unistr/u16-to-u8.c: Update.
17200         * modules/unistr/u16-to-u8: Update.
17201         * lib/unistr/u16-to-u32.c: Update.
17202         * modules/unistr/u16-to-u32: Update.
17203
17204 2007-01-27  Bruno Haible  <bruno@clisp.org>
17205
17206         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
17207         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
17208         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
17209         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
17210         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
17211         * modules/unistr/u8-mbtouc-unsafe: Renamed from
17212         modules/unistr/u8-mbtouc.
17213         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
17214         * lib/unistr.h: Update.
17215         * lib/striconveh.c: Update.
17216         * modules/striconveh: Update.
17217         * lib/linebreak.c: Update.
17218         * modules/linebreak: Update.
17219         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
17220         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
17221         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
17222         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
17223         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
17224         * lib/unistr.h: Update.
17225         * lib/striconveh.c: Update.
17226         * modules/striconveh: Update.
17227         * lib/unistr/u8-to-u16.c: Update.
17228         * modules/unistr/u8-to-u16: Update.
17229         * lib/unistr/u8-to-u32.c: Update.
17230         * modules/unistr/u8-to-u32: Update.
17231
17232 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17233
17234         Sync from Libtool.
17235         * lib/argz.c: Do not include strings.h nor memory.h, include
17236         string.h unconditionally.  Patch by Simon Josefsson.
17237
17238 2007-01-27  Bruno Haible  <bruno@clisp.org>
17239
17240         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
17241         from gl_HEADER_STRING_H_BODY.
17242         (gl_HEADER_STRING_H_BODY): Require it.
17243         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
17244         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
17245         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
17246         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
17247         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
17248         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
17249         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
17250         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
17251         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
17252         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
17253         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
17254         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
17255         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
17256         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
17257         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17258
17259 2007-01-27  Bruno Haible  <bruno@clisp.org>
17260
17261         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
17262         check_PROGRAMS into noinst_PROGRAMS.
17263         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
17264         check_PROGRAMS in this case.
17265         (func_import): Set for_test to false.
17266         (func_create_testdir): Set for_test to true.
17267
17268 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
17269             Bruno Haible  <bruno@clisp.org>
17270
17271         * modules/strcasestr (Files): Remove lib/strcasestr.h.
17272         (Depends-on): Add string.
17273         (Includes): Use <string.h> instead of strcasestr.h.
17274         * modules/string (Makefile.am): Also substitute the value of
17275         REPLACE_STRCASESTR.
17276         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
17277         assume strcasestr is declared in <string.h> not <strings.h>. Also
17278         set REPLACE_STRCASESTR.
17279         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
17280         REPLACE_STRCASESTR.
17281         * lib/strcasestr.h: Remove file.
17282         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
17283         * lib/string_.h (strcasestr): New declaration.
17284
17285 2007-01-27  Bruno Haible  <bruno@clisp.org>
17286
17287         * lib/string_.h: Use 'extern'.
17288
17289 2007-01-27  Jim Meyering  <jim@meyering.net>
17290
17291         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
17292         of set-but-not-used local, "q".
17293
17294         * lib/mempcpy.c: Include <config.h> before <string.h>.
17295         This fixes a compilation error on HP-UX, due to the system's
17296         "restrict"-using mempcpy prototype.
17297
17298 2007-01-26  Bruno Haible  <bruno@clisp.org>
17299
17300         Small optimization.
17301         * lib/javacomp.c: Include c-strstr.h.
17302          (is_envjavac_gcj): Use c_strstr instead of strstr.
17303         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
17304
17305 2007-01-26  Bruno Haible  <bruno@clisp.org>
17306
17307         * MODULES.html.sh (Unicode string functions): Add the new modules.
17308
17309         * modules/uniconv/u32-strconv-to-locale: New file.
17310         * lib/uniconv/u32-strconv-to-locale.c: New file.
17311
17312         * modules/uniconv/u16-strconv-to-locale: New file.
17313         * lib/uniconv/u16-strconv-to-locale.c: New file.
17314
17315         * modules/uniconv/u8-strconv-to-locale: New file.
17316         * lib/uniconv/u8-strconv-to-locale.c: New file.
17317
17318         * modules/uniconv/u32-strconv-from-locale: New file.
17319         * lib/uniconv/u32-strconv-from-locale.c: New file.
17320
17321         * modules/uniconv/u16-strconv-from-locale: New file.
17322         * lib/uniconv/u16-strconv-from-locale.c: New file.
17323
17324         * modules/uniconv/u8-strconv-from-locale: New file.
17325         * lib/uniconv/u8-strconv-from-locale.c: New file.
17326
17327         * modules/uniconv/u32-strconv-to-enc: New file.
17328         * lib/uniconv/u32-strconv-to-enc.c: New file.
17329         * modules/uniconv/u32-strconv-to-enc-tests: New file.
17330         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
17331
17332         * modules/uniconv/u16-strconv-to-enc: New file.
17333         * lib/uniconv/u16-strconv-to-enc.c: New file.
17334         * lib/uniconv/u-strconv-to-enc.h: New file.
17335         * modules/uniconv/u16-strconv-to-enc-tests: New file.
17336         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
17337
17338         * modules/uniconv/u8-strconv-to-enc: New file.
17339         * lib/uniconv/u8-strconv-to-enc.c: New file.
17340         * modules/uniconv/u8-strconv-to-enc-tests: New file.
17341         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
17342
17343         * modules/uniconv/u32-strconv-from-enc: New file.
17344         * lib/uniconv/u32-strconv-from-enc.c: New file.
17345         * modules/uniconv/u32-strconv-from-enc-tests: New file.
17346         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
17347
17348         * modules/uniconv/u16-strconv-from-enc: New file.
17349         * lib/uniconv/u16-strconv-from-enc.c: New file.
17350         * modules/uniconv/u16-strconv-from-enc-tests: New file.
17351         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
17352
17353         * modules/uniconv/u8-strconv-from-enc: New file.
17354         * lib/uniconv/u8-strconv-from-enc.c: New file.
17355         * lib/uniconv/u-strconv-from-enc.h: New file.
17356         * modules/uniconv/u8-strconv-from-enc-tests: New file.
17357         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
17358
17359         * modules/uniconv/u32-conv-from-enc: New file.
17360         * lib/uniconv/u32-conv-from-enc.c: New file.
17361         * modules/uniconv/u32-conv-from-enc-tests: New file.
17362         * tests/uniconv/test-u32-conv-from-enc.c: New file.
17363
17364         * modules/uniconv/u16-conv-from-enc: New file.
17365         * lib/uniconv/u16-conv-from-enc.c: New file.
17366         * lib/uniconv/u-conv-from-enc.h: New file.
17367         * modules/uniconv/u16-conv-from-enc-tests: New file.
17368         * tests/uniconv/test-u16-conv-from-enc.c: New file.
17369
17370         * modules/uniconv/u8-conv-from-enc: New file.
17371         * lib/uniconv/u8-conv-from-enc.c: New file.
17372         * modules/uniconv/u8-conv-from-enc-tests: New file.
17373         * tests/uniconv/test-u8-conv-from-enc.c: New file.
17374
17375         * modules/uniconv/base: New file.
17376         * lib/uniconv.h: New file.
17377
17378 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17379
17380         * doc/gnulib-tool.texi (Initial import): Update to match current
17381         behavior with strdup module.
17382         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
17383         * lib/memmem.h: Remove; all uses removed.  This is now done
17384         by <string.h>.
17385         * lib/mempcpy.h: Likewise.
17386         * lib/memrchr.h: Likewise.
17387         * lib/stpcpy.h: Likewise.
17388         * lib/stpncpy.h: Likewise.
17389         * lib/strcase.h: Likewise.
17390         * lib/strchrnul.h: Likewise.
17391         * lib/strdup.h: Likewise.
17392         * lib/strndup.h: Likewise.
17393         * lib/strnlen.h: Likewise.
17394         * lib/strpbrk.h: Likewise.
17395         * lib/strsep.h: Likewise.
17396         * lib/strstr.h: Likewise.
17397         * lib/strtok_r.h: Likewise.
17398         * lib/string_.h: New file.
17399         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
17400         Rely on <string.h> instead.
17401         * lib/canon-host.c: Likewise.
17402         * lib/chdir-long.c: Likewise.
17403         * lib/concatpath.c: Likewise.
17404         * lib/exclude.c: Likewise.
17405         * lib/fchdir.c: Likewise.
17406         * lib/getaddrinfo.c: Likewise.
17407         * lib/getcwd.c: Likewise.
17408         * lib/getsubopt.c: Likewise.
17409         * lib/glob.c: Likewise.
17410         * lib/hard-locale.c: Likewise.
17411         * lib/iconvme.c: Likewise.
17412         * lib/javacomp.c: Likewise.
17413         * lib/mempcpy.c: Likewise.
17414         * lib/memrchr.c: Likewise.
17415         * lib/regex_internal.h: Likewise.
17416         * lib/stpncpy.c: Likewise.
17417         * lib/strcasecmp.c: Likewise.
17418         * lib/strchrnul.c: Likewise.
17419         * lib/strdup.c: Likewise.
17420         * lib/striconv.c: Likewise.
17421         * lib/striconveh.c: Likewise.
17422         * lib/striconveha.c: Likewise.
17423         * lib/strncasecmp.c: Likewise.
17424         * lib/strndup.c: Likewise.
17425         * lib/strnlen.c: Likewise.
17426         * lib/strsep.c: Likewise.
17427         * lib/strstr.c: Likewise.
17428         * lib/strtok_r.c: Likewise.
17429         * lib/userspec.c: Likewise.
17430         * lib/w32spawn.h: Likewise.
17431         * lib/xstrndup.c: Likewise.
17432         * lib/mountlist.c (strstr): Remove decl.
17433         * m4/string_h.m4: New file.
17434         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
17435         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
17436         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
17437         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
17438         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
17439         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
17440         Set REPLACE_STRCASECMP if necessary.
17441         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
17442         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
17443         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
17444         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
17445         HAVE_DECL_STRDUP if necessary.
17446         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
17447         since gl_FUNC_STRNDUP does that now.
17448         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
17449         Check for decl here...
17450         (gl_PREREQ_STRNLEN): ... not here.
17451         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
17452         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
17453         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
17454         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
17455         necessary.
17456         * modules/string: New file.
17457         * modules/memmem (Files): Remove special-purpose include file.
17458         (Depends-on): Add string.
17459         (Include): Include <string.h>, not the removed file.
17460         * modules/mempcpy: Likewise.
17461         * modules/memrchr: Likewise.
17462         * modules/stpcpy: Likewise.
17463         * modules/stpncpy: Likewise.
17464         * modules/strcase: Likewise.
17465         * modules/strchrnul: Likewise.
17466         * modules/strdup: Likewise.
17467         * modules/strndup: Likewise.
17468         * modules/strnlen: Likewise.
17469         * modules/strpbrk: Likewise.
17470         * modules/strsep: Likewise.
17471         * modules/strstr: Likewise.
17472         * modules/strtok_r: Likewise.
17473         * tests/test-dirname.c: Don't include "strdup.h", since
17474         <string.h> now suffices.
17475         * tests/test-memmem.c: Don't include "memmem.h", since
17476         <string.h> now suffices.
17477
17478 2007-01-25  Bruno Haible  <bruno@clisp.org>
17479
17480         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
17481         *resultp is 0.
17482
17483         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
17484         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
17485         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
17486         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
17487
17488         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
17489         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
17490         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
17491         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
17492         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
17493         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
17494
17495 2007-01-24  Bruno Haible  <bruno@clisp.org>
17496
17497         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
17498         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
17499         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
17500         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
17501         gl_FUNC_FTS_CORE.
17502         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
17503         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
17504         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
17505         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
17506         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
17507         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
17508         gl_FUNC_FCHOWNAT.
17509         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
17510         gl_FUNC_STRFTIME.
17511         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
17512         Reported by Ralf Wildenhues.
17513
17514 2007-01-24  Bruno Haible  <bruno@clisp.org>
17515
17516         Drop AC_REQUIRE calls that are redundant with the module dependencies.
17517         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
17518         gl_GETADDRINFO.
17519         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
17520         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
17521         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
17522
17523 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
17524
17525         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
17526         Don't use 'exit'; just return from 'main'.
17527         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
17528
17529         * lib/fnmatch_.h: Readjust white space and comments to match
17530         glibc, to avoid spurious diffs.
17531
17532 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17533
17534         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
17535         2004-12-01 change by Jakub Jelinek, since this code won't compile
17536         if !LIBC.  Problem reported by Bob Proulx.
17537
17538 2007-01-23  Bruno Haible  <bruno@clisp.org>
17539
17540         * lib/striconveh.c: Include c-strcaseeq.h.
17541         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
17542         * modules/striconveh (Depends-on): Add c-strcaseeq.
17543
17544 2007-01-23  Bruno Haible  <bruno@clisp.org>
17545
17546         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
17547
17548         * modules/c-strcaseeq: New file.
17549         * lib/c-strcaseeq.h: New file.
17550
17551         * modules/streq: New file.
17552         * lib/streq.h: New file.
17553
17554 2007-01-23  Bruno Haible  <bruno@clisp.org>
17555
17556         * modules/striconveha-tests: New file.
17557         * tests/test-striconveha.c: New file.
17558
17559         * lib/striconveha.h: Include <stdbool.h>.
17560         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
17561         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
17562         (mem_iconveha_notranslit): Renamed from mem_iconveha.
17563         (mem_iconveha): New function.
17564         (str_iconveha_notranslit): Renamed from str_iconveha.
17565         (str_iconveha): New function.
17566         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
17567         c-strcase.
17568
17569 2007-01-23  Bruno Haible  <bruno@clisp.org>
17570
17571         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
17572         encodings without forgiving before trying any encoding with handler.
17573         (str_iconveha): Try all encodings without forgiving before trying any
17574         encoding with handler.
17575
17576 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17577
17578         Import the following changes from libc.
17579
17580         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
17581
17582         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
17583
17584         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
17585
17586         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
17587         normal_bracket label.
17588
17589         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
17590
17591         [BZ #361]
17592         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
17593         to normal_bracket after fetching the next character.
17594
17595 2007-01-22  Bruno Haible  <bruno@clisp.org>
17596
17597         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
17598         argument.
17599         * lib/striconveh.c (iconv_carefully_1): New function.
17600         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
17601         argument.
17602         (str_cd_iconveh): Update.
17603         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
17604         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
17605         * tests/test-striconveh.c (MAGIC): New macro.
17606         (new_offsets): New function.
17607         (main): Test call with and without offsets.
17608
17609 2007-01-22  Bruno Haible  <bruno@clisp.org>
17610
17611         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
17612         * modules/sys_select (Makefile.am): Likewise.
17613         * modules/sys_socket (Makefile.am): Likewise.
17614         * modules/sys_time (Makefile.am): Likewise.
17615
17616 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
17617
17618         * modules/gettimeofday (License): Change from GPL to LGPL, since
17619         gettimeofday is a library function.
17620
17621 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17622
17623         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
17624
17625 2007-01-21  Bruno Haible  <bruno@clisp.org>
17626
17627         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
17628
17629 2007-01-21  Bruno Haible  <bruno@clisp.org>
17630
17631         * modules/striconveha: New file.
17632         * lib/striconveha.h: New file.
17633         * lib/striconveha.c: New file.
17634         * MODULES.html.sh (Internationalization functions): Add striconveha.
17635         * lib/striconv.c (str_iconv): Optimize the case of an empty input
17636         string.
17637         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
17638
17639 2007-01-21  Bruno Haible  <bruno@clisp.org>
17640
17641         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
17642         * lib/striconveh.c (str_iconveh): Likewise.
17643
17644 2007-01-21  Bruno Haible  <bruno@clisp.org>
17645
17646         * lib/striconveh.h (mem_iconveh): New declaration.
17647         * lib/striconveh.c (mem_iconveh): New function.
17648         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
17649
17650 2007-01-21  Bruno Haible  <bruno@clisp.org>
17651
17652         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
17653
17654         * lib/striconveh.h (mem_cd_iconveh): Change specification.
17655         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
17656         original result buffer.
17657         (str_cd_iconveh): Update.
17658         * tests/test-striconveh.c (main): Update.
17659
17660         * lib/striconv.h (mem_cd_iconv): Change specification.
17661         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
17662         result buffer.
17663         (str_cd_iconv): Update.
17664         * tests/test-striconv.c (main): Update.
17665
17666 2007-01-21  Bruno Haible  <bruno@clisp.org>
17667
17668         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
17669
17670 2007-01-20  Jim Meyering  <jim@meyering.net>
17671
17672         * lib/userspec.c (parse_with_separator): If a user or group string
17673         starts with "+", skip the corresponding name-to-ID look-up, since
17674         such a look-up must fail: user and group names may not include "+".
17675
17676 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
17677
17678         * lib/poll.c: Include sys/time.h and time.h unconditionally,
17679         since we now assume the sys_time module.
17680         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
17681         check for sys/time.h; no longer needed.
17682         * modules/poll (Depends-on): Depend on sys_time.
17683
17684 2007-01-18  Bruno Haible  <bruno@clisp.org>
17685
17686         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
17687         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17688
17689         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
17690         gettimeofday.
17691
17692         * tests/test-gettimeofday.c: Include <time.h>.
17693         (dummy): Remove variable.
17694
17695         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
17696         gl_HEADER_SYS_TIME_H.
17697         (gl_HEADER_SYS_TIME_H): New macro.
17698
17699         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
17700         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17701         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
17702         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
17703         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17704         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
17705         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
17706         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17707         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
17708         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
17709         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17710
17711         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
17712         last change; it caused a compilation error when cross-compiling to
17713         Cygwin.
17714
17715 2007-01-18  Jim Meyering  <jim@meyering.net>
17716
17717         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
17718         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
17719         than the race-prone "test -d sys || mkdir sys".
17720         (configure.ac): Use AC_PROG_MKDIR_P.
17721         * modules/sys_select: Likewise.
17722         * modules/sys_socket: Likewise.
17723         * modules/sys_time: Likewise.
17724
17725 2007-01-18  Eric Blake  <ebb9@byu.net>
17726
17727         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
17728         replace gettimeofday.
17729         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
17730         name, to avoid infinite recursion.
17731
17732 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
17733
17734         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
17735         module sys_time.
17736         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
17737         assume timespec.h defines struct timeval.
17738         * lib/settime.c: Likewise.
17739         * lib/utimens.c: Likewise.
17740         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
17741         since we now assume the gettimeofday module.
17742         * lib/tempname.c (__gen_tempname): Likewise.
17743         * lib/gettimeofday.h: Remove.
17744         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
17745         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
17746         Include <time.h>, for 'time()'.
17747         (localtime_buffer_addr): Also use this workaround if
17748         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
17749         to simplify the uses.  All uses changed.
17750         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
17751         that #undef is inside {}, and 'const' follows type name consistently.
17752         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
17753         (gettimeofday): Do not use the maximum possible value for
17754         tv->tv_usec, since that might break usages other than ls.c.
17755         Instead, we'll leave ls.c alone.  This undoes today's patch
17756         by Bruno.  Add a compile-time warning for 1s-clock resolution;
17757         we've never observed the problem but might as well keep the
17758         canary.
17759         * lib/nanosleep.c: Include timespec.h first, for interface check.
17760         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
17761         now assume the sys_time module.
17762         * lib/tempname.c: Likewise.
17763         * lib/timespec.h: Likewise.
17764         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
17765         needed.
17766         * lib/strftime.c: Likewise.
17767         * lib/timespec.h: Likewise.
17768         * lib/posixtm.c: Include posixtm.h first, for interface check.
17769         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
17770         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
17771         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
17772         * lib/sys_time_.h: New file.
17773         * lib/timespec.h (struct timespec): Use long int, not long.
17774         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
17775         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
17776         Remove obsolescent call to AC_HEADER_TIME.
17777         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
17778         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17779         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
17780         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
17781         Likewise.
17782         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
17783         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
17784         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
17785         into the sys_time module.  Check for gettimeofday just once.
17786         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
17787         for gettimeofday signature to just check the signature.  Merely
17788         compile it, since linking doesn't test signature.  Improve test for
17789         whether gettimeofday.o is actually needed.
17790         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
17791         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
17792         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
17793         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17794         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
17795         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
17796         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
17797         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
17798         than worrying about sys/time.h.
17799         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
17800         Don't bother worrying about TIME_WITH_SYS_TIME.
17801         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
17802         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
17803         * m4/sys_time_h.m4: New file.
17804         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
17805         Don't include sys/time.h.  Return from main rather than exiting.
17806         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
17807         all uses changed.
17808         * modules/gethrxtime (Depends-on): Add sys_time.
17809         * modules/gettime (Depends-on): Likewise.
17810         * modules/gettimeofday (Depends-on): Likewise.
17811         * modules/nanosleep (Depends-on): Likewise.
17812         * modules/settime (Depends-on): Likewise.
17813         * modules/tempname (Depends-on): Likewise.
17814         * modules/utimens (Depends-on): Likewise.
17815         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
17816         (Include:) Change back to <sys/time.h>.
17817         (Maintainer:) Add self.
17818         * modules/sys_time: New file.
17819         * modules/tempname (Depends-on): Add gettimeofday.
17820         * tests/test-gettimeofday.c: Include <sys/time.h>
17821         rather than gettimeofday.h.
17822
17823 2007-01-17  Bruno Haible  <bruno@clisp.org>
17824
17825         * gnulib-tool (func_get_license): Revert last patch. Instead, let
17826         the license default to GPL.
17827         (func_create_testdir): Don't complain if a module is LGPL and its
17828         tests module depends on GPLed modules.
17829
17830 2007-01-17  Bruno Haible  <bruno@clisp.org>
17831
17832         * lib/gettimeofday.c (gettimeofday): Add code for the case
17833         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
17834         maximum possible value for tv->tv_usec, rather than the minimum one.
17835
17836 2005-10-08  Martin Lambers  <marlam@marlam.de>
17837 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17838 2007-01-16  Bruno Haible  <bruno@clisp.org>
17839
17840         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
17841         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
17842         gl_FUNC_GETTIMEOFDAY.
17843         (Include): Add gettimeofday.h.
17844         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
17845         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
17846         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
17847         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
17848         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
17849         * lib/gettimeofday.h: New file.
17850         * lib/gettimeofday.c: Include <sys/timeb.h>.
17851         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
17852         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
17853         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
17854         fall back on time().
17855
17856         * tests/test-gettimeofday.c: New file.
17857         * modules/gettimeofday-tests: New file.
17858
17859 2007-01-16  Eric Blake  <ebb9@byu.net>
17860
17861         * modules/fnmatch (Depends-on): Depend on wchar.
17862         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
17863         * m4/fnmatch.m4: Likewise.
17864         * modules/mbchar (Makefile.am): Assume <wchar.h>.
17865         * m4/mbchar.m4: Likewise.
17866         * modules/mbswidth (Depends-on): Depend on wchar.
17867         * lib/mbswidth.c: Assume <wchar.h>.
17868         * m4/mbswidth.m4: Likewise.
17869         * modules/quotearg (Depends-on): Depend on wchar.
17870         * lib/quotearg.c: Assume <wchar.h>.
17871         * m4/quotearg.m4: Likewise.
17872         * modules/regex (Depends-on): Depend on wchar.
17873         * lib/regex_internal.h: Assume <wchar.h>.
17874         * m4/regex.m4: Likewise.
17875         * modules/stdint (Depends-on): Depend on wchar.
17876         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
17877         * m4/stdint.m4: Likewise.
17878         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
17879         * modules/strftime (Depends-on): Depend on wchar.
17880         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
17881         * modules/strtol (Depends-on): Depend on wchar.
17882         * lib/strtol.c: Assume <wchar.h>.
17883         * modules/wcwidth (Depends-on): Depend on wchar.
17884         * lib/wcwidth.h: Assume <wchar.h>.
17885         * m4/wcwidth.m4: Likewise.
17886
17887 2007-01-16  Bruno Haible  <bruno@clisp.org>
17888
17889         * modules/csharpexec-script: New, created from...
17890         * modules/csharpexec: ... this.
17891
17892 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
17893
17894         * modules/javaexec-script: New, created from...
17895         * modules/javaexec: ... this.
17896
17897 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17898
17899         * modules/poll (Dependencies): Add sys_select.
17900
17901 2007-01-15  Jim Meyering  <jim@meyering.net>
17902
17903         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
17904         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
17905         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
17906         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
17907
17908 2007-01-15  Bruno Haible  <bruno@clisp.org>
17909
17910         * modules/striconveh: New file.
17911         * lib/striconveh.h: New file.
17912         * lib/striconveh.c: New file.
17913         * MODULES.html.sh (Internationalization functions): Add striconveh.
17914
17915         * modules/striconveh-tests: New file.
17916         * tests/test-striconveh.c: New file.
17917
17918 2007-01-15  Bruno Haible  <bruno@clisp.org>
17919
17920         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
17921         not from GNU libiconv or GNU libc.
17922
17923 2007-01-15  Bruno Haible  <bruno@clisp.org>
17924
17925         * doc/gnulib-intro.texi (Copyright): Explain the different license
17926         terms for module descriptions, autoconf macros, tests, documentation.
17927
17928 2007-01-14  Bruno Haible  <bruno@clisp.org>
17929
17930         * modules/striconv-tests: New file.
17931         * tests/test-striconv.c: New file.
17932
17933 2007-01-14  Bruno Haible  <bruno@clisp.org>
17934
17935         * modules/iconv-tests: New file.
17936         * tests/test-iconv.c: New file.
17937
17938 2007-01-14  Bruno Haible  <bruno@clisp.org>
17939
17940         * gnulib-tool (func_get_license): For test modules, use the license of
17941         the main module.
17942
17943 2007-01-14  Bruno Haible  <bruno@clisp.org>
17944
17945         * modules/iconv (Include): Clarify that <iconv.h> can only be included
17946         if iconv is found to exist.
17947
17948 2007-01-14  Bruno Haible  <bruno@clisp.org>
17949
17950         * modules/c-ctype-tests: New file.
17951         * tests/test-c-ctype.c: New file.
17952
17953 2007-01-14  Bruno Haible  <bruno@clisp.org>
17954
17955         * modules/binary-io-tests: New file.
17956         * tests/test-binary-io.sh: New file.
17957         * tests/test-binary-io.c: New file.
17958
17959 2007-01-14  Bruno Haible  <bruno@clisp.org>
17960
17961         * modules/array-oset-tests: New file.
17962         * tests/test-array_oset.c: New file.
17963
17964 2007-01-14  Bruno Haible  <bruno@clisp.org>
17965
17966         * modules/array-list-tests: New file.
17967         * tests/test-array_list.c: New file.
17968
17969 2007-01-14  Bruno Haible  <bruno@clisp.org>
17970
17971         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
17972         and make.
17973         Reported by Simon Josefsson in
17974         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
17975
17976 2007-01-14  Bruno Haible  <bruno@clisp.org>
17977
17978         * modules/allocsa-tests: New file.
17979         * tests/test-allocsa.c: New file.
17980
17981 2007-01-14  Bruno Haible  <bruno@clisp.org>
17982
17983         * modules/fchdir (Depends-on): Add absolute-header.
17984         * modules/unistd (Depends-on): Likewise.
17985
17986 2006-12-30  Bruno Haible  <bruno@clisp.org>
17987
17988         * modules/fchdir: New file.
17989         * modules/unistd (Files): Add lib/unistd_.h.
17990         (Makefile.am): Generate unistd.h from unistd_.h.
17991         * lib/fchdir.c: New file.
17992         * lib/dirent_.h: New file.
17993         * lib/unistd_.h: New file.
17994         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
17995         * m4/fchdir.m4: New file.
17996         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
17997         (gl_HEADER_UNISTD): Invoke it.
17998         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
17999         function.
18000         * lib/backupfile.c (opendir, closedir): Undefine.
18001         * lib/chown.c (open, close): Undefine.
18002         * lib/clean-temp.c (open, close): Undefine.
18003         * lib/copy-file.c (open, close): Undefine.
18004         * lib/execute.c (open, close): Undefine.
18005         * lib/fsusage.c (open, close): Undefine.
18006         * lib/gc-gnulib.c (open, close): Undefine.
18007         * lib/getcwd.c (opendir, closedir): Undefine.
18008         * lib/glob.c (opendir, closedir): Undefine.
18009         * lib/javacomp.c (open, close): Undefine.
18010         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
18011         * lib/openat-proc.c (open, close): Undefine.
18012         * lib/pagealign_alloc.c (open, close): Undefine.
18013         * lib/pipe.c (open, close): Undefine.
18014         * lib/progreloc.c (open, close): Undefine.
18015         * lib/savedir.c (opendir, closedir): Undefine.
18016         * lib/utime.c (open, close): Undefine.
18017         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
18018
18019 2007-01-10  Bruno Haible  <bruno@clisp.org>
18020
18021         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
18022
18023 2007-01-12  Eric Blake  <ebb9@byu.net>
18024
18025         Provide a robust <wchar.h>.  Further simplifications are now
18026         possible in other modules, but not included here.
18027         * modules/wchar: New module.
18028         * m4/wchar.m4: New file.
18029         * lib/wchar_.h: Likewise.
18030         * modules/mbchar (Depends-on): Depend on wchar, as the first use
18031         of the new module.
18032         * MODULES.html.sh (Extended multibyte and wide character utilities):
18033         New section.
18034
18035 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
18036
18037         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
18038         to a reasonable default for memory allocation.
18039         (xreadlink): Don't allocate a huge buffer, to work around a buggy
18040         file system that reports garbage st_size values for symlinks.
18041         Problem reported by Liyang Hu.
18042
18043 2007-01-11  Simon Josefsson  <simon@josefsson.org>
18044
18045         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
18046         Emacs .#* auto-save files).
18047
18048 2007-01-11  Bruno Haible  <bruno@clisp.org>
18049
18050         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
18051         directory.
18052
18053 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18054
18055         Use @...@ consistently in lib/wctype_.h.
18056         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
18057         on it being set to 1 or 0.
18058         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
18059         go back to AC_SUBSTing it.
18060         * modules/wctype (Makefile.am): Undo previous change.
18061
18062 2007-01-10  Eric Blake  <ebb9@byu.net>
18063
18064         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
18065         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
18066         * modules/wctype (Makefile.am): Likewise.
18067         Reported by Chris McGuire.
18068
18069 2007-01-10  Jim Meyering  <jim@meyering.net>
18070
18071         fts.c: a small readability/maintainability improvement
18072         * lib/fts.c (fts_read): Make this code slightly more readable and
18073         maintainable by hoisting the "sp->fts_cur = p" assignments to
18074         immediately follow the statements that set P.  Derived from
18075         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
18076
18077 2007-01-10  Eric Blake  <ebb9@byu.net>
18078
18079         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
18080         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
18081         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
18082         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
18083         Reported by Chris McGuire.
18084
18085 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18086
18087         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
18088         in sed script.
18089
18090 2007-01-09  Bruno Haible  <bruno@clisp.org>
18091
18092         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
18093         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
18094         variables.
18095         (func_module): Use them.
18096
18097 2007-01-09  Bruno Haible  <bruno@clisp.org>
18098
18099         * modules/unistr/base: New file.
18100         * lib/unistr.h: New file.
18101
18102         * modules/unistr/u8-to-u16: New file.
18103         * lib/unistr/u8-to-u16.c: New file.
18104
18105         * modules/unistr/u8-to-u32: New file.
18106         * lib/unistr/u8-to-u32.c: New file.
18107
18108         * modules/unistr/u16-to-u8: New file.
18109         * lib/unistr/u16-to-u8.c: New file.
18110
18111         * modules/unistr/u16-to-u32: New file.
18112         * lib/unistr/u16-to-u32.c: New file.
18113
18114         * modules/unistr/u32-to-u8: New file.
18115         * lib/unistr/u32-to-u8.c: New file.
18116
18117         * modules/unistr/u32-to-u16: New file.
18118         * lib/unistr/u32-to-u16.c: New file.
18119
18120         * modules/unistr/u8-check: New file.
18121         * modules/unistr/u16-check: New file.
18122         * modules/unistr/u32-check: New file.
18123         * lib/unistr/u8-check.c: New file.
18124         * lib/unistr/u16-check.c: New file.
18125         * lib/unistr/u32-check.c: New file.
18126
18127         * modules/unistr/u8-chr: New file.
18128         * modules/unistr/u16-chr: New file.
18129         * modules/unistr/u32-chr: New file.
18130         * lib/unistr/u8-chr.c: New file.
18131         * lib/unistr/u16-chr.c: New file.
18132         * lib/unistr/u32-chr.c: New file.
18133
18134         * modules/unistr/u8-cmp: New file.
18135         * modules/unistr/u16-cmp: New file.
18136         * modules/unistr/u32-cmp: New file.
18137         * lib/unistr/u8-cmp.c: New file.
18138         * lib/unistr/u16-cmp.c: New file.
18139         * lib/unistr/u32-cmp.c: New file.
18140
18141         * modules/unistr/u8-cpy: New file.
18142         * modules/unistr/u16-cpy: New file.
18143         * modules/unistr/u32-cpy: New file.
18144         * lib/unistr/u8-cpy.c: New file.
18145         * lib/unistr/u16-cpy.c: New file.
18146         * lib/unistr/u32-cpy.c: New file.
18147         * lib/unistr/u-cpy.h: New file.
18148
18149         * modules/unistr/u8-cpy-alloc: New file.
18150         * modules/unistr/u16-cpy-alloc: New file.
18151         * modules/unistr/u32-cpy-alloc: New file.
18152         * lib/unistr/u8-cpy-alloc.c: New file.
18153         * lib/unistr/u16-cpy-alloc.c: New file.
18154         * lib/unistr/u32-cpy-alloc.c: New file.
18155         * lib/unistr/u-cpy-alloc.h: New file.
18156
18157         * modules/unistr/u8-endswith: New file.
18158         * modules/unistr/u16-endswith: New file.
18159         * modules/unistr/u32-endswith: New file.
18160         * lib/unistr/u8-endswith.c: New file.
18161         * lib/unistr/u16-endswith.c: New file.
18162         * lib/unistr/u32-endswith.c: New file.
18163         * lib/unistr/u-endswith.h: New file.
18164
18165         * modules/unistr/u8-mblen: New file.
18166         * modules/unistr/u16-mblen: New file.
18167         * modules/unistr/u32-mblen: New file.
18168         * lib/unistr/u8-mblen.c: New file.
18169         * lib/unistr/u16-mblen.c: New file.
18170         * lib/unistr/u32-mblen.c: New file.
18171
18172         * modules/unistr/u8-mbtouc: New file.
18173         * modules/unistr/u16-mbtouc: New file.
18174         * modules/unistr/u32-mbtouc: New file.
18175         * lib/unistr/u8-mbtouc.c: New file.
18176         * lib/unistr/u16-mbtouc.c: New file.
18177         * lib/unistr/u32-mbtouc.c: New file.
18178
18179         * modules/unistr/u8-mbtouc-safe: New file.
18180         * modules/unistr/u16-mbtouc-safe: New file.
18181         * modules/unistr/u32-mbtouc-safe: New file.
18182         * lib/unistr/u8-mbtouc-safe.c: New file.
18183         * lib/unistr/u16-mbtouc-safe.c: New file.
18184         * lib/unistr/u32-mbtouc-safe.c: New file.
18185
18186         * modules/unistr/u8-move: New file.
18187         * modules/unistr/u16-move: New file.
18188         * modules/unistr/u32-move: New file.
18189         * lib/unistr/u8-move.c: New file.
18190         * lib/unistr/u16-move.c: New file.
18191         * lib/unistr/u32-move.c: New file.
18192         * lib/unistr/u-move.h: New file.
18193
18194         * modules/unistr/u8-next: New file.
18195         * modules/unistr/u16-next: New file.
18196         * modules/unistr/u32-next: New file.
18197         * lib/unistr/u8-next.c: New file.
18198         * lib/unistr/u16-next.c: New file.
18199         * lib/unistr/u32-next.c: New file.
18200
18201         * modules/unistr/u8-prev: New file.
18202         * modules/unistr/u16-prev: New file.
18203         * modules/unistr/u32-prev: New file.
18204         * lib/unistr/u8-prev.c: New file.
18205         * lib/unistr/u16-prev.c: New file.
18206         * lib/unistr/u32-prev.c: New file.
18207
18208         * modules/unistr/u8-set: New file.
18209         * modules/unistr/u16-set: New file.
18210         * modules/unistr/u32-set: New file.
18211         * lib/unistr/u8-set.c: New file.
18212         * lib/unistr/u16-set.c: New file.
18213         * lib/unistr/u32-set.c: New file.
18214         * lib/unistr/u-set.h: New file.
18215
18216         * modules/unistr/u8-startswith: New file.
18217         * modules/unistr/u16-startswith: New file.
18218         * modules/unistr/u32-startswith: New file.
18219         * lib/unistr/u8-startswith.c: New file.
18220         * lib/unistr/u16-startswith.c: New file.
18221         * lib/unistr/u32-startswith.c: New file.
18222         * lib/unistr/u-startswith.h: New file.
18223
18224         * modules/unistr/u8-stpcpy: New file.
18225         * modules/unistr/u16-stpcpy: New file.
18226         * modules/unistr/u32-stpcpy: New file.
18227         * lib/unistr/u8-stpcpy.c: New file.
18228         * lib/unistr/u16-stpcpy.c: New file.
18229         * lib/unistr/u32-stpcpy.c: New file.
18230         * lib/unistr/u-stpcpy.h: New file.
18231
18232         * modules/unistr/u8-stpncpy: New file.
18233         * modules/unistr/u16-stpncpy: New file.
18234         * modules/unistr/u32-stpncpy: New file.
18235         * lib/unistr/u8-stpncpy.c: New file.
18236         * lib/unistr/u16-stpncpy.c: New file.
18237         * lib/unistr/u32-stpncpy.c: New file.
18238         * lib/unistr/u-stpncpy.h: New file.
18239
18240         * modules/unistr/u8-strcat: New file.
18241         * modules/unistr/u16-strcat: New file.
18242         * modules/unistr/u32-strcat: New file.
18243         * lib/unistr/u8-strcat.c: New file.
18244         * lib/unistr/u16-strcat.c: New file.
18245         * lib/unistr/u32-strcat.c: New file.
18246         * lib/unistr/u-strcat.h: New file.
18247
18248         * modules/unistr/u8-strchr: New file.
18249         * modules/unistr/u16-strchr: New file.
18250         * modules/unistr/u32-strchr: New file.
18251         * lib/unistr/u8-strchr.c: New file.
18252         * lib/unistr/u16-strchr.c: New file.
18253         * lib/unistr/u32-strchr.c: New file.
18254
18255         * modules/unistr/u8-strcmp: New file.
18256         * modules/unistr/u16-strcmp: New file.
18257         * modules/unistr/u32-strcmp: New file.
18258         * lib/unistr/u8-strcmp.c: New file.
18259         * lib/unistr/u16-strcmp.c: New file.
18260         * lib/unistr/u32-strcmp.c: New file.
18261
18262         * modules/unistr/u8-strcpy: New file.
18263         * modules/unistr/u16-strcpy: New file.
18264         * modules/unistr/u32-strcpy: New file.
18265         * lib/unistr/u8-strcpy.c: New file.
18266         * lib/unistr/u16-strcpy.c: New file.
18267         * lib/unistr/u32-strcpy.c: New file.
18268         * lib/unistr/u-strcpy.h: New file.
18269
18270         * modules/unistr/u8-strcspn: New file.
18271         * modules/unistr/u16-strcspn: New file.
18272         * modules/unistr/u32-strcspn: New file.
18273         * lib/unistr/u8-strcspn.c: New file.
18274         * lib/unistr/u16-strcspn.c: New file.
18275         * lib/unistr/u32-strcspn.c: New file.
18276         * lib/unistr/u-strcspn.h: New file.
18277
18278         * modules/unistr/u8-strdup: New file.
18279         * modules/unistr/u16-strdup: New file.
18280         * modules/unistr/u32-strdup: New file.
18281         * lib/unistr/u8-strdup.c: New file.
18282         * lib/unistr/u16-strdup.c: New file.
18283         * lib/unistr/u32-strdup.c: New file.
18284         * lib/unistr/u-strdup.h: New file.
18285
18286         * modules/unistr/u8-strlen: New file.
18287         * modules/unistr/u16-strlen: New file.
18288         * modules/unistr/u32-strlen: New file.
18289         * lib/unistr/u8-strlen.c: New file.
18290         * lib/unistr/u16-strlen.c: New file.
18291         * lib/unistr/u32-strlen.c: New file.
18292         * lib/unistr/u-strlen.h: New file.
18293
18294         * modules/unistr/u8-strmblen: New file.
18295         * modules/unistr/u16-strmblen: New file.
18296         * modules/unistr/u32-strmblen: New file.
18297         * lib/unistr/u8-strmblen.c: New file.
18298         * lib/unistr/u16-strmblen.c: New file.
18299         * lib/unistr/u32-strmblen.c: New file.
18300
18301         * modules/unistr/u8-strmbtouc: New file.
18302         * modules/unistr/u16-strmbtouc: New file.
18303         * modules/unistr/u32-strmbtouc: New file.
18304         * lib/unistr/u8-strmbtouc.c: New file.
18305         * lib/unistr/u16-strmbtouc.c: New file.
18306         * lib/unistr/u32-strmbtouc.c: New file.
18307
18308         * modules/unistr/u8-strncat: New file.
18309         * modules/unistr/u16-strncat: New file.
18310         * modules/unistr/u32-strncat: New file.
18311         * lib/unistr/u8-strncat.c: New file.
18312         * lib/unistr/u16-strncat.c: New file.
18313         * lib/unistr/u32-strncat.c: New file.
18314         * lib/unistr/u-strncat.h: New file.
18315
18316         * modules/unistr/u8-strncmp: New file.
18317         * modules/unistr/u16-strncmp: New file.
18318         * modules/unistr/u32-strncmp: New file.
18319         * lib/unistr/u8-strncmp.c: New file.
18320         * lib/unistr/u16-strncmp.c: New file.
18321         * lib/unistr/u32-strncmp.c: New file.
18322
18323         * modules/unistr/u8-strncpy: New file.
18324         * modules/unistr/u16-strncpy: New file.
18325         * modules/unistr/u32-strncpy: New file.
18326         * lib/unistr/u8-strncpy.c: New file.
18327         * lib/unistr/u16-strncpy.c: New file.
18328         * lib/unistr/u32-strncpy.c: New file.
18329         * lib/unistr/u-strncpy.h: New file.
18330
18331         * modules/unistr/u8-strnlen: New file.
18332         * modules/unistr/u16-strnlen: New file.
18333         * modules/unistr/u32-strnlen: New file.
18334         * lib/unistr/u8-strnlen.c: New file.
18335         * lib/unistr/u16-strnlen.c: New file.
18336         * lib/unistr/u32-strnlen.c: New file.
18337         * lib/unistr/u-strnlen.h: New file.
18338
18339         * modules/unistr/u8-strpbrk: New file.
18340         * modules/unistr/u16-strpbrk: New file.
18341         * modules/unistr/u32-strpbrk: New file.
18342         * lib/unistr/u8-strpbrk.c: New file.
18343         * lib/unistr/u16-strpbrk.c: New file.
18344         * lib/unistr/u32-strpbrk.c: New file.
18345         * lib/unistr/u-strpbrk.h: New file.
18346
18347         * modules/unistr/u8-strrchr: New file.
18348         * modules/unistr/u16-strrchr: New file.
18349         * modules/unistr/u32-strrchr: New file.
18350         * lib/unistr/u8-strrchr.c: New file.
18351         * lib/unistr/u16-strrchr.c: New file.
18352         * lib/unistr/u32-strrchr.c: New file.
18353
18354         * modules/unistr/u8-strspn: New file.
18355         * modules/unistr/u16-strspn: New file.
18356         * modules/unistr/u32-strspn: New file.
18357         * lib/unistr/u8-strspn.c: New file.
18358         * lib/unistr/u16-strspn.c: New file.
18359         * lib/unistr/u32-strspn.c: New file.
18360         * lib/unistr/u-strspn.h: New file.
18361
18362         * modules/unistr/u8-strstr: New file.
18363         * modules/unistr/u16-strstr: New file.
18364         * modules/unistr/u32-strstr: New file.
18365         * lib/unistr/u8-strstr.c: New file.
18366         * lib/unistr/u16-strstr.c: New file.
18367         * lib/unistr/u32-strstr.c: New file.
18368         * lib/unistr/u-strstr.h: New file.
18369
18370         * modules/unistr/u8-strtok: New file.
18371         * modules/unistr/u16-strtok: New file.
18372         * modules/unistr/u32-strtok: New file.
18373         * lib/unistr/u8-strtok.c: New file.
18374         * lib/unistr/u16-strtok.c: New file.
18375         * lib/unistr/u32-strtok.c: New file.
18376         * lib/unistr/u-strtok.h: New file.
18377
18378         * modules/unistr/u8-uctomb: New file.
18379         * modules/unistr/u16-uctomb: New file.
18380         * modules/unistr/u32-uctomb: New file.
18381         * lib/unistr/u8-uctomb.c: New file.
18382         * lib/unistr/u16-uctomb.c: New file.
18383         * lib/unistr/u32-uctomb.c: New file.
18384
18385         * MODULES.html.sh (Unicode string functions): Add the new modules.
18386
18387 2007-01-08  Bruno Haible  <bruno@clisp.org>
18388
18389         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
18390         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
18391         subdirectories.
18392
18393 2007-01-08  Karl Berry  <karl@gnu.org>
18394
18395         * doc/error.texi: mention that main() fns must set program_name
18396         when progname is used.
18397
18398 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
18399
18400         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
18401         WCTYPE_H is empty, for the benefit of builds from non-distclean
18402         directories.  Problem reported by Eric Blake in
18403         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
18404
18405 2007-01-08  Bruno Haible  <bruno@clisp.org>
18406
18407         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
18408         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
18409         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
18410         PROVIDE_CANONICALIZE_FILENAME_MODE.
18411         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
18412
18413 2007-01-08  Bruno Haible  <bruno@clisp.org>
18414
18415         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
18416         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
18417         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
18418         * lib/fts.c: Likewise.
18419         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
18420
18421 2006-12-25  Bruno Haible  <bruno@clisp.org>
18422
18423         * modules/utf8-ucs4-safe: New file.
18424         * lib/utf8-ucs4-safe.h: New file.
18425         * lib/unistr/utf8-ucs4-safe.c: New file.
18426
18427         * modules/utf16-ucs4-safe: New file.
18428         * lib/utf16-ucs4-safe.h: New file.
18429         * lib/unistr/utf16-ucs4-safe.c: New file.
18430
18431         * MODULES.html.sh (Unicode string functions): Add the new modules.
18432
18433 2007-01-08  Bruno Haible  <bruno@clisp.org>
18434
18435         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
18436         (Depends-on): Add unitypes.
18437         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
18438         (u8_mbtouc_aux): Move out to separate file.
18439         (u8_mbtouc): Use ucs4_t, uint8_t types.
18440         * lib/unistr/utf8-ucs4.c: New file.
18441
18442         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
18443         (Depends-on): Add unitypes.
18444         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
18445         (u16_mbtouc_aux): Move out to separate file.
18446         (u16_mbtouc): Use ucs4_t, uint16_t types.
18447         * lib/unistr/utf16-ucs4.c: New file.
18448
18449         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
18450         (Depends-on): Add unitypes.
18451         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
18452         (u8_uctomb_aux): Move out to separate file.
18453         (u8_uctomb): Use ucs4_t, uint8_t types.
18454         * lib/unistr/ucs4-utf8.c: New file.
18455
18456         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
18457         (Depends-on): Add unitypes.
18458         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
18459         (u16_uctomb_aux): Move out to separate file.
18460         (u16_uctomb): Use ucs4_t, uint16_t types.
18461         * lib/unistr/ucs4-utf16.c: New file.
18462
18463 2006-12-25  Bruno Haible  <bruno@clisp.org>
18464
18465         * modules/unitypes: New file.
18466         * lib/unitypes.h: New file.
18467         * MODULES.html.sh (func_all_modules): New section "Unicode string
18468         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
18469         this section. Add unitypes.
18470
18471 2007-01-08  Bruno Haible  <bruno@clisp.org>
18472
18473         Avoid variable names that conflict with those from libtool.
18474         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
18475         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
18476         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
18477         library_names_spec to acl_library_names_spec, hardcode_* to
18478         acl_hardcode_*.
18479         Reported by Ralf Wildenhues.
18480
18481 2007-01-08  Bruno Haible  <bruno@clisp.org>
18482
18483         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
18484         definition.
18485         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
18486         definition.
18487         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
18488         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
18489         definition.
18490         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
18491         definition.
18492         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
18493         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
18494         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
18495         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
18496         definition.
18497         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
18498         definition.
18499         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
18500         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
18501         GC_USE_<algorithm>.
18502         * lib/gc-libgcrypt.c: Likewise.
18503         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
18504         * modules/gc-arctwo (configure.ac): Likewise.
18505         * modules/gc-des (configure.ac): Likewise.
18506         * modules/gc-hmac-md5 (configure.ac): Likewise.
18507         * modules/gc-hmac-sha1 (configure.ac): Likewise.
18508         * modules/gc-md2 (configure.ac): Likewise.
18509         * modules/gc-md4 (configure.ac): Likewise.
18510         * modules/gc-md5 (configure.ac): Likewise.
18511         * modules/gc-random (configure.ac): Likewise.
18512         * modules/gc-rijndael (configure.ac): Likewise.
18513         * modules/gc-sha1 (configure.ac): Likewise.
18514
18515 2007-01-08  Bruno Haible  <bruno@clisp.org>
18516
18517         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
18518         macro definition.
18519         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
18520         definition.
18521         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
18522         definition.
18523         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
18524         * modules/fcntl-safer (configure.ac): Likewise.
18525         * modules/fopen-safer (configure.ac): Likewise.
18526         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
18527         GNULIB_FWRITEERROR macro definition.
18528
18529 2007-01-08  Bruno Haible  <bruno@clisp.org>
18530
18531         * m4/gnulib-common.m4: New file.
18532         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
18533         (func_get_filelist): Add m4/gnulib-common.m4.
18534
18535 2007-01-08  Bruno Haible  <bruno@clisp.org>
18536
18537         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
18538         command.
18539
18540 2007-01-08  Jim Meyering  <jim@meyering.net>
18541
18542         Use a more robust test for a "can't happen" condition.
18543         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
18544         narrowed the st_size value.  Presuming the "can't happen" condition
18545         is true, that narrowing could conceivably convert an invalid st_size
18546         value into a valid one.  Instead, use a change based on Matthew
18547         Woehlke's original patch.
18548
18549         Slight readability improvement: use an assert-like macro
18550         in place of literal "abort ()" uses.
18551         * lib/fts.c (fts_assert): Define.
18552         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
18553         Use this macro instead of a bare 'abort'.
18554
18555 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
18556
18557         Don't worry about using IRIX 5.3's wctype.h broken definitions;
18558         simply work around them.
18559         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
18560         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
18561         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
18562         declaring.
18563         Don't bother to define as macros, since the standard doesn't require it.
18564         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
18565         longer worry about IRIX 5.3.
18566         (HAVE_WCTYPE_CTMP_BUG): Remove.
18567
18568 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18569
18570         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
18571         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
18572         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
18573         Problems reported by Georg Schwarz for IRIX 5.3.
18574
18575         * gnulib-tool (autoconf_minversion): Take the maximum version number
18576         found, not the minimum.  Problem reported by James Youngman.
18577
18578 2007-01-03  Karl Berry  <karl@gnu.org>
18579
18580         * doc/error.texi: new file, explaining interaction with progname.
18581         * doc/gnulib.texi: include it.  Update copyright.
18582
18583 2007-01-03  Simon Josefsson  <simon@josefsson.org>
18584
18585         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
18586         AC_CANONICAL_HOST, to improve autobuild outputs.
18587
18588 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
18589             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
18590
18591         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
18592         sockets, server sockets, and other file descriptors.  Count errors
18593         to compute the return value.  Reorder the code a bit to be easier
18594         to follow.  Don't set event bits that were not requested (except
18595         POLLERR and POLLHUP).
18596
18597 2007-01-01  Bruno Haible  <bruno@clisp.org>
18598
18599         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
18600
18601 2007-01-03  Jim Meyering  <jim@meyering.net>
18602
18603         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
18604
18605 2007-01-02  Bruno Haible  <bruno@clisp.org>
18606
18607         * modules/settime (Include): Require timespec.h.
18608         * modules/nanosleep (Include): Likewise.
18609
18610 2007-01-01  Bruno Haible  <bruno@clisp.org>
18611
18612         * gnulib-tool (func_emit_copyright_notice): Bump year.
18613         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
18614
18615 2007-01-01  Bruno Haible  <bruno@clisp.org>
18616
18617         Improve support for OpenBSD.
18618         * build-aux/config.rpath (libname_spec): Export.
18619         (library_names_spec): New variable. Export.
18620         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
18621         library_names_spec from the config.rpath output. Locate shared library
18622         through the name pattern in library_names_spec.
18623
18624 2007-01-01  Eric Blake  <ebb9@byu.net>
18625
18626         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
18627
18628 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
18629
18630         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
18631         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
18632         assume the C locale, and avoid an "eval" that could cause trouble.
18633         Problem with SORT reported by Bob Proulx.
18634
18635         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
18636         Define.  Trivial patch from Henning Nielsen Lund, originally
18637         sent to bug-grep@gnu.org today.
18638
18639 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
18640
18641         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
18642         struct stat.  Problem reported by Henning Nielsen Lund.
18643         * lib/acl.c: Include acl.h first, to check interface.  Don't
18644         bother to include sys/types.h and sys/stat.h again.
18645
18646 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
18647
18648         Import the following change from libc; problem reported by
18649         Sven Verdoolaege.
18650
18651         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
18652
18653         [BZ #1373]
18654         * lib/argp.h: Remove __NTH for __argp_usage inline function.
18655
18656 2006-12-28  Jim Meyering  <jim@meyering.net>
18657
18658         * build-aux/announce-gen: Do not assume that the package
18659         builds any of tar.gz, tar.bz2, and .xdelta files.
18660         Suggestion from Simon Josefsson.
18661
18662 2006-12-28  Simon Josefsson  <simon@josefsson.org>
18663
18664         * modules/announce-gen: New file.
18665
18666 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
18667
18668         * lib/mbchar.h: Just include <wctype.h>; the wctype module
18669         handles its gotchas now.
18670         * lib/mbswidth.c: Likewise.
18671         * lib/wcwidth.h: Likewise.
18672         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
18673         and iswcntrl; the wctype module does this stuff now.
18674         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
18675         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
18676         * modules/mbchar (Depends-on): Add wctype.
18677         * modules/mbswidth (Depends-on): Likewise.
18678         * modules/wcwidth (Depends-on): Likewise.
18679
18680 2006-12-27  Eric Blake  <ebb9@byu.net>
18681
18682         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
18683         module uses more than what <wctype.h> is required to provide.
18684
18685 2006-12-26  Eric Blake  <ebb9@byu.net>
18686
18687         * gnulib-tool (sed_extract_prog): Avoid space-tab.
18688
18689 2006-12-26  Eric Blake  <ebb9@byu.net>
18690
18691         * modules/absolute-header: New module.
18692         * modules/fcntl (Depends-on): Depend on it.
18693         * modules/inttypes (Depends-on): Likewise.
18694         * modules/stdint (Depends-on): Likewise.
18695         * modules/sys_stat (Depends-on): Likewise.
18696         * modules/wctype (Depends-on): Likewise.
18697         * MODULES.html.sh (Support for building libraries and
18698         executables): Document it.
18699
18700 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
18701
18702         * gnulib-tool (SED): Remove, undoing previous change.
18703         The problem was that it broke coreutils on Solaris, because
18704         "sed --posix" leaked into a makefile.
18705         (sed): New alias, if 'alias' and GNU sed.
18706
18707 2006-12-24  Jim Meyering  <jim@meyering.net>
18708
18709         Work around an fchownat bug in glibc-2.4:
18710         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
18711         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
18712         in spite of the -P option.
18713         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
18714         New macros.
18715         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
18716         * modules/openat (Files): Add lib/fchownat.c.
18717         * lib/openat.c (fchownat): Don't define here.  Move to...
18718         * lib/fchownat.c: ...this new file.
18719
18720 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
18721
18722         Fix bug reported by Bruno Haible in
18723         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
18724         where quotearg.c didn't compile on Mac OS X 10.2 because it
18725         lacks <wchar.h> and wint_t.
18726         * lib/wctype_.h (__wctype_wint_t): New type.
18727         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
18728         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
18729         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
18730         Arg is now of type __wctype_wint_t, not wint_t.
18731         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
18732         substitute HAVE_WINT_T.
18733         * modules/wctype (Files): Add m4/wint_t.m4.
18734         (wctype.h): Substitute HAVE_WINT_T.
18735
18736 2006-12-23  Bruno Haible  <bruno@clisp.org>
18737
18738         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
18739
18740 2006-12-23  Bruno Haible  <bruno@clisp.org>
18741
18742         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
18743         S_ISLNK.
18744         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
18745         mingw.
18746
18747 2006-12-22  Bruno Haible  <bruno@clisp.org>
18748
18749         * lib/copy-file.c: Include acl.h.
18750         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
18751         Close the file descriptors only after being done with copy_acl.
18752         * modules/copy-file (Depends-on): Add acl.
18753
18754 2006-12-22  Bruno Haible  <bruno@clisp.org>
18755
18756         * gnulib-tool (SED): New variable.
18757         Use $SED instead of sed everywhere.
18758
18759 2006-12-22  Bruno Haible  <bruno@clisp.org>
18760
18761         * modules/no-c++: New file.
18762         * m4/no-c++.m4: New file.
18763         * MODULES.html.sh (Support for building libraries and executables):
18764         Add no-c++.
18765
18766 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
18767
18768         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
18769         Include <limits.h>, and use its INT_MAX to rewrite the
18770         j loop so that it does not overflow 'int'.  Problem reported by
18771         Ralf Wildenhues in
18772         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
18773         Play it safe by shifting left by 1 rather than multiplying by 2,
18774         as GCC is less likely to optimize this away when the value
18775         is signed (when it assumes overflow leads to undefined behavior).
18776         Also, don't assume time_t uses two's complement.
18777
18778 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
18779
18780         * MODULES.html.sh: New module wctype.
18781         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
18782         * lib/fnmatch.c: Don't bother to include <wchar.h> before
18783         <wctype.h>, since the new wctype module should fix this.
18784         * lib/quotearg.c: Include <wctype.h> unconditionally, since
18785         the wctype module should arrange for it.
18786         * lib/regex_internal.h: Likewise.
18787         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
18788         since the wctype module should handle this now.
18789         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
18790         * modules/fnmatch (Depends-on): Add wctype.
18791         * modules/quotearg (Depends-on): Likewise.
18792         * modules/regex (Depends-on): Likewise.
18793
18794 2006-12-19  Bruno Haible  <bruno@clisp.org>
18795
18796         * lib/strdup.h [C++]: Wrap definitions in extern "C".
18797         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
18798
18799 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18800
18801         * modules/savewd (Depends-on): Fix dependency on fcntl.
18802
18803 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18804
18805         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
18806         conforms to C99, rather than relying on the user's environment
18807         setting of STDINT_H.
18808
18809 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
18810         and Eric Blake  <ebb9@byu.net>
18811
18812         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
18813         This is more consistent with the other defines here.
18814         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
18815         Port to z/OS.  Problem reported by Paul Gilmartin.
18816         Change local vars to use gl_ prefix rather than ac_.
18817         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
18818         with other defines.
18819         * modules/double-slash-root: New module.
18820         * modules/dirname (Files): Remove m4/double-slash-root.m4.
18821         (Depends-on): Add double-slash-root.
18822         * MODULES.html.sh (File system functions): Mention new module.
18823
18824 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
18825
18826         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
18827         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
18828         This is for the benefit of gzip, which doesn't do i18n.
18829
18830 2006-12-12  Jim Meyering  <jim@meyering.net>
18831
18832         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
18833         Reported by Andreas Schwab <schwab@suse.de>.
18834
18835 2006-12-12  Bruno Haible  <bruno@clisp.org>
18836
18837         Merge these changes.
18838         2006-09-05  Bruno Haible  <bruno@clisp.org>
18839         * lib/iconvme.c (iconv_string): No need to save and restore errno when
18840         iconv_alloc succeeded.
18841         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
18842         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
18843         test for " && dest " at the end - dest is always != NULL there. Call
18844         iconv with 4xNULL arguments initially, to reset the state. Call iconv
18845         with 2xNULL arguments, also to flush the state storage. Handle the
18846         IRIX iconv behaviour. Realloc the final result, to throw away unused
18847         memory.
18848
18849 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
18850
18851         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
18852         and fchmodat unconditionally, since glibc 2.4 has them.
18853         Problem reported by Arkadiusz Miskiewicz.
18854
18855 2006-12-10  Bruno Haible  <bruno@clisp.org>
18856
18857         * gnulib-tool (func_import): Show the include files only for those
18858         modules that are copied and specified.
18859         Reported by Karl Berry.
18860
18861 2006-12-08  Jim Meyering  <jim@meyering.net>
18862
18863         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
18864         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
18865
18866         * build-aux/announce-gen: Add two new options, both optional:
18867         --bootstrap-tools=TOOL_LIST
18868               a comma-separated list of tools, e.g.,
18869               autoconf,automake,bison,gnulib
18870         --gnulib-snapshot-date=DATE
18871               if gnulib is in the bootstrap tool list,
18872               then report this as the snapshot date.
18873               If not specified, use the current date/time.
18874               If you specify a date here, be sure it's UTC.
18875
18876 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18877
18878         * tests/test-argp-2.sh: Fix test to match actual output.
18879         (func_compare): Fix sed script to be portable.
18880
18881 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
18882
18883         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
18884         workaround for this case.  It is not autoconfigured now; offhand
18885         it's hard to see how to autoconfigure it.
18886
18887 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
18888
18889         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
18890         a directory that is about to be chowned.  Such a directory's
18891         initial file permissions should permit the owner only and this
18892         should not be changed until after the chown, since the group and
18893         other bits would be incorrect if they granted permission before
18894         the chown.
18895
18896         Fix porting problem for iswctype reported by Georg Schwarz in:
18897         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
18898         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
18899         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
18900         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
18901         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
18902
18903 2006-12-03  Jim Meyering  <jim@meyering.net>
18904
18905         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
18906         p->fts_statp may not yet be defined.
18907         (fts_read): Instead, set it in the caller, once p->fts_statp is
18908         sure to be defined, and corresponds to a top-level directory.
18909         This bug made du -x fail.  Here's the coreutils test case:
18910         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
18911         Reported by Mike Frysinger.
18912
18913 2006-12-01  Jim Meyering  <jim@meyering.net>
18914
18915         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
18916         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
18917         Reported by Simon Josefsson.
18918
18919 2006-11-30  Jim Meyering  <jim@meyering.net>
18920
18921         * m4/warning.m4: Use the all-permissive copyright notice
18922         recommended by RMS (rather than LGPL).
18923         * m4/vararrays.m4: Likewise.
18924         * m4/flexmember.m4: Likewise.
18925
18926 2006-11-29  Bruno Haible  <bruno@clisp.org>
18927
18928         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18929         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
18930         using +=.
18931         Reported by Simon Josefsson <simon@josefsson.org>.
18932
18933 2006-11-28  James Youngman <jay@gnu.org>
18934
18935         * README: Advise users that they might find the bug-gnulib@gnu.org
18936         and autotools-announce@gnu.org mailing lists useful.
18937
18938 2006-11-28  Bruno Haible  <bruno@clisp.org>
18939
18940         * m4/ptrdiff_max.m4: Remove file.
18941
18942 2006-11-21  Bruno Haible  <bruno@clisp.org>
18943
18944         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
18945         _AC_COMPUTE_INT.
18946         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18947         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
18948         _AC_COMPUTE_INT.
18949         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18950         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
18951         _AC_COMPUTE_INT.
18952         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18953
18954 2006-11-28  Jim Meyering  <jim@meyering.net>
18955
18956         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
18957         warning from "gcc -Wshadow" about shadowing the builtin.
18958
18959 2006-11-27  Bruno Haible  <bruno@clisp.org>
18960
18961         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
18962         _AC_COMPUTE_INT.
18963         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
18964
18965 2006-11-27  Bruno Haible  <bruno@clisp.org>
18966             Paul Eggert  <eggert@cs.ucla.edu>
18967
18968         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
18969
18970 2006-11-26  Bruno Haible  <bruno@clisp.org>
18971
18972         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
18973         noinst_LTLIBRARIES.
18974
18975 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
18976             Bruno Haible  <bruno@clisp.org>
18977
18978         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
18979         if compiling with "gcc -ansi".
18980
18981 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
18982
18983         Fix some incompatibilities with gcc -ansi -pedantic.
18984         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
18985         if compiling pedantically with GCC, unless it's C99 or later.
18986         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
18987         it mishandles gcc -ansi -pedantic as well.
18988         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
18989         if gcc -pedantic.
18990         * lib/regexec.c (check_node_accept_bytes): Don't use auto
18991         initializers for struct if -pedantic, unless it's C99 or later.
18992
18993 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
18994
18995         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
18996         Don't close an fd more than once. Identical atimes indicate
18997         success, not failure.
18998
18999 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
19000
19001         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
19002
19003 2006-11-23  Jim Meyering  <jim@meyering.net>
19004
19005         * build-aux/announce-gen: New file.  From coreutils.
19006
19007 2006-11-22  Jim Meyering  <jim@meyering.net>
19008
19009         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
19010         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
19011         (fts_read): Use a temporary to narrow the overused st_size member
19012         before using it in a switch statement.  Reported by Matthew Woehlke.
19013
19014         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
19015         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
19016
19017 2006-11-20  Bruno Haible  <bruno@clisp.org>
19018
19019         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
19020         changequote instead of pairs of brackets.
19021         Reported by Andreas Schwab <schwab@suse.de>.
19022
19023 2006-11-21  Jim Meyering  <jim@meyering.net>
19024
19025         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
19026         so as to remain compatible with older compilers.
19027         Patch from Michael Deutschmann.
19028
19029 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
19030
19031         * MODULES.html.sh (File system functions): Add openat.
19032
19033         * lib/openat.h (rpl_fstatat): New macro, if
19034         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
19035         (fstatat): Define to rpl_fstatat under the same conditions,
19036         unless COMPILING_FSTATAT.
19037         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
19038         seems to have the bug.
19039         * lib/fstatat.c: New file.
19040         * modules/openat (Files): Add it.
19041
19042 2006-11-20  Bruno Haible  <bruno@clisp.org>
19043
19044         * Makefile: New file.
19045
19046 2006-11-20  Jim Meyering  <jim@meyering.net>
19047
19048         The beginnings of syntax-related checks for gnulib.
19049         * lib/Makefile: New file.
19050         * lib/t-idcache: New script.  Ensure that the two halves of
19051         idcache.c stay in sync.
19052
19053         * lib/idcache.c: Adjust comments in user- and group- portions to
19054         be more accurate, and to be consistent with one another.
19055
19056 2006-11-20  Jim Meyering  <jim@meyering.net>
19057
19058         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
19059         continue using the flexible array member (thus, this module performs
19060         half as many malloc calls), with the addition that...
19061         (getgroup, getuser): Consistently record a non-match via an empty
19062         "name" string, and map an empty string match to a NULL return value.
19063         * modules/idcache (Depends-on): Re-add flexmember.
19064
19065         * lib/idcache.c (getuser): Remove all uses of the register keyword.
19066         (getuidbyname, getgroup, getgidbyname): Likewise.
19067
19068         Use cleaner syntax: NULL rather than 0.
19069         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
19070
19071 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
19072
19073         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
19074         It mishandled the case where the group was missing.
19075         Problem reported by Greg Schafer.
19076         * modules/idcache: Likewise.
19077
19078 2006-11-18  Jim Meyering  <jim@meyering.net>
19079
19080         * check-module (%exempt_header): Add exception for some
19081         conditionally-included headers.
19082
19083         * modules/i-ring (Depends-on): Add verify.
19084         (License): Change to LGPL.
19085
19086 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
19087
19088         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
19089         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
19090         and inttostr.h.  Use snprintf rather than uinttostr, so that
19091         LGPLed code doesn't depend on GPLed.
19092
19093 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
19094
19095         * modules/inline (License): Change from GPL to LGPL.
19096
19097 2006-11-17  Jim Meyering  <jim@meyering.net>
19098
19099         * modules/d-type (License): Switch to LGPL.
19100
19101 2006-11-15  Bruno Haible  <bruno@clisp.org>
19102
19103         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
19104
19105 2006-11-15  Eric Blake  <ebb9@byu.net>
19106
19107         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
19108         the module dependency.
19109
19110 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19111             Bruno Haible  <bruno@clisp.org>
19112
19113         * gnulib-tool (func_create_testdir): Add license consistency check.
19114
19115 2006-11-15  Eric Blake  <ebb9@byu.net>
19116
19117         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
19118         random "(cached)" in configure output.
19119
19120 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19121
19122         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
19123         test for conforming inttypes.h is both announced and cached.
19124
19125         * MODULES.html.sh (seen_modules, seen_files): New variables.
19126         (func_module): Rewrite to use a few less gnulib-tool and sed
19127         invocations.  Avoid a couple of quadratic algorithms for ...
19128         (missed_modules, missed_files): ... these, with ...
19129         (func_append, func_tmpdir): ... these new functions, from
19130         gnulib-tool.  Analogously, install traps for cleanup.
19131
19132         * tests/test-gc.c (main): Remove unused variables.
19133         * tests/test-read-file.c: Include stdlib.h, for 'free'.
19134
19135 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
19136
19137         * modules/inttostr (License): Change to LGPL.
19138
19139 2006-11-14  Eric Blake  <ebb9@byu.net>
19140
19141         * modules/tempname (License): Change to LGPL.
19142
19143 2006-11-14  Eric Blake  <ebb9@byu.net>
19144
19145         * doc/functions.texi (Function Portability): *printf functions on
19146         Cygwin now understand all POSIX size specifiers.
19147
19148 2006-11-14  Bruno Haible  <bruno@clisp.org>
19149
19150         * modules/c-ctype (License): Change to LGPL.
19151
19152 2006-11-12  Bruno Haible  <bruno@clisp.org>
19153
19154         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
19155         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
19156         for GNOME libraries, for which the include files are installed in
19157         subdirectories of $prefix/include.
19158
19159 2006-11-12  Bruno Haible  <bruno@clisp.org>
19160
19161         * m4/lib-link.m4: Require at least autoconf-2.54.
19162         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
19163         name to underscores for the --with option.
19164
19165 2006-11-13  Bruno Haible  <bruno@clisp.org>
19166
19167         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
19168         the tests directory.
19169         Reported by Ralf Wildenhues.
19170
19171 2006-11-13  Bruno Haible  <bruno@clisp.org>
19172
19173         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
19174         (func_emit_initmacro_end): Undo the override here.
19175         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
19176         Works around the famous automake error in coreutils.
19177
19178 2006-11-13  Eric Blake  <ebb9@byu.net>
19179
19180         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
19181         element, not its node.
19182
19183 2006-11-12  Bruno Haible  <bruno@clisp.org>
19184
19185         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
19186         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
19187
19188 2006-11-12  Bruno Haible  <bruno@clisp.org>
19189
19190         * gnulib-tool: New option --local-symlink.
19191         (func_usage): Document it.
19192         (lsymbolic): New variable.
19193         (func_import, func_create_testdir): If --symlink was not specified,
19194         test whether --local-symlink was specified and the file comes from
19195         the local_gnulib_dir.
19196
19197 2006-11-12  Bruno Haible  <bruno@clisp.org>
19198
19199         * gnulib-tool (func_ln): New function.
19200         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
19201
19202 2006-11-12  Bruno Haible  <bruno@clisp.org>
19203
19204         Finish support for source files in subdirectories.
19205         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
19206         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
19207         AUTOMAKE_OPTIONS.
19208         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
19209
19210 2006-11-12  Bruno Haible  <bruno@clisp.org>
19211
19212         * gnulib-tool (func_get_automake_snippet): Synthesize also an
19213         EXTRA_lib_SOURCES augmentation.
19214         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
19215
19216 2006-11-12  Jim Meyering  <jim@meyering.net>
19217
19218         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
19219         file descriptors.  This also averts a failure on systems with
19220         native openat support when a traversed directory lacks "x" access.
19221         * lib/fts_.h: Include "i-ring.h"
19222         (struct FTS) [fts_fd_ring]: New member.
19223         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
19224         (FCHDIR): Add parentheses.
19225         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
19226         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
19227         When descending, rather than simply closing the previous
19228         fts_cwd_fd value, push that file descriptor onto the ring.
19229         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
19230         (fts_open): Initialize the new fd_ring member.
19231         (fts_close): Clear the ring.
19232         (fts_safe_changedir): When possible, use our new fd_ring to skip
19233         the diropen and fstat and dev/ino comparison that would normally
19234         accompany a virtual `chdir ("..")'.
19235
19236         * modules/fts (Depends-on): Add i-ring.
19237         * modules/i-ring: New module.
19238         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
19239         * m4/i-ring.m4: New file.
19240
19241 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19242
19243         * gnulib-tool (func_create_testdir): Fix replacement of
19244         `build-aux' in configure.ac.  Run autotools in gltests
19245         subdirectory.
19246         (func_create_testdir, func_create_megatestdir, test): There is
19247         no need for '--force' in most autotool invocations in a new
19248         tree.  Actually fail the whole test if any of the tools, or the
19249         configure or make stages fail.
19250
19251         Sync from Automake.
19252         * build-aux/gnupload: Revert last change.  Add pointer to upload
19253         instructions of the GNU Maintenance Instructions.
19254         Suggestion by Karl Berry.
19255
19256 2006-11-10  Jim Meyering  <jim@meyering.net>
19257
19258         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
19259
19260 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19261
19262         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
19263         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
19264         (bind_textdomain_codeset) [! ENABLE_NLS]:
19265         Evaluate all the arguments.  That way, callers get compatible behavior
19266         if the arguments have side effects.  Also, it avoids some GCC
19267         diagnostics in some cases; Joel E. Denny reported problems when Bison
19268         was configured with --enable-gcc-warnigs.
19269
19270 2006-11-10  Jim Meyering  <jim@meyering.net>
19271
19272         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
19273         relevant options in CFLAGS (like -O, -fno-inline) are taken into
19274         account.
19275
19276 2006-11-10  Jim Meyering  <jim@meyering.net>
19277
19278         * modules/inline: New file/module.
19279         * modules/xalloc (Files): Remove m4/inline.m4.
19280         (Depends-on): Add inline, instead.
19281         * modules/oset: Likewise.
19282         * modules/list: Likewise.
19283
19284 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
19285
19286         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
19287         Problem reported by Matthew Woehlke.
19288
19289 2006-11-09  Bruno Haible  <bruno@clisp.org>
19290
19291         * lib/tempname.c (gen_tempname): Remove variant that invokes
19292         __gen_tempname.
19293         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
19294         __gen_tempname.
19295
19296 2006-11-08  Bruno Haible  <bruno@clisp.org>
19297
19298         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
19299         to 'yes' instead of 'cross-compiling'.
19300
19301 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
19302
19303         * lib/quotearg.h (quotearg_free): New decl.
19304         * lib/quotearg.c (quotearg_free): New function.
19305         (slot0, nslots, slotvec0, slotvec):
19306         Now file-scope so that quotearg_free can get at them.
19307
19308 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19309
19310         Sync from Automake.
19311         * build-aux/gnupload: Add missing 'gnu' to example URL.
19312         Report by Karl Berry.
19313
19314 2006-11-08  Bruno Haible  <bruno@clisp.org>
19315
19316         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
19317         Suggested by Paul Eggert.
19318
19319 2006-11-08  Jim Meyering  <jim@meyering.net>
19320
19321         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
19322         It's already included if !_LIBC.
19323         (fts_safe_changedir): Add a comment.
19324
19325 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
19326
19327         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
19328         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
19329         Matthew Woehlke.
19330
19331         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
19332         definitions up, to avoid colliding with change below.
19333         (static_inline) [HAVE_INLINE]: New macro.
19334         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
19335         Provide extern decls when !HAVE_INLINE.  Do not define unless
19336         static_inline is defined, either by us or by xmalloc.c.  Use
19337         static_inline rather than static inline.
19338         (XCALLOC): Optimize sizeof(T) = 1 case.
19339         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
19340
19341 2006-11-07  Bruno Haible  <bruno@clisp.org>
19342
19343         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
19344         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
19345         AC_C_INLINE.
19346         * modules/xalloc (Files): Add m4/inline.m4.
19347
19348 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19349
19350         * README: Fix typo.
19351         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
19352         (Miscellanous Notes): ...from this.
19353
19354 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
19355
19356         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
19357         Mention that offsetof should be used instead of sizeof.
19358         From Bruno Haible.
19359
19360 2006-11-07  Bruno Haible  <bruno@clisp.org>
19361
19362         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
19363
19364 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
19365
19366         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
19367         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
19368         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
19369         (gl_tree_add_before, gl_tree_add_after):
19370         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
19371         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
19372         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
19373         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
19374         (gl_linked_add_after, gl_linked_add_at): Likewise.
19375         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
19376         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
19377         (gl_tree_add_before, gl_tree_add_after): Likewise.
19378         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
19379         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
19380         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
19381
19382 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19383
19384         * lib/gl_oset.h: Use C comment style, not C++ comment style.
19385
19386 2006-11-06  Bruno Haible  <bruno@clisp.org>
19387
19388         * m4/inline.m4: New file.
19389         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
19390         * modules/list (Files): Add m4/inline.m4.
19391         * modules/oset (Files): Likewise.
19392
19393 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
19394
19395         * lib/idcache.c: Include <stddef.h>, for offsetof.
19396         (struct userid.name): Change from char * to a flexible array member.
19397         All uses changed.
19398         * modules/idcache (Depends-on): Add flexmember.
19399
19400         * MODULES.html.sh (Core language properties): New module flexmember.
19401         * modules/flexmember, m4/flexmember.m4: New files.
19402
19403         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
19404         inline functions that are identical with the old xnmalloc_inline,
19405         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
19406         that we can avoid some unnecessary integer multiplications and
19407         divisions in the common case where the element size is known at
19408         compile time.
19409         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
19410         needed.
19411         (xnboundedmalloc): Remove.
19412         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
19413         arguments, for consistency with rest of this header.
19414         (xcharalloc): Rewrite using XNMALLOC.
19415         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
19416         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
19417         versions have been moved to lib/xalloc.h and renamed to be the
19418         non-*_inline versions.
19419         (xmalloc, xrealloc): Implement without reference to the xnmalloc
19420         and xnrealloc functions, since those functions are now inline and
19421         now call us.
19422         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
19423         renaming described above.
19424         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
19425         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
19426         captures the dependency in AC_C_INLINE.
19427
19428         New module canonicalize-lgpl, proposed by Charles Wilson in
19429         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
19430         with a few small changes afterwards.
19431         * MODULES.html.sh (File system functions): New module
19432         canonicalize-lgpl.
19433         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
19434         and canonicalize_file_name.
19435         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
19436         * modules/canonicalize-lgpl: New files.
19437
19438 2006-11-05  Bruno Haible  <bruno@clisp.org>
19439
19440         * gnulib-tool (func_import, func_create_testdir): Create directories
19441         also for files in subdirectories of lib/.
19442
19443 2006-11-05  Bruno Haible  <bruno@clisp.org>
19444
19445         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
19446         ANSI C compliant.
19447
19448 2006-11-03  Bruno Haible  <bruno@clisp.org>
19449
19450         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
19451         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
19452         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
19453         (xnboundedmalloc): New inline function.
19454         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
19455         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
19456         xmalloc.
19457         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
19458         xmalloc.
19459         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
19460         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
19461         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
19462         xmalloc.
19463         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
19464         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
19465         xmalloc.
19466         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
19467         gl_tree_add_after): Use XMALLOC instead of xmalloc.
19468         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
19469         xmalloc.
19470         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
19471         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
19472         gl_tree_add_after): Use XMALLOC instead of xmalloc.
19473         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
19474         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
19475         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
19476         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
19477
19478 2006-11-03  Bruno Haible  <bruno@clisp.org>
19479
19480         * lib/c-ctype.h [C++]: Define functions without name mangling.
19481         * lib/fwriteerror.h [C++]: Likewise.
19482         * lib/gcd.h [C++]: Likewise.
19483         * lib/linebreak.h [C++]: Likewise.
19484
19485 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
19486
19487         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
19488         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
19489         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
19490         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
19491         Check for functions and headers just once.
19492         Check for declaration of canonicalize_file_name.
19493         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
19494
19495 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19496
19497         * gnulib-tool (func_import): Fix typo in actioncmd.
19498
19499 2006-11-02  Bruno Haible  <bruno@clisp.org>
19500
19501         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
19502         newline sequence in the Makefile.am snippet as a space, like "make"
19503         does.
19504         Reported by Roger Persson <perrog@gmail.com>.
19505
19506 2006-11-01  Bruno Haible  <bruno@clisp.org>
19507
19508         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
19509         already declared in <string.h>.
19510         * lib/strcase.h (strncasecmp): Don't declare it if yes.
19511
19512 2006-11-01  Bruno Haible  <bruno@clisp.org>
19513
19514         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
19515         * lib/strcase.h: Include <string.h>.
19516         (strcasecmp): Define to rpl_strcasecmp here.
19517
19518 2006-11-01  Bruno Haible  <bruno@clisp.org>
19519
19520         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
19521
19522 2006-11-01  Eric Blake  <ebb9@byu.net>
19523
19524         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
19525
19526         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
19527
19528 2006-10-29  Bruno Haible  <bruno@clisp.org>
19529
19530         Make it compile in C++ mode.
19531         * lib/full-write.c (full_rw): Add a cast.
19532
19533 2006-11-01  Bruno Haible  <bruno@clisp.org>
19534
19535         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
19536         be POSIX compliant.
19537         Reported by Roger Persson <perrog@gmail.com>.
19538
19539 2006-11-01  Eric Blake  <ebb9@byu.net>
19540
19541         * lib/getopt_.h: Fix comments.
19542
19543 2006-10-31  Eric Blake  <ebb9@byu.net>
19544
19545         * modules/tmpdir (Depends-on): Add sys_stat.
19546         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
19547         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
19548         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
19549         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
19550         tempname.
19551
19552 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
19553
19554         Avoid some C++ diagnostics reported by Bruno Haible.
19555         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
19556         xmalloc.
19557         (quotearg_alloc): Use xcharalloc rather than xmalloc.
19558         (struct slotvec): Move to top level.
19559         (quotearg_n_options): Rewrite to avoid xmalloc.
19560         * lib/xalloc.h (xcharalloc): New function.
19561         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
19562         [defined __cplusplus]: Add function template that provides result
19563         type propagation.  This part of the change is from Bruno Haible.
19564
19565 2006-10-29  Bruno Haible  <bruno@clisp.org>
19566
19567         Make it compile in C++ mode.
19568         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
19569         * lib/strnlen1.c (strnlen1): Cast memchr result.
19570         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
19571         * lib/clean-temp.c (string_equals, string_hash): Add casts.
19572         (create_temp_dir): Rename local variable 'template'.
19573         (compile_csharp_using_sscli): Add cast.
19574         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
19575         * lib/findprog.c (find_in_path): Likewise.
19576         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
19577         * lib/wait-process.c (register_slave_subprocess): Likewise.
19578
19579 2006-10-22  Bruno Haible  <bruno@clisp.org>
19580
19581         * modules/tsearch: New file.
19582         * lib/tsearch.h: New file.
19583         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
19584         * m4/tsearch.m4: New file.
19585         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
19586
19587 2006-10-29  Eric Blake  <ebb9@byu.net>
19588
19589         * lib/arcfour.c: Assume config.h.
19590         * lib/arctwo.c: Likewise.
19591         * lib/base64.c: Likewise.
19592         * lib/check-version.c: Likewise.
19593         * lib/crc.c: Likewise.
19594         * lib/des.c: Likewise.
19595         * lib/gc-gnulib.c: Likewise.
19596         * lib/gc-libgcrypt.c: Likewise.
19597         * lib/gc-pbkdf2-sha1.c: Likewise.
19598         * lib/getaddrinfo.c: Likewise.
19599         * lib/getdelim.c: Likewise.
19600         * lib/getline.c: Likewise.
19601         * lib/hmac-md5.c: Likewise.
19602         * lib/hmac-sha1.c: Likewise.
19603         * lib/iconvme.c: Likewise.
19604         * lib/md2.c: Likewise.
19605         * lib/md4.c: Likewise.
19606         * lib/memxor.c: Likewise.
19607         * lib/read-file.c: Likewise.
19608         * lib/readline.c: Likewise.
19609         * lib/rijndael-alg-fst.c: Likewise.
19610         * lib/rijndael-api-fst.c: Likewise.
19611         * lib/xgetdomainname.c: Likewise.
19612
19613 2006-10-28  Eric Blake  <ebb9@byu.net>
19614
19615         * lib/xstrndup.c: Assume config.h.
19616
19617 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
19618
19619         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
19620         stat-macros.h is now for our own macros, whereas stat_h is for
19621         macros in the <sys/stat.h> name space.
19622         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
19623         (STAT_MACROS_H): Remove.
19624         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
19625         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
19626         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
19627         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
19628         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
19629         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
19630         Move these macros to ...
19631         * lib/stat_.h: here.  Don't include stat-macros.h.
19632         * lib/canonicalize.c: Don't include stat-macros.h.
19633         * lib/chown.c: Likewise.
19634         * lib/euidaccess.c: Likewise.
19635         * lib/file-type.c: Likewise.
19636         * lib/filemode.c: Likewise.
19637         * lib/glob.c: Likewise.
19638         * lib/isapipe.c: Likewise.
19639         * lib/lchown.c: Likewise.
19640         * lib/lstat.c: Likewise.
19641         * lib/mkdir-p.c: Likewise.
19642         * lib/rmdir.c: Likewise.
19643         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
19644         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
19645         unless mkdir isn't declared, to speed up 'configure'.
19646         Always create sys/stat.h, since it's unlikely any real sys/stat.h
19647         would define all the S_* symbols.
19648         * modules/canonicalize (Depends-on):
19649         Depend on sys_stat, not stat-macros.
19650         * modules/chown: Likewise.
19651         * modules/euidaccess: Likewise.
19652         * modules/filemode: Likewise.
19653         * modules/file-type: Likewise.
19654         * modules/glob: Likewise.
19655         * modules/isapipe: Likewise.
19656         * modules/lchown: Likewise.
19657         * modules/lstat: Likewise.
19658         * modules/mkancesdirs: Likewise.
19659         * modules/rmdir: Likewise.
19660         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
19661         * modules/modechange: Likewise.
19662         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
19663         (configure.ac): Remove gl_STAT_MACROS.
19664         * modules/sys_stat (Depends-on): Remove stat-macros.
19665
19666 2006-10-27  Bruno Haible  <bruno@clisp.org>
19667
19668         * m4/signed.m4: Remove file.
19669         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
19670         invocation.
19671         * modules/vasnprintf (Files): Remove m4/signed.m4.
19672
19673 2006-10-27  Bruno Haible  <bruno@clisp.org>
19674
19675         Update to GNU gettext 0.16.
19676         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
19677         m4/inttypes-h.m4, m4/signed.m4.
19678         * m4/gettext.m4: Update to GNU gettext 0.16.
19679         * m4/intl.m4: New file, from GNU gettext.
19680         * m4/intldir.m4: New file, from GNU gettext.
19681         * config/srclist.txt: Update
19682
19683 2006-10-27  Eric Blake  <ebb9@byu.net>
19684
19685         * MODULES.html.sh: Document tempname.
19686         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
19687         dependencies.
19688         (Files): Move lib/tempname.c...
19689         * modules/tempname: ...to this new module.
19690         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
19691         (gl_PREREQ_TEMPNAME): Move...
19692         * m4/tempname.m4: ...to this new file.
19693         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
19694         * modules/sys_stat (Depends-on): Add stat-macros.
19695         * lib/stat_.h (includes): Pick up stat macros.
19696         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
19697         if stat macros are broken.
19698         * lib/tempname.c (includes): No need to include "stat-macros.h".
19699         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
19700         (direxists, __path_search) [!_LIBC]: Don't compile these in
19701         gnulib; the tmpdir module covers that.
19702         * lib/tempname.h: New file.
19703
19704 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
19705
19706         * COPYING: Explain how gnulib-tool converts licence headers.
19707         Almost all wording by Eric Blake.
19708
19709 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
19710
19711         * lib/mbchar.h (is_basic_table): Make read-only.
19712         * lib/mbchar.c (is_basic_table): Likewise.
19713         Reported by John Darrington.
19714
19715 2006-10-25  Bruno Haible  <bruno@clisp.org>
19716
19717         * lib/progname.h (set_program_name): Undefine before defining.
19718
19719 2006-10-25  Bruno Haible  <bruno@clisp.org>
19720
19721         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
19722         false for non-gcc C++ compilers.
19723         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
19724
19725 2006-10-24  Bruno Haible  <bruno@clisp.org>
19726
19727         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
19728         iconv implementations like Irix iconv.
19729
19730 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19731
19732         * modules/vararrays: New file.
19733         * m4/vararrays.m4: New file, taken from diffutils.
19734         * MODULES.html.sh: New module vararrays.
19735
19736 2006-10-24  Karl Berry  <karl@gnu.org>
19737
19738         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
19739         Don't call GNU Unix.
19740
19741 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19742
19743         * users.txt: Add Libtool.
19744
19745         Sync from Libtool:
19746
19747         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19748
19749         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
19750         to gnulib's policy of including config.h unconditionally.
19751
19752 2006-10-24  Bruno Haible  <bruno@clisp.org>
19753
19754         * modules/wcwidth (Files): Add m4/wint_t.m4.
19755         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
19756         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
19757
19758 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19759
19760         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
19761         to pacify GCC with some -W flags enabled.  Problem reported by
19762         Bruno Haible.
19763
19764 2006-10-24  Jim Meyering  <jim@meyering.net>
19765
19766         * MODULES.html.sh: Remove uinttostr.  It's not a module.
19767         Reported by Karl Berry.
19768
19769 2006-10-23  Bruno Haible  <bruno@clisp.org>
19770
19771         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
19772
19773 2006-10-24  Bruno Haible  <bruno@clisp.org>
19774
19775         * lib/gl_list.h: Use C comment style, not C++ comment style.
19776
19777 2006-10-23  Eric Blake  <ebb9@byu.net>
19778
19779         * lib/getaddrinfo.c (includes): Add missing include.
19780
19781 2006-10-23  Bruno Haible  <bruno@clisp.org>
19782             Paul Eggert  <eggert@cs.ucla.edu>
19783
19784         Ability to rename obstack_free.
19785         * lib/obstack.h (__obstack_free): New macro. Declare instead of
19786         obstack_free.
19787         (obstack_free): Invoke the __obstack_free macro.
19788         * lib/obstack.c (obstack_free): Use __obstack_free macro.
19789
19790 2006-10-23  Bruno Haible  <bruno@clisp.org>
19791             Paul Eggert  <eggert@cs.ucla.edu>
19792
19793         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
19794         __argc, __argv from the declaration. (They are defined as macros on
19795         mingw.)
19796
19797 2006-10-22  Bruno Haible  <bruno@clisp.org>
19798
19799         * doc/gnulib-intro.texi: New file.
19800         * doc/gnulib.texi: Include it.
19801
19802 2006-10-21  Bruno Haible  <bruno@clisp.org>
19803
19804         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
19805         "Introduction", "Miscellanous Notes", "Particular Modules".
19806
19807 2006-10-21  Bruno Haible  <bruno@clisp.org>
19808
19809         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
19810         Change mostlyclean-local rule to avoid sh syntax error from bash
19811         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
19812
19813 2006-10-23  Jim Meyering  <jim@meyering.net>
19814
19815         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
19816         in place of snprintf.
19817
19818         * modules/inttostr (Files): Add lib/uinttostr.c.
19819         * lib/uinttostr.c (inttostr): New file/function.
19820         * lib/inttostr.h (uinttostr): Declare.
19821         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
19822         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
19823         Add uinttostr.
19824         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
19825
19826 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19827
19828         * lib/canonicalize.c (ELOOP): Define if not already defined.
19829         Problem reported by Bruno Haible in
19830         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
19831
19832 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19833
19834         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
19835         Problem reported by Perry Smith and Ville Laurikari.
19836
19837         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
19838         uses.
19839
19840 2006-10-19  Bruno Haible  <bruno@clisp.org>
19841
19842         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
19843         for mingw.
19844
19845 2006-10-19  Bruno Haible  <bruno@clisp.org>
19846
19847         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
19848         Needed for mingw.
19849
19850 2006-10-19  Bruno Haible  <bruno@clisp.org>
19851
19852         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
19853
19854 2006-10-19  Bruno Haible  <bruno@clisp.org>
19855
19856         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
19857         it.
19858
19859 2006-10-19  Bruno Haible  <bruno@clisp.org>
19860
19861         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
19862         invocation.
19863
19864 2006-10-19  Bruno Haible  <bruno@clisp.org>
19865
19866         * gnulib-tool (func_create_testdir): Don't include ftruncate and
19867         mountlist by default.
19868
19869 2006-10-16  Bruno Haible  <bruno@clisp.org>
19870
19871         * lib/c-strstr.c: Include c-strstr.h.
19872
19873 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
19874
19875         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
19876         in a slash.
19877
19878 2006-10-18  Bruno Haible  <bruno@clisp.org>
19879
19880         * lib/lock.h [C++]: Wrap definitions in extern "C".
19881
19882 2006-10-18  Bruno Haible  <bruno@clisp.org>
19883
19884         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
19885         gl_LIBOBJS list.
19886
19887 2006-10-18  Bruno Haible  <bruno@clisp.org>
19888
19889         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
19890
19891 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
19892
19893         * lib/xstrtol.h: Include gettext.h.
19894         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
19895         Problem reported by Eric Blake.
19896         * modules/xstrtol (Depends-on): Add gettext-h.
19897
19898 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
19899
19900         * lib/strftime.c (advance): New macro.
19901         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
19902         incomplete type, so you can't add 0 to it.  Problem and patch
19903         reported by Eelco Dolstra for dietlibc.
19904
19905 2006-10-18  Jim Meyering  <jim@meyering.net>
19906
19907         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
19908         type for a local, and rename it: s/up/user_proc/.
19909
19910 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
19911
19912         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
19913         READ_UTMP_USER_PROCESS.
19914         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
19915
19916 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19917
19918         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
19919         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
19920
19921 2006-10-17  Eric Blake  <ebb9@byu.net>
19922
19923         * lib/sigprocmask.c (sigprocmask): Fix typo.
19924
19925         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
19926
19927         * modules/clean-temp (Makefile.am): Don't add to make output...
19928         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
19929         config.h.
19930
19931 2006-10-17  Bruno Haible  <bruno@clisp.org>
19932
19933         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
19934         differently if DEFAULT_TEXT_DOMAIN is set.
19935
19936 2006-10-16  Bruno Haible  <bruno@clisp.org>
19937
19938         * lib/clean-temp.c: Include fwriteerror.h.
19939
19940 2006-10-16  Bruno Haible  <bruno@clisp.org>
19941
19942         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
19943
19944 2006-10-16  Bruno Haible  <bruno@clisp.org>
19945
19946         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
19947         * lib/sigprocmask.h: Include <sys/types.h>.
19948         (sigset_t): Use the system's definition if present.
19949
19950 2006-10-17  Eric Blake  <ebb9@byu.net>
19951
19952         * lib/xvasprintf.c (includes): Assume config.h.
19953         * lib/xasprintf.c (includes): Likewise.
19954
19955 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19956
19957         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
19958         at least as wide as intmax_t.
19959
19960 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
19961
19962         (Imported from Automake.)
19963         * build-aux/gnupload: Update to version 1.1 of directive file.
19964
19965 2006-10-16  Eric Blake  <ebb9@byu.net>
19966
19967         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
19968         match Automake 1.10a.
19969
19970 2006-10-14  Bruno Haible  <bruno@clisp.org>
19971
19972         * modules/sigprocmask: New file.
19973         * lib/sigprocmask.h: New file.
19974         * lib/sigprocmask.c: New file.
19975         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
19976         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
19977         request sigprocmask.o.
19978         (gl_PREREQ_SIGPROCMASK): New macro.
19979         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
19980         (Depends-on): Add sigprocmask.
19981         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
19982         gt_SIGNALBLOCKING. Test for 'raise' only once.
19983         * lib/fatal-signal.c: Include sigprocmask.h.
19984         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
19985         unblock_fatal_signals): Define always.
19986         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
19987         sigprocmask.
19988
19989 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19990
19991         Sync from Automake.
19992         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
19993         which incorrectly sets the mode of an existing destination
19994         directory.  In some cases the unpatched install-sh could do the
19995         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
19996         system.  We hope this is rare in practice, but it's clearly worth
19997         fixing.  Problem reported by Alex Unleashed in
19998         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
19999         Also, don't bother to check for -m bugs unless we're using -m;
20000         suggested by Stepan Kasal.
20001
20002 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20003
20004         Sync from Automake.
20005         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
20006         `-c' flag, so they appear at the same position as in %FASTDEP%
20007         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
20008         which ignores unknown options only after the first non-option.
20009         Bug report against M4 by Nelson H. F. Beebe.
20010
20011 2006-10-13  Jim Meyering  <jim@meyering.net>
20012
20013         Fix a bug in yesterday's change.
20014         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
20015         p->fts_statp->st_dev would be used uninitialized.
20016         Ensures that we always call fts_stat on the very first entry.
20017         Miklos Szeredi reported that find -xdev stopped working.
20018
20019 2006-10-12  Bruno Haible  <bruno@clisp.org>
20020
20021         * gnulib-tool (func_get_automake_snippet): Append an automatically
20022         computed EXTRA_DIST augmentation.
20023         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
20024         * modules/alloca-opt (Makefile.am): Likewise.
20025         * modules/allocsa (Makefile.am): Likewise.
20026         * modules/arcfour (Makefile.am): Likewise.
20027         * modules/arctwo (Makefile.am): Likewise.
20028         * modules/argmatch (Makefile.am): Likewise.
20029         * modules/argz (Makefile.am): Likewise.
20030         * modules/atexit (Makefile.am): Likewise.
20031         * modules/backupfile (Makefile.am): Likewise.
20032         * modules/byteswap (Makefile.am): Likewise.
20033         * modules/c-strtod (Makefile.am): Likewise.
20034         * modules/c-strtold (Makefile.am): Likewise.
20035         * modules/calloc (Makefile.am): Likewise.
20036         * modules/canon-host (Makefile.am): Likewise.
20037         * modules/canonicalize (Makefile.am): Likewise.
20038         * modules/chdir-long (Makefile.am): Likewise.
20039         * modules/chdir-safer (Makefile.am): Likewise.
20040         * modules/check-version (Makefile.am): Likewise.
20041         * modules/chown (Makefile.am): Likewise.
20042         * modules/cloexec (Makefile.am): Likewise.
20043         * modules/close-stream (Makefile.am): Likewise.
20044         * modules/closeout (Makefile.am): Likewise.
20045         * modules/crc (Makefile.am): Likewise.
20046         * modules/csharpexec (Makefile.am): Likewise.
20047         * modules/cycle-check (Makefile.am): Likewise.
20048         * modules/des (Makefile.am): Likewise.
20049         * modules/dev-ino (Makefile.am): Likewise.
20050         * modules/dirfd (Makefile.am): Likewise.
20051         * modules/dirname (Makefile.am): Likewise.
20052         * modules/dup2 (Makefile.am): Likewise.
20053         * modules/eealloc (Makefile.am): Likewise.
20054         * modules/error (Makefile.am): Likewise.
20055         * modules/euidaccess (Makefile.am): Likewise.
20056         * modules/exclude (Makefile.am): Likewise.
20057         * modules/exitfail (Makefile.am): Likewise.
20058         * modules/fcntl-safer (Makefile.am): Likewise.
20059         * modules/fcntl (Makefile.am): Likewise.
20060         * modules/file-type (Makefile.am): Likewise.
20061         * modules/fileblocks (Makefile.am): Likewise.
20062         * modules/filemode (Makefile.am): Likewise.
20063         * modules/filenamecat (Makefile.am): Likewise.
20064         * modules/fnmatch (Makefile.am): Likewise.
20065         * modules/fopen-safer (Makefile.am): Likewise.
20066         * modules/fpending (Makefile.am): Likewise.
20067         * modules/fprintftime (Makefile.am): Likewise.
20068         * modules/free (Makefile.am): Likewise.
20069         * modules/fsusage (Makefile.am): Likewise.
20070         * modules/ftruncate (Makefile.am): Likewise.
20071         * modules/fts (Makefile.am): Likewise.
20072         * modules/gc-arcfour (Makefile.am): Likewise.
20073         * modules/gc-des (Makefile.am): Likewise.
20074         * modules/gc-hmac-md5 (Makefile.am): Likewise.
20075         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
20076         * modules/gc-md4 (Makefile.am): Likewise.
20077         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
20078         * modules/gc-sha1 (Makefile.am): Likewise.
20079         * modules/gc (Makefile.am): Likewise.
20080         * modules/getaddrinfo (Makefile.am): Likewise.
20081         * modules/getcwd (Makefile.am): Likewise.
20082         * modules/getdelim (Makefile.am): Likewise.
20083         * modules/getdomainname (Makefile.am): Likewise.
20084         * modules/getgroups (Makefile.am): Likewise.
20085         * modules/gethostname (Makefile.am): Likewise.
20086         * modules/gethrxtime (Makefile.am): Likewise.
20087         * modules/getline (Makefile.am): Likewise.
20088         * modules/getloadavg (Makefile.am): Likewise.
20089         * modules/getlogin_r (Makefile.am): Likewise.
20090         * modules/getndelim2 (Makefile.am): Likewise.
20091         * modules/getopt (Makefile.am): Likewise.
20092         * modules/getpagesize (Makefile.am): Likewise.
20093         * modules/getpass-gnu (Makefile.am): Likewise.
20094         * modules/getpass (Makefile.am): Likewise.
20095         * modules/getsubopt (Makefile.am): Likewise.
20096         * modules/gettime (Makefile.am): Likewise.
20097         * modules/gettimeofday (Makefile.am): Likewise.
20098         * modules/getugroups (Makefile.am): Likewise.
20099         * modules/getusershell (Makefile.am): Likewise.
20100         * modules/glob (Makefile.am): Likewise.
20101         * modules/group-member (Makefile.am): Likewise.
20102         * modules/hard-locale (Makefile.am): Likewise.
20103         * modules/hash (Makefile.am): Likewise.
20104         * modules/hmac-md5 (Makefile.am): Likewise.
20105         * modules/hmac-sha1 (Makefile.am): Likewise.
20106         * modules/human (Makefile.am): Likewise.
20107         * modules/idcache (Makefile.am): Likewise.
20108         * modules/imaxabs (Makefile.am): Likewise.
20109         * modules/imaxdiv (Makefile.am): Likewise.
20110         * modules/inet_ntop (Makefile.am): Likewise.
20111         * modules/inet_pton (Makefile.am): Likewise.
20112         * modules/intprops (Makefile.am): Likewise.
20113         * modules/inttostr (Makefile.am): Likewise.
20114         * modules/inttypes (Makefile.am): Likewise.
20115         * modules/isapipe (Makefile.am): Likewise.
20116         * modules/javaversion (Makefile.am): Likewise.
20117         * modules/lchmod (Makefile.am): Likewise.
20118         * modules/lchown (Makefile.am): Likewise.
20119         * modules/localcharset (Makefile.am): Likewise.
20120         * modules/long-options (Makefile.am): Likewise.
20121         * modules/lstat (Makefile.am): Likewise.
20122         * modules/malloc (Makefile.am): Likewise.
20123         * modules/mathl (Makefile.am): Likewise.
20124         * modules/mbchar (Makefile.am): Likewise.
20125         * modules/md2 (Makefile.am): Likewise.
20126         * modules/md4 (Makefile.am): Likewise.
20127         * modules/md5 (Makefile.am): Likewise.
20128         * modules/memcasecmp (Makefile.am): Likewise.
20129         * modules/memchr (Makefile.am): Likewise.
20130         * modules/memcmp (Makefile.am): Likewise.
20131         * modules/memcoll (Makefile.am): Likewise.
20132         * modules/memcpy (Makefile.am): Likewise.
20133         * modules/memmem (Makefile.am): Likewise.
20134         * modules/memmove (Makefile.am): Likewise.
20135         * modules/mempcpy (Makefile.am): Likewise.
20136         * modules/memrchr (Makefile.am): Likewise.
20137         * modules/memset (Makefile.am): Likewise.
20138         * modules/memxor (Makefile.am): Likewise.
20139         * modules/mkancesdirs (Makefile.am): Likewise.
20140         * modules/mkdir-p (Makefile.am): Likewise.
20141         * modules/mkdir (Makefile.am): Likewise.
20142         * modules/mkdtemp (Makefile.am): Likewise.
20143         * modules/mkstemp (Makefile.am): Likewise.
20144         * modules/mktime (Makefile.am): Likewise.
20145         * modules/modechange (Makefile.am): Likewise.
20146         * modules/mountlist (Makefile.am): Likewise.
20147         * modules/nanosleep (Makefile.am): Likewise.
20148         * modules/obstack (Makefile.am): Likewise.
20149         * modules/openat (Makefile.am): Likewise.
20150         * modules/pagealign_alloc (Makefile.am): Likewise.
20151         * modules/pathmax (Makefile.am): Likewise.
20152         * modules/physmem (Makefile.am): Likewise.
20153         * modules/poll (Makefile.am): Likewise.
20154         * modules/posixtm (Makefile.am): Likewise.
20155         * modules/posixver (Makefile.am): Likewise.
20156         * modules/putenv (Makefile.am): Likewise.
20157         * modules/quote (Makefile.am): Likewise.
20158         * modules/quotearg (Makefile.am): Likewise.
20159         * modules/raise (Makefile.am): Likewise.
20160         * modules/read-file (Makefile.am): Likewise.
20161         * modules/readline (Makefile.am): Likewise.
20162         * modules/readlink (Makefile.am): Likewise.
20163         * modules/readtokens (Makefile.am): Likewise.
20164         * modules/readutmp (Makefile.am): Likewise.
20165         * modules/realloc (Makefile.am): Likewise.
20166         * modules/regex (Makefile.am): Likewise.
20167         * modules/rename-dest-slash (Makefile.am): Likewise.
20168         * modules/rename (Makefile.am): Likewise.
20169         * modules/rijndael (Makefile.am): Likewise.
20170         * modules/rmdir (Makefile.am): Likewise.
20171         * modules/rpmatch (Makefile.am): Likewise.
20172         * modules/safe-read (Makefile.am): Likewise.
20173         * modules/safe-write (Makefile.am): Likewise.
20174         * modules/same-inode (Makefile.am): Likewise.
20175         * modules/same (Makefile.am): Likewise.
20176         * modules/save-cwd (Makefile.am): Likewise.
20177         * modules/savedir (Makefile.am): Likewise.
20178         * modules/setenv (Makefile.am): Likewise.
20179         * modules/settime (Makefile.am): Likewise.
20180         * modules/sha1 (Makefile.am): Likewise.
20181         * modules/sig2str (Makefile.am): Likewise.
20182         * modules/snprintf (Makefile.am): Likewise.
20183         * modules/stat-macros (Makefile.am): Likewise.
20184         * modules/stat-time (Makefile.am): Likewise.
20185         * modules/stdbool (Makefile.am): Likewise.
20186         * modules/stdint (Makefile.am): Likewise.
20187         * modules/stdlib-safer (Makefile.am): Likewise.
20188         * modules/stpcpy (Makefile.am): Likewise.
20189         * modules/stpncpy (Makefile.am): Likewise.
20190         * modules/strcase (Makefile.am): Likewise.
20191         * modules/strcasestr (Makefile.am): Likewise.
20192         * modules/strchrnul (Makefile.am): Likewise.
20193         * modules/strcspn (Makefile.am): Likewise.
20194         * modules/strdup (Makefile.am): Likewise.
20195         * modules/strerror (Makefile.am): Likewise.
20196         * modules/strftime (Makefile.am): Likewise.
20197         * modules/strndup (Makefile.am): Likewise.
20198         * modules/strnlen (Makefile.am): Likewise.
20199         * modules/strpbrk (Makefile.am): Likewise.
20200         * modules/strsep (Makefile.am): Likewise.
20201         * modules/strstr (Makefile.am): Likewise.
20202         * modules/strtod (Makefile.am): Likewise.
20203         * modules/strtoimax (Makefile.am): Likewise.
20204         * modules/strtok_r (Makefile.am): Likewise.
20205         * modules/strtol (Makefile.am): Likewise.
20206         * modules/strtoll (Makefile.am): Likewise.
20207         * modules/strtoul (Makefile.am): Likewise.
20208         * modules/strtoull (Makefile.am): Likewise.
20209         * modules/strtoumax (Makefile.am): Likewise.
20210         * modules/strverscmp (Makefile.am): Likewise.
20211         * modules/sys_socket (Makefile.am): Likewise.
20212         * modules/sys_stat (Makefile.am): Likewise.
20213         * modules/sysexits (Makefile.am): Likewise.
20214         * modules/time_r (Makefile.am): Likewise.
20215         * modules/timegm (Makefile.am): Likewise.
20216         * modules/timespec (Makefile.am): Likewise.
20217         * modules/tmpfile-safer (Makefile.am): Likewise.
20218         * modules/trim (Makefile.am): Likewise.
20219         * modules/unistd-safer (Makefile.am): Likewise.
20220         * modules/unlinkdir (Makefile.am): Likewise.
20221         * modules/unlocked-io (Makefile.am): Likewise.
20222         * modules/userspec (Makefile.am): Likewise.
20223         * modules/utime (Makefile.am): Likewise.
20224         * modules/utimecmp (Makefile.am): Likewise.
20225         * modules/utimens (Makefile.am): Likewise.
20226         * modules/vasnprintf (Makefile.am): Likewise.
20227         * modules/vasprintf (Makefile.am): Likewise.
20228         * modules/vsnprintf (Makefile.am): Likewise.
20229         * modules/xalloc (Makefile.am): Likewise.
20230         * modules/xgetcwd (Makefile.am): Likewise.
20231         * modules/xnanosleep (Makefile.am): Likewise.
20232         * modules/xreadlink (Makefile.am): Likewise.
20233         * modules/xstrtod (Makefile.am): Likewise.
20234         * modules/xstrtol (Makefile.am): Likewise.
20235         * modules/xstrtold (Makefile.am): Likewise.
20236         * modules/yesno (Makefile.am): Likewise.
20237         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
20238
20239 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20240
20241         * modules/error (Makefile.am): Distribute files through
20242         EXTRA_DIST, not lib_SOURCES.
20243
20244 2006-10-12  Eric Blake  <ebb9@byu.net>
20245
20246         * modules/error (Makefile.am): Distribute files in /lib.
20247         * modules/obstack (Makefile.am): Likewise.
20248
20249 2006-10-12  Bruno Haible  <bruno@clisp.org>
20250
20251         * modules/acl (Makefile.am): Distribute all files in lib/ through
20252         EXTRA_DIST.
20253         * modules/arcfour (Makefile.am): Likewise.
20254         * modules/arctwo (Makefile.am): Likewise.
20255         * modules/argmatch (Makefile.am): Likewise.
20256         * modules/argz (Makefile.am): Likewise.
20257         * modules/atexit (Makefile.am): Likewise.
20258         * modules/backupfile (Makefile.am): Likewise.
20259         * modules/c-strtod (Makefile.am): Likewise.
20260         * modules/c-strtold (Makefile.am): Likewise.
20261         * modules/calloc (Makefile.am): Likewise.
20262         * modules/canon-host (Makefile.am): Likewise.
20263         * modules/canonicalize (Makefile.am): Likewise.
20264         * modules/chdir-long (Makefile.am): Likewise.
20265         * modules/chdir-safer (Makefile.am): Likewise.
20266         * modules/check-version (Makefile.am): Likewise.
20267         * modules/chown (Makefile.am): Likewise.
20268         * modules/cloexec (Makefile.am): Likewise.
20269         * modules/close-stream (Makefile.am): Likewise.
20270         * modules/closeout (Makefile.am): Likewise.
20271         * modules/crc (Makefile.am): Likewise.
20272         * modules/cycle-check (Makefile.am): Likewise.
20273         * modules/des (Makefile.am): Likewise.
20274         * modules/dirfd (Makefile.am): Likewise.
20275         * modules/dirname (Makefile.am): Likewise.
20276         * modules/dup2 (Makefile.am): Likewise.
20277         * modules/euidaccess (Makefile.am): Likewise.
20278         * modules/exclude (Makefile.am): Likewise.
20279         * modules/exitfail (Makefile.am): Likewise.
20280         * modules/fcntl-safer (Makefile.am): Likewise.
20281         * modules/file-type (Makefile.am): Likewise.
20282         * modules/fileblocks (Makefile.am): Likewise.
20283         * modules/filemode (Makefile.am): Likewise.
20284         * modules/filenamecat (Makefile.am): Likewise.
20285         * modules/fnmatch (Makefile.am): Likewise.
20286         * modules/fopen-safer (Makefile.am): Likewise.
20287         * modules/fpending (Makefile.am): Likewise.
20288         * modules/fprintftime (Makefile.am): Likewise.
20289         * modules/free (Makefile.am): Likewise.
20290         * modules/fsusage (Makefile.am): Likewise.
20291         * modules/ftruncate (Makefile.am): Likewise.
20292         * modules/fts (Makefile.am): Likewise.
20293         * modules/gc (Makefile.am): Likewise.
20294         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
20295         * modules/getaddrinfo (Makefile.am): Likewise.
20296         * modules/getcwd (Makefile.am): Likewise.
20297         * modules/getdelim (Makefile.am): Likewise.
20298         * modules/getdomainname (Makefile.am): Likewise.
20299         * modules/getgroups (Makefile.am): Likewise.
20300         * modules/gethostname (Makefile.am): Likewise.
20301         * modules/gethrxtime (Makefile.am): Likewise.
20302         * modules/getline (Makefile.am): Likewise.
20303         * modules/getloadavg (Makefile.am): Likewise.
20304         * modules/getlogin_r (Makefile.am): Likewise.
20305         * modules/getopt (Makefile.am): Likewise.
20306         * modules/getpass (Makefile.am): Likewise.
20307         * modules/getpass-gnu (Makefile.am): Likewise.
20308         * modules/getsubopt (Makefile.am): Likewise.
20309         * modules/gettime (Makefile.am): Likewise.
20310         * modules/gettimeofday (Makefile.am): Likewise.
20311         * modules/getugroups (Makefile.am): Likewise.
20312         * modules/getusershell (Makefile.am): Likewise.
20313         * modules/glob (Makefile.am): Likewise.
20314         * modules/group-member (Makefile.am): Likewise.
20315         * modules/hard-locale (Makefile.am): Likewise.
20316         * modules/hash (Makefile.am): Likewise.
20317         * modules/hmac-md5 (Makefile.am): Likewise.
20318         * modules/hmac-sha1 (Makefile.am): Likewise.
20319         * modules/human (Makefile.am): Likewise.
20320         * modules/idcache (Makefile.am): Likewise.
20321         * modules/imaxabs (Makefile.am): Likewise.
20322         * modules/imaxdiv (Makefile.am): Likewise.
20323         * modules/inet_ntop (Makefile.am): Likewise.
20324         * modules/inet_pton (Makefile.am): Likewise.
20325         * modules/inttostr (Makefile.am): Likewise.
20326         * modules/isapipe (Makefile.am): Likewise.
20327         * modules/lchown (Makefile.am): Likewise.
20328         * modules/long-options (Makefile.am): Likewise.
20329         * modules/lstat (Makefile.am): Likewise.
20330         * modules/malloc (Makefile.am): Likewise.
20331         * modules/mathl (Makefile.am): Likewise.
20332         * modules/mbchar (Makefile.am): Likewise.
20333         * modules/md2 (Makefile.am): Likewise.
20334         * modules/md4 (Makefile.am): Likewise.
20335         * modules/md5 (Makefile.am): Likewise.
20336         * modules/memcasecmp (Makefile.am): Likewise.
20337         * modules/memchr (Makefile.am): Likewise.
20338         * modules/memcmp (Makefile.am): Likewise.
20339         * modules/memcoll (Makefile.am): Likewise.
20340         * modules/memcpy (Makefile.am): Likewise.
20341         * modules/memmem (Makefile.am): Likewise.
20342         * modules/memmove (Makefile.am): Likewise.
20343         * modules/mempcpy (Makefile.am): Likewise.
20344         * modules/memrchr (Makefile.am): Likewise.
20345         * modules/memset (Makefile.am): Likewise.
20346         * modules/memxor (Makefile.am): Likewise.
20347         * modules/mkancesdirs (Makefile.am): Likewise.
20348         * modules/mkdir (Makefile.am): Likewise.
20349         * modules/mkdir-p (Makefile.am): Likewise.
20350         * modules/mkdtemp (Makefile.am): Likewise.
20351         * modules/mkstemp (Makefile.am): Likewise.
20352         * modules/mktime (Makefile.am): Likewise.
20353         * modules/modechange (Makefile.am): Likewise.
20354         * modules/mountlist (Makefile.am): Likewise.
20355         * modules/nanosleep (Makefile.am): Likewise.
20356         * modules/openat (Makefile.am): Likewise.
20357         * modules/pagealign_alloc (Makefile.am): Likewise.
20358         * modules/physmem (Makefile.am): Likewise.
20359         * modules/poll (Makefile.am): Likewise.
20360         * modules/posixtm (Makefile.am): Likewise.
20361         * modules/posixver (Makefile.am): Likewise.
20362         * modules/putenv (Makefile.am): Likewise.
20363         * modules/quote (Makefile.am): Likewise.
20364         * modules/quotearg (Makefile.am): Likewise.
20365         * modules/raise (Makefile.am): Likewise.
20366         * modules/read-file (Makefile.am): Likewise.
20367         * modules/readline (Makefile.am): Likewise.
20368         * modules/readlink (Makefile.am): Likewise.
20369         * modules/readtokens (Makefile.am): Likewise.
20370         * modules/readutmp (Makefile.am): Likewise.
20371         * modules/realloc (Makefile.am): Likewise.
20372         * modules/regex (Makefile.am): Likewise.
20373         * modules/rename (Makefile.am): Likewise.
20374         * modules/rename-dest-slash (Makefile.am): Likewise.
20375         * modules/rijndael (Makefile.am): Likewise.
20376         * modules/rmdir (Makefile.am): Likewise.
20377         * modules/rpmatch (Makefile.am): Likewise.
20378         * modules/safe-read (Makefile.am): Likewise.
20379         * modules/safe-write (Makefile.am): Likewise.
20380         * modules/same (Makefile.am): Likewise.
20381         * modules/save-cwd (Makefile.am): Likewise.
20382         * modules/savedir (Makefile.am): Likewise.
20383         * modules/setenv (Makefile.am): Likewise.
20384         * modules/settime (Makefile.am): Likewise.
20385         * modules/sha1 (Makefile.am): Likewise.
20386         * modules/sig2str (Makefile.am): Likewise.
20387         * modules/snprintf (Makefile.am): Likewise.
20388         * modules/stdlib-safer (Makefile.am): Likewise.
20389         * modules/stpcpy (Makefile.am): Likewise.
20390         * modules/stpncpy (Makefile.am): Likewise.
20391         * modules/strcase (Makefile.am): Likewise.
20392         * modules/strcasestr (Makefile.am): Likewise.
20393         * modules/strchrnul (Makefile.am): Likewise.
20394         * modules/strcspn (Makefile.am): Likewise.
20395         * modules/strdup (Makefile.am): Likewise.
20396         * modules/strerror (Makefile.am): Likewise.
20397         * modules/strftime (Makefile.am): Likewise.
20398         * modules/strndup (Makefile.am): Likewise.
20399         * modules/strnlen (Makefile.am): Likewise.
20400         * modules/strpbrk (Makefile.am): Likewise.
20401         * modules/strsep (Makefile.am): Likewise.
20402         * modules/strstr (Makefile.am): Likewise.
20403         * modules/strtod (Makefile.am): Likewise.
20404         * modules/strtoimax (Makefile.am): Likewise.
20405         * modules/strtok_r (Makefile.am): Likewise.
20406         * modules/strtol (Makefile.am): Likewise.
20407         * modules/strtoll (Makefile.am): Likewise.
20408         * modules/strtoul (Makefile.am): Likewise.
20409         * modules/strtoull (Makefile.am): Likewise.
20410         * modules/strtoumax (Makefile.am): Likewise.
20411         * modules/strverscmp (Makefile.am): Likewise.
20412         * modules/time_r (Makefile.am): Likewise.
20413         * modules/timegm (Makefile.am): Likewise.
20414         * modules/tmpfile-safer (Makefile.am): Likewise.
20415         * modules/unistd-safer (Makefile.am): Likewise.
20416         * modules/unlinkdir (Makefile.am): Likewise.
20417         * modules/userspec (Makefile.am): Likewise.
20418         * modules/utime (Makefile.am): Likewise.
20419         * modules/utimecmp (Makefile.am): Likewise.
20420         * modules/utimens (Makefile.am): Likewise.
20421         * modules/vasnprintf (Makefile.am): Likewise.
20422         * modules/vasprintf (Makefile.am): Likewise.
20423         * modules/vsnprintf (Makefile.am): Likewise.
20424         * modules/xalloc (Makefile.am): Likewise.
20425         * modules/xgetcwd (Makefile.am): Likewise.
20426         * modules/xnanosleep (Makefile.am): Likewise.
20427         * modules/xreadlink (Makefile.am): Likewise.
20428         * modules/xstrtod (Makefile.am): Likewise.
20429         * modules/xstrtol (Makefile.am): Likewise.
20430         * modules/xstrtold (Makefile.am): Likewise.
20431         * modules/yesno (Makefile.am): Likewise.
20432
20433 2006-10-12  Jim Meyering  <jim@meyering.net>
20434
20435         * m4/getloadavg.m4: Revert the change below.
20436
20437         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
20438         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
20439         fail with a symlink, which is what coreutils' ./bootstrap now
20440         creates by default.
20441
20442 2006-10-12  Bruno Haible  <bruno@clisp.org>
20443
20444         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
20445         mingw.
20446         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
20447         MSVC and mingw explicitly.
20448
20449 2006-10-11  Simon Josefsson  <jas@extundo.com>
20450             Bruno Haible  <bruno@clisp.org>
20451
20452         Add support for multiple gnulib-tool invocations in the scope of a
20453         single configure.ac file.
20454         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
20455         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
20456         with the same contents as the _LIBADD variable.
20457         (func_emit_initmacro_start, func_emit_initmacro_end,
20458         func_emit_initmacro_done): New functions.
20459         (func_import, func_create_testdir): Invoke them. Allow the identifiers
20460         gl_LIBOBJS and gl_LTLIBOBJS.
20461
20462 2006-10-11  Bruno Haible  <bruno@clisp.org>
20463
20464         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
20465         (func_create_testdir): Don't create po/Makefile.am, don't invoke
20466         autoreconf. Instead, invoke autopoint explicitly but move back the
20467         *.m4 files from gnulib.
20468
20469 2006-10-11  Bruno Haible  <bruno@clisp.org>
20470
20471         * gnulib-tool (func_usage): Make module names after --create-testdir
20472         optional.
20473         (func_create_testdir): If no module was specified, use nearly all
20474         modules.
20475
20476 2006-10-12  Jim Meyering  <jim@meyering.net>
20477
20478         Big performance improvement for fts-based tools that use FTS_NOSTAT.
20479         Avoid spurious inode-mismatch problems on non-POSIX file systems.
20480         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
20481         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
20482         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
20483         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
20484         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
20485         (fts_set_stat_required): New function.
20486         (fts_open): Defer the calls to fts_stat, if possible or requested.
20487         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
20488         into fts_stat itself.
20489         (fts_read): Perform any required (deferred) fts_stat call.
20490         (fts_build): Likewise, for the directory we're about to open and read.
20491         In the readdir loop, carefully decide whether each entry will require
20492         an eventual call to fts_stat, using dirent.d_type info if available.
20493         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
20494         a command line argument into this function.  Update all callers.
20495         Map a return value of FTS_DOT to FTS_D for a command line argument.
20496         * modules/fts (Depends-on): Add d-type.  Alphabetize.
20497         Thanks to Miklos Szeredi for his tenacity and for the initial
20498         bug report about "find" failing on a FUSE-based file system.
20499
20500         * lib/fts.c (fts_open): Use consistent indentation.
20501
20502 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20503
20504         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
20505         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
20506         reported by Jim Meyering.  All uses of cache variables renamed
20507         to match Autoconf's.
20508         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
20509         the other one.
20510
20511         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
20512         Fix misspelling in diagnostic.
20513
20514 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
20515
20516         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
20517         defined.  Problem reported by Matthew Woehlke.
20518
20519         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
20520         Add support for Tandem NonStop R series.
20521         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
20522         Use new macro.
20523
20524         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
20525         (has_trailing_slash): Omit size arg; all callers changed.
20526         Omit 'inline', since it doesn't help performance and we'd
20527         need to configure it.
20528         Don't count //, ///, etc. as having a trailing slash.
20529         As a side effect, this removes a C99ism reported by Matthew Woehlke.
20530         (rpl_rename_dest_slash): On failure, use rename's errno rather
20531         than (in some cases) an incorrect or junk errno.
20532         Simplify code by removing need to compute length; this does
20533         cause it to make two passes instead of one over the file name,
20534         but it's worth it.
20535
20536         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
20537         change, since Autoconf's version may no longer be appropriate now
20538         that we are using CVS Autoconf's version.  Add support for Tandem.
20539
20540 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
20541             Bruno Haible  <bruno@clisp.org>
20542
20543         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
20544         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
20545         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
20546         gl_AC_TYPE_LONG_LONG.
20547
20548         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
20549         instead of HAVE_LONG_LONG.
20550         * lib/printf-args.c (printf_fetchargs): Likewise.
20551         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
20552         * lib/vasnprintf.c (VASNPRINTF): Likewise.
20553         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
20554         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
20555         gl_AC_TYPE_LONG_LONG.
20556
20557 2006-10-11  Bruno Haible  <bruno@clisp.org>
20558
20559         * m4/longlong.m4: Add comments.
20560         * m4/ulonglong.m4: Likewise.
20561
20562 2006-10-10  Bruno Haible  <bruno@clisp.org>
20563
20564         Make it possible to #define stpcpy, strdup to aliases.
20565         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
20566         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
20567
20568 2006-10-10  Bruno Haible  <bruno@clisp.org>
20569
20570         Make it possible to #define gcd to an alias.
20571         * lib/gcd.c: Include config.h.
20572
20573 2006-10-10  Bruno Haible  <bruno@clisp.org>
20574
20575         Make it possible to #define c_isascii to an alias.
20576         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
20577         defined. Undefine the macros before defining them, to avoid gcc
20578         warnings.
20579         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
20580         define NO_C_CTYPE_MACROS early.
20581
20582 2006-10-10  Bruno Haible  <bruno@clisp.org>
20583
20584         Make it possible to #define set_program_name to an alias.
20585         * lib/progname.c: Don't undefine set_program_name; instead, undefine
20586         ENABLE_RELOCATABLE early.
20587
20588 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20589
20590         Port to Tandem NSK OSS, which has 64-bit signed int but at most
20591         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
20592         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
20593         More generally, don't assume that 64-bit signed int is available
20594         if unsigned int is, and vice versa.
20595         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
20596         unsigned symbols, not on their signed counterparts.
20597         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
20598         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
20599         (UINT64_C, UINTMAX_C):
20600         Likewise.
20601         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
20602         unsigned counterparts.
20603         (Have_long_long, Unsigned): New macros.
20604         (Int): Renamed from INT.
20605         (strtoimax): Use the new macros.
20606         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
20607         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
20608         * modules/inttypes (inttypes.h): Substitute
20609         HAVE_UNSIGNED_LONG_LONG_INT.
20610         * modules/stdint (stdint.h): Likewise.
20611         (Files): Add m4/ulonglong.m4.
20612
20613 2006-10-10  Bruno Haible  <bruno@clisp.org>
20614
20615         Fix a gcc -Wshadow warning.
20616         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
20617         to 'bucket'.
20618         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
20619         gl_linked_indexof_from_to): Likewise.
20620         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
20621         Likewise.
20622         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
20623         Likewise.
20624         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
20625         Reported by Eric Blake.
20626
20627 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
20628
20629         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
20630         for NetBSD.  Problem reported by Bruno Haible.
20631
20632 2006-10-09  Jim Meyering  <jim@meyering.net>
20633
20634         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
20635         Patch from Bruno Haible.
20636
20637 2006-10-09  Jim Meyering  <jim@meyering.net>
20638
20639         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
20640         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
20641         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
20642
20643 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20644
20645         Don't include <config.h> twice; this doesn't work in some cases,
20646         e.g., when config.h has "#define intmax_t long long int" and
20647         we include <config.h>, <inttypes.h>, <config.h> in that order.
20648         Problem reported by Matthew Woehlke in:
20649         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
20650         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
20651         * lib/fts-cycle.c: Don't include config.h.
20652         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
20653         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
20654         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
20655         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
20656         inttypes.h.
20657         * lib/xstrtoumax.c: Likewise.
20658         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
20659         __strtol and the like, so that this module is more like its siblings.
20660         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
20661         Remove; no longer needed now that we assume gnulib inttypes.h.
20662
20663 2006-10-08  Bruno Haible  <bruno@clisp.org>
20664
20665         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
20666         option.
20667
20668 2006-10-07  Jim Meyering  <jim@meyering.net>
20669
20670         * modules/inttypes (inttypes.h): Revert what seems to have been
20671         an inadvertent part of today's change: use "|", not "/" in the
20672         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
20673
20674 2006-10-07  Bruno Haible  <bruno@clisp.org>
20675
20676         * modules/sublist: New file.
20677
20678 2006-10-07  Bruno Haible  <bruno@clisp.org>
20679
20680         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
20681         * modules/argz (argz.h): Likewise.
20682         * modules/arpa_inet (arpa/inet.h): Likewise.
20683         * modules/byteswap (byteswap.h): Likewise.
20684         * modules/configmake (configmake.h): Likewise.
20685         * modules/fcntl (fcntl.h): Likewise.
20686         * modules/fnmatch (fnmatch.h): Likewise.
20687         * modules/getopt (getopt.h): Likewise.
20688         * modules/glob (glob.h): Likewise.
20689         * modules/inttypes (inttypes.h): Likewise.
20690         * modules/netinet_in (netinet/in.h): Likewise.
20691         * modules/poll (poll.h): Likewise.
20692         * modules/stdbool (stdbool.h): Likewise.
20693         * modules/stdint (stdint.h): Likewise.
20694         * modules/sys_select (sys/select.h): Likewise.
20695         * modules/sys_socket (sys/socket.h): Likewise.
20696         * modules/sys_stat (sys/stat.h): Likewise.
20697         * modules/sysexits (sysexits.h): Likewise.
20698         * modules/unistd (unistd.h): Likewise.
20699         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20700         Add a "DO NOT EDIT" comment to the generated file.
20701         (func_import): Likewise for gnulib-comp.m4.
20702
20703 2006-10-07  Bruno Haible  <bruno@clisp.org>
20704
20705         * lib/gl_sublist.h: New file.
20706         * lib/gl_sublist.c: New file.
20707
20708 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
20709
20710         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
20711         name (relative to the original working directory) and the file
20712         name component (relative to the temporary working directory).  All
20713         callers changed.
20714         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
20715         * lib/mkdir-p.c (make_dir_parents): Likewise.
20716         * lib/mkdir-p.h (make_dir_parents): Likewise.
20717
20718 2006-10-06  Eric Blake  <ebb9@byu.net>
20719
20720         Define several macros for use by the clean-temp module.
20721         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
20722         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
20723         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
20724
20725         * lib/clean-temp.h (close_stream_temp): New declaration.
20726         * lib/clean-temp.c (includes): Pull in headers according to what
20727         other modules are in use.
20728         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
20729
20730 2006-10-06  Bruno Haible  <bruno@clisp.org>
20731
20732         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
20733         instead of fopen, fwriteerror.
20734
20735 2006-10-06  Bruno Haible  <bruno@clisp.org>
20736
20737         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
20738         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
20739         int.
20740         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
20741         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
20742         Return an error indicator.
20743         Suggested by Eric Blake.
20744
20745 2006-10-06  Bruno Haible  <bruno@clisp.org>
20746
20747         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
20748         Reported by Eric Blake.
20749
20750 2006-10-06  Bruno Haible  <bruno@clisp.org>
20751
20752         * modules/closeout (Description): Mention stderr too.
20753
20754 2006-10-06  Bruno Haible  <bruno@clisp.org>
20755         and Paul Eggert  <eggert@cs.ucla.edu>
20756
20757         * lib/closeout.c (close_stdout): Also close stderr.
20758         * lib/closeout.h: Update comment.
20759
20760 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
20761
20762         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
20763         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
20764         * lib/dirchownmod.c: Include lchown.h.
20765         * lib/lchown.c: Don't include files that lchown.h now includes.
20766         Don't declare chown, since lchown.h now does that.
20767         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
20768         (lchown): Define to rpl_chown if lchown is declared but
20769         does not exist.  Declare using a prototype if lchown is not
20770         declared.  Add a copyright notice.
20771         * lib/mkstemp.h: Include <unistd.h>.
20772         * lib/openat.c: Include lchown.h.
20773
20774         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
20775         we now test for that separately.
20776         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
20777         rather than O_NOFOLLOW, when testing whether it's possible to
20778         avoid a race condition reliably.
20779         * lib/savewd.c (savewd_chdir): Likewise.
20780
20781         Remove macros that are no longer needed now that stdint.h is
20782         reliable.
20783         * lib/fsusage.c (UINTMAX_MAX): Remove.
20784         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
20785         * lib/utimecmp.c (SIZE_MAX): Remove.
20786
20787         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
20788
20789         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
20790         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
20791         O_NOATIME works.
20792
20793 2006-10-05  Bruno Haible  <bruno@clisp.org>
20794
20795         * lib/gl_list.h (gl_sortedlist_search_from_to,
20796         gl_sortedlist_indexof_from_to): New declarations.
20797         (gl_list_implementation): New fields sortedlist_search_from_to,
20798         sortedlist_indexof_from_to.
20799         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
20800         inline functions.
20801         * lib/gl_list.c (gl_sortedlist_search_from_to,
20802         gl_sortedlist_indexof_from_to): New functions.
20803         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
20804         function.
20805         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
20806         (gl_array_sortedlist_search_from_to): New function.
20807         (gl_array_list_implementation): Update.
20808         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
20809         function.
20810         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
20811         (gl_carray_sortedlist_search_from_to): New function.
20812         (gl_carray_list_implementation): Update.
20813         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
20814         gl_linked_sortedlist_indexof_from_to): New functions.
20815         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20816         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20817         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
20818         gl_tree_sortedlist_indexof_from_to): New functions.
20819         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20820         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20821         Update.
20822         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20823         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
20824         Update.
20825
20826 2006-10-05  Bruno Haible  <bruno@clisp.org>
20827
20828         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
20829         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
20830         (struct gl_list_implementation): Add fields search_from_to,
20831         indexof_from_to. Remove fields search, indexof.
20832         (gl_list_search): Use the search_from_to method.
20833         (gl_list_search_from, gl_list_search_from_to): New functions.
20834         (gl_list_indexof): Use the indexof_from_to method.
20835         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20836         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
20837         (gl_list_search_from, gl_list_search_from_to): New functions.
20838         (gl_list_indexof): Use the indexof_from_to method.
20839         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
20840         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
20841         gl_array_indexof. Add start_index, end_index arguments.
20842         (gl_array_search_from_to): Renamed from gl_array_search. Add
20843         start_index, end_index arguments.
20844         (gl_array_remove, gl_array_list_implementation): Update.
20845         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
20846         gl_carray_indexof. Add start_index, end_index arguments.
20847         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
20848         start_index, end_index arguments.
20849         (gl_carray_remove, gl_carray_list_implementation): Update.
20850         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
20851         gl_linked_search. Add start_index, end_index arguments.
20852         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
20853         start_index, end_index arguments.
20854         (gl_linked_remove): Update.
20855         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
20856         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
20857         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
20858         field to 'size_t'.
20859         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
20860         gl_tree_search. Add start_index, end_index arguments.
20861         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20862         start_index, end_index arguments.
20863         (gl_tree_remove): Update.
20864         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
20865         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
20866         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
20867         function.
20868         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
20869         gl_tree_search. Add start_index, end_index arguments.
20870         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
20871         start_index, end_index arguments.
20872         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
20873         Update.
20874         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
20875
20876 2006-10-05  Bruno Haible  <bruno@clisp.org>
20877
20878         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
20879
20880         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
20881         fwriteerror_temp): New declarations.
20882         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
20883         (descriptors): New variable.
20884         (cleanup): First, close the descriptors.
20885         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
20886         fclose_temp, fwriteerror_temp): New functions.
20887
20888 2006-10-04  Jim Meyering  <jim@meyering.net>
20889
20890         * lib/fts.c (fts_open): Tiny comment change.
20891
20892 2006-10-04  Bruno Haible  <bruno@clisp.org>
20893
20894         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
20895         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
20896         gl_LOCK_BODY.
20897         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
20898         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
20899         gl_LOCK_EARLY_BODY.
20900         (gl_LOCK): Require gl_LOCK_BODY.
20901
20902 2006-10-04  Bruno Haible  <bruno@clisp.org>
20903
20904         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
20905         (gl_oset_search_atleast): New declaration.
20906         (struct gl_oset_implementation): Add field 'search_atleast'.
20907         (gl_oset_search_atleast): New inline function.
20908         * lib/gl_oset.c (gl_oset_search_atleast): New function.
20909         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
20910         (gl_array_oset_implementation): Update.
20911         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
20912         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
20913         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
20914
20915 2006-10-04  Bruno Haible  <bruno@clisp.org>
20916
20917         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
20918
20919 2006-10-03  Bruno Haible  <bruno@clisp.org>
20920
20921         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
20922         from gl_avltreehash_list_implementation.
20923
20924 2006-10-03  Bruno Haible  <bruno@clisp.org>
20925
20926         * lib/gl_oset.c (gl_oset_add): Fix return type.
20927
20928 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
20929
20930         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
20931
20932 2006-10-02  Eric Blake  <ebb9@byu.net>
20933
20934         * modules/strnlen (Depends-on): Add extensions.
20935
20936 2006-10-02  Eric Blake  <ebb9@byu.net>
20937
20938         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
20939         definition in 2.60+.
20940
20941 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
20942
20943         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
20944         checks.
20945
20946 2006-10-02  Bruno Haible  <bruno@clisp.org>
20947
20948         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
20949         to the AUTOMAKE_OPTIONS.
20950         Reported by Jim Meyering.
20951
20952 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
20953
20954         Work around bug in Solaris 10 /proc file system:
20955         /proc/self/fd/NNN/.. isn't the parent directory of
20956         the directory whose file descriptor is NNN.  This needs to
20957         be worked around at run time, not compile time, since a
20958         program might be built on Solaris 8, where things work, and
20959         run on Solaris 10.
20960         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
20961         to use the following interface instead:
20962         (OPENAT_BUFFER_SIZE): New macro.
20963         (openat_proc_name): New function.
20964         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
20965         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
20966         Likewise.
20967         * lib/openat-proc.c: New file.
20968         * modules/openat (Files): Add lib/openat-proc.c.
20969         (Depends-on): Add same-inode, stdbool.
20970         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
20971
20972 2006-09-29  Bruno Haible  <bruno@clisp.org>
20973
20974         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
20975         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
20976         argument. Set stdout_closed before testing for ferror, not after.
20977         (fwriteerror, fwriteerror_no_ebadf): New functions.
20978
20979 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20980
20981         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
20982
20983 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
20984
20985         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
20986         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
20987
20988 2006-09-28  Jim Meyering  <jim@meyering.net>
20989
20990         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
20991         Include <unistd.h>.
20992
20993 2006-09-28  Bruno Haible  <bruno@clisp.org>
20994
20995         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
20996         * modules/linkedhash-list (Depends-on): Likewise.
20997         * modules/rbtreehash-list (Depends-on): Likewise.
20998
20999 2006-09-28  Bruno Haible  <bruno@clisp.org>
21000
21001         * lib/strndup.h: Simplify the redefinition of strndup.
21002         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
21003         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
21004
21005 2006-09-28  Bruno Haible  <bruno@clisp.org>
21006
21007         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
21008         * lib/gl_linkedhash_list.c: Likewise.
21009         * lib/gl_rbtreehash_list.c: Likewise.
21010
21011 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
21012
21013         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
21014         getaddrinfo.
21015
21016         * lib/__fpending.h: Don't include <stdio_ext.h> unless
21017         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
21018         it causes <stdio_ext.h> to cause a compile-time error.
21019         Problem reported by Nelson H. F. Beebe.
21020         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
21021         of HAVE_DECL___PENDING.
21022
21023         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
21024         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
21025         declaration.
21026
21027 2006-09-27  Jim Meyering  <jim@meyering.net>
21028
21029         This file could end up with a definition for a function
21030         named __strndup, rather than rpl_strndup on a system with
21031         incomplete weak_alias support.
21032         * lib/strndup.c (strndup): Rename from __strndup.
21033         Remove #defines that used to map __strndup to strndup.
21034         Don't use K&R prototypes.
21035         Remove LIBC-related code, since this file is not sync'd with glibc.
21036         * lib/strndup.h: Revamp, accordingly.
21037         * m4/strndup.m4: Modernize.
21038
21039 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21040
21041         * modules/savewd (Depends-on): Add 'raise'.
21042         * lib/savewd.c: Include <signal.h>, for 'raise'.
21043
21044 2006-09-26  Jim Meyering  <jim@meyering.net>
21045
21046         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
21047         when we detect Darwin 8.7.0's acl_get_file bug.
21048         Rearrange to perform the new (below) run-test while $LIBS
21049         contains any acl-related library.  Set USE_ACL at the end.
21050         (gl_ACL_GET_FILE): New function.
21051
21052 2006-09-26  Eric Blake  <ebb9@byu.net>
21053
21054         * lib/verror.c: Include <config.h> unconditionally.
21055
21056 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21057
21058         * modules/clock-time (Maintainer): Add self.
21059         * modules/getlogin_r (Depends-on): Add extensions.
21060
21061 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21062
21063         * modules/clock-time: New module.
21064         * modules/nanosleep (Depends-on): Add clock-time.
21065         * modules/gethrxtime (Depends-on): Likewise.
21066         * modules/gettime (Depends-on): Likewise.
21067         * modules/settime (Depends-on): Likewise.
21068
21069         * modules/fts-lgpl: Depend on openat.
21070         * modules/mkancesdirs: Depend on savewd.
21071         * modules/mkdir-p: Likewise.
21072
21073 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21074
21075         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
21076
21077         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
21078         `gl_have_arbitrary_file_name_length_limit' to
21079         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
21080         actually works between configure runs.
21081
21082 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21083             Bruno Haible  <bruno@clisp.org>
21084
21085         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
21086
21087 2006-09-25  Jim Meyering  <jim@meyering.net>
21088
21089         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
21090         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
21091
21092 2006-09-25  Eric Blake  <ebb9@byu.net>
21093
21094         * gnulib-tool (func_import, func_create_testdir): Fix typos in
21095         exec's in 2006-09-18 patch when shuffling fds.
21096
21097 2006-09-25  Bruno Haible  <bruno@clisp.org>
21098
21099         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
21100         Reported by Jim Meyering.
21101
21102 2006-09-24  Jim Meyering  <jim@meyering.net>
21103
21104         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
21105         compare a pointer against a literal "0".  That caused failures with
21106         at least HP-UX's hpcc.
21107
21108 2006-09-22  Simon Josefsson  <jas@extundo.com>
21109
21110         * modules/gc-sha1:
21111         * modules/gc-md4:
21112         * modules/gc-hmac-sha1:
21113         * modules/gc-hmac-md5:
21114         * modules/gc-des:
21115         * modules/gc-arcfour: Distribute more files.
21116
21117 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21118
21119         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
21120         (gl_linked_iterator_from_to): Initialize struct completely.
21121         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
21122         (gl_tree_iterator_from_to): Likewise
21123         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
21124         * lib/gl_array_list.c [lint] (gl_array_iterator)
21125         (gl_array_iterator_from_to): Likewise.
21126         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
21127         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
21128         (gl_carray_iterator_from_to): Likewise.
21129
21130         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
21131         * lib/md4.c (md4_process_block): Remove unused variable.
21132         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
21133         parentheses for clarity.
21134
21135 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21136
21137         * modules/bison-i18n (Depends-on): Add gettext.
21138
21139 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21140
21141         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
21142         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
21143         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
21144         also add missing comma that caused broken test.
21145         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
21146         stdlib.h, for `abort'.
21147         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
21148         variables.
21149         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
21150         include unistd.h if present, for `rmdir'.
21151         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
21152         variables.
21153         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
21154         in the process include standard headers for prototypes.
21155         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
21156         gets declared on GNU/Linux.
21157         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
21158         unistd.h, for `rmdir'.
21159         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
21160
21161         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
21162         always true.
21163         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
21164
21165         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
21166
21167 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21168
21169         * gnulib-tool (func_version): Create output all at once.  This
21170         may help avoid triggering unnecessary SIGPIPEs, and at any
21171         rate it doesn't hurt.
21172
21173 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21174             Bruno Haible  <bruno@clisp.org>
21175
21176         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
21177         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
21178         * m4/signed.m4 (bh_C_SIGNED): Likewise.
21179
21180         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
21181         (gl_FUNC_VASPRINTF): Invoke it.
21182
21183 2006-09-22  Bruno Haible  <bruno@clisp.org>
21184
21185         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
21186         getloadavg.c as first argument.
21187
21188 2006-09-22  Bruno Haible  <bruno@clisp.org>
21189
21190         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
21191         at the beginning of the gl_INIT macro.
21192         * modules/getloadavg (configure.ac): Pass $gl_source_base to
21193         gl_GETLOADAVG.
21194
21195 2006-09-22  Bruno Haible  <bruno@clisp.org>
21196
21197         * gnulib-tool (func_create_megatestdir): Don't include the config-h
21198         module.
21199         Suggested by Ralf Wildenhues.
21200
21201 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21202
21203         Import this patch from libc:
21204
21205         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
21206
21207         * lib/regex_internal.c (re_string_reconstruct): Handle
21208         offset < pstr->valid_raw_len && pstr->offsets_needed case.
21209         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
21210         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
21211         re_string_context_at.
21212
21213         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
21214         now requires it.
21215         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
21216         gl_REGEX now does it for us.
21217         (gl_REGEX): Add test taken from
21218         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
21219
21220         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
21221         Check that large offsets work.  Modernize Autoconf usages.
21222         Prefer "yes" to mean a good thing rather than a bad.
21223         Don't put "#define mkstemp" in config.h, as this might interfere
21224         with standard system headers that "#define mkstemp mkstemp64".
21225
21226         * modules/mkstemp (Depends-on): Add extensions, so that
21227         mkstemp is visible on some platforms.
21228         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
21229         (Include): Change to "mkstemp.h" from <stdlib.h>.
21230         (Files): Add mkstemp.h.
21231
21232         * lib/mkstemp.h: New file, since some standard headers
21233         #define mkstemp.
21234         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
21235         Include "mkstemp.h".
21236         Make the _LIBC code resemble glibc original more,
21237         e.g., use K&R style.
21238         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
21239         (mkstemp): Remove, since mkstemp.h does this for us.
21240         * lib/stdlib--.h: Include mkstemp.h.
21241
21242         Import this patch from libc:
21243
21244         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
21245
21246         * lib/tempname.c (__gen_tempname): Change attempts_min
21247         into a macro.  Use preprocessor to decide how to initialize
21248         attempts [Coverity CID 67].
21249
21250 2006-09-20  Bruno Haible  <bruno@clisp.org>
21251
21252         * lib/mkdtemp.c: Import from libc.
21253         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
21254                 * sysdeps/posix/tempname.c (__gen_tempname): Change
21255                 attempts_min into a macro.  Use preprocessor to decide how to
21256                 initialize attempts [Coverity CID 67].
21257         2001-11-27  Paul Eggert  <eggert@twinsun.com>
21258                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
21259                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
21260
21261 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21262
21263         * gnulib-tool (func_exit): New function, to allow to pass the
21264         exit status portably through the trap.  Use everywhere.
21265         (--help, --version): Signal a write error.
21266         (trap): catch SIGPIPE, for write errors.
21267         Exit at the end of the trap, with the correct exit status.
21268
21269 2006-09-19  Karl Berry  <karl@gnu.org>
21270
21271         * doc/gnulib.texi: note about the license texinfo files.
21272
21273 2006-09-19  Eric Blake  <ebb9@byu.net>
21274
21275         * gnulib-tool: Avoid space-tab.
21276
21277 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
21278
21279         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
21280         that prevented coreutils 6.1 from building.  Problem reported
21281         by Petter Reinholdtsen.
21282
21283 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
21284
21285         * gnulib-tool (avoidlist): Fix typo that broke options like
21286         --avoid=lock that are used by coreutils bootstrap.
21287
21288 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
21289
21290         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
21291         more systematically.
21292
21293 2006-09-18  Jim Meyering  <jim@meyering.net>
21294
21295         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
21296
21297 2006-09-18  Bruno Haible  <bruno@clisp.org>
21298
21299         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
21300
21301 2006-09-18  Bruno Haible  <bruno@clisp.org>
21302
21303         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
21304         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
21305         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
21306         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
21307         * m4/gettext.m4: Require autoconf >= 2.52.
21308         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
21309         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
21310         of gl_cv_header_inttypes_h.
21311
21312 2006-09-18  Bruno Haible  <bruno@clisp.org>
21313
21314         * lib/javaversion.c: Include configmake.h.
21315
21316 2006-09-18  Bruno Haible  <bruno@clisp.org>
21317
21318         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
21319         avoid that the while loops be executed in a subshell.
21320
21321 2006-09-18  Bruno Haible  <bruno@clisp.org>
21322
21323         * MODULES.html.sh (func_module): Break long lines.
21324         Suggested by Bruce Korb <bkorb@gnu.org>.
21325
21326 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21327
21328         Speed up by a factor of 1.12.
21329         * gnulib-tool (nl): New variable.
21330         (func_import): Rewrite include directive extraction to only read each
21331         directive once.
21332
21333 2006-09-17  Bruno Haible  <bruno@clisp.org>
21334
21335         * modules/javaversion (Makefile.am): Remove DEFS setting.
21336         (Depends-on): Add configmake, for PKGDATADIR definition.
21337
21338 2006-09-17  Bruno Haible  <bruno@clisp.org>
21339
21340         * gnulib-tool (func_create_testdir): Rewrite all files at once.
21341
21342 2006-09-17  Bruno Haible  <bruno@clisp.org>
21343
21344         * gnulib-tool (func_append): New function, stolen from libtool.m4.
21345         (func_modules_transitive_closure, func_modules_add_dummy,
21346         func_modules_to_filelist, func_import, func_create_testdir,
21347         func_create_megatestdir, ...): Use it wherever possible.
21348         Suggested by Ralf Wildenhues.
21349
21350 2006-09-16  Karl Berry  <karl@gnu.org>
21351
21352         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
21353         to avoid sectioning errors.
21354         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
21355         [ifinfo]: blank line after @center-ed titles.
21356         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
21357         Spell FSF address consistently with others.
21358         (These changes approved by rms.)
21359
21360 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21361
21362         Speed up by a factor of 1.61.
21363         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
21364         already checked module names again.
21365
21366 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21367
21368         Speed up by a factor of 1.13.
21369         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
21370         for new_files, and the input to func_add_or_update.
21371
21372 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21373
21374         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
21375         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
21376
21377 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21378
21379         * modules/mkancesdirs (Depends-on): Add fcntl.
21380         * modules/savewd: New file.
21381         * MODULES.html.sh (File system functions): Add savewd.
21382
21383         * modules/configmake (Makefile.am): Add support for the
21384         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
21385
21386 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21387
21388         * m4/savewd.m4: New file.
21389
21390 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21391
21392         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
21393         (dirchownmod): New arg FD.  All callers changed.
21394         Use FD rather than opening the directory ourself, as opening is
21395         now the caller's responsibility.
21396         * lib/dirchownmod.h: Likewise.
21397         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
21398         hosts that require <sys/types.h> before <sys/stat.h>.  Include
21399         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
21400         (test_dir): Remove.
21401         (mkancesdirs): Return length of prefix of FILE that has already
21402         been made, or -2 if there is a child doing the work.  Redo
21403         algorithm so that it is O(N) rather than O(N**2).  Optimize away
21404         ".", and treat ".." specially since it might stray back into
21405         already-created areas.  Use a subprocess if necessary.  New arg
21406         WD; all users changed.  MAKE_DIR function should now return 1
21407         if it creates a directory that is not readable.  Return -2 if
21408         a child process is spun off.
21409         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
21410         Adjust signature to match code.
21411         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
21412         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
21413         all users changed.
21414         * lib/savewd.c, lib/savewd.h: New files.
21415
21416 2006-09-15  Jim Meyering  <jim@meyering.net>
21417
21418         * modules/rename-dest-slash: New module.
21419         * MODULES.html.sh (posix_compat): Add it here.
21420
21421         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
21422
21423 2006-09-15  Jim Meyering  <jim@meyering.net>
21424
21425         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
21426         file.
21427
21428         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
21429
21430 2006-09-15  Jim Meyering  <jim@meyering.net>
21431
21432         * lib/rename-dest-slash.c (has_trailing_slash): Use
21433         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
21434         (rpl_rename_dest_slash): Perform the cheaper trailing slash
21435         test before testing whether SRC is a directory.
21436         Suggestions from Bruno Haible.
21437
21438         Avoid a warning about an unused variable.
21439         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
21440         into the #ifdef block where it's used.
21441
21442         * lib/rename-dest-slash.c: New file.
21443
21444 2006-09-14  Bruno Haible  <bruno@clisp.org>
21445
21446         * lib/allocsa.c: Include <config.h> unconditionally.
21447         * lib/asnprintf.c: Likewise.
21448         * lib/asprintf.c: Likewise.
21449         * lib/c-strcasecmp.c: Likewise.
21450         * lib/c-strcasestr.c: Likewise.
21451         * lib/c-strncasecmp.c: Likewise.
21452         * lib/c-strstr.c: Likewise.
21453         * lib/classpath.c: Likewise.
21454         * lib/clean-temp.c: Likewise.
21455         * lib/concatpath.c: Likewise.
21456         * lib/copy-file.c: Likewise.
21457         * lib/csharpcomp.c: Likewise.
21458         * lib/csharpexec.c: Likewise.
21459         * lib/execute.c: Likewise.
21460         * lib/fatal-signal.c: Likewise.
21461         * lib/findprog.c: Likewise.
21462         * lib/fwriteerror.c: Likewise.
21463         * lib/gl_array_list.c: Likewise.
21464         * lib/gl_array_oset.c: Likewise.
21465         * lib/gl_avltree_list.c: Likewise.
21466         * lib/gl_avltree_oset.c: Likewise.
21467         * lib/gl_avltreehash_list.c: Likewise.
21468         * lib/gl_carray_list.c: Likewise.
21469         * lib/gl_linked_list.c: Likewise.
21470         * lib/gl_linkedhash_list.c: Likewise.
21471         * lib/gl_list.c: Likewise.
21472         * lib/gl_oset.c: Likewise.
21473         * lib/gl_rbtree_list.c: Likewise.
21474         * lib/gl_rbtree_oset.c: Likewise.
21475         * lib/gl_rbtreehash_list.c: Likewise.
21476         * lib/imaxabs.c: Likewise.
21477         * lib/imaxdiv.c: Likewise.
21478         * lib/javacomp.c: Likewise.
21479         * lib/javaexec.c: Likewise.
21480         * lib/javaversion.c: Likewise.
21481         * lib/linebreak.c: Likewise.
21482         * lib/localcharset.c: Likewise.
21483         * lib/lock.c: Likewise.
21484         * lib/mbchar.c: Likewise.
21485         * lib/mbswidth.c: Likewise.
21486         * lib/mkdtemp.c: Likewise.
21487         * lib/pipe.c: Likewise.
21488         * lib/printf-args.c: Likewise.
21489         * lib/printf-parse.c: Likewise.
21490         * lib/progname.c: Likewise.
21491         * lib/progreloc.c: Likewise.
21492         * lib/readlink.c: Likewise.
21493         * lib/sh-quote.c: Likewise.
21494         * lib/stpcpy.c: Likewise.
21495         * lib/stpncpy.c: Likewise.
21496         * lib/strcasecmp.c: Likewise.
21497         * lib/strcasestr.c: Likewise.
21498         * lib/strcspn.c: Likewise.
21499         * lib/striconv.c: Likewise.
21500         * lib/strncasecmp.c: Likewise.
21501         * lib/strnlen1.c: Likewise.
21502         * lib/strstr.c: Likewise.
21503         * lib/strtok_r.c: Likewise.
21504         * lib/tls.c: Likewise.
21505         * lib/tmpdir.c: Likewise.
21506         * lib/unicodeio.c: Likewise.
21507         * lib/unsetenv.c: Likewise.
21508         * lib/vasnprintf.c: Likewise.
21509         * lib/vasprintf.c: Likewise.
21510         * lib/wait-process.c: Likewise.
21511         * lib/xallocsa.c: Likewise.
21512         * lib/xsetenv.c: Likewise.
21513         * lib/xstriconv.c: Likewise.
21514
21515 2006-09-13  Simon Josefsson  <jas@extundo.com>
21516
21517         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
21518         that internally, suggested by Ralf Wildenhues
21519         <Ralf.Wildenhues@gmx.de>.
21520
21521 2006-09-13  Simon Josefsson  <jas@extundo.com>
21522
21523         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
21524         @LIBOBJS@.
21525         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21526
21527 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
21528
21529         * lib/_fpending.c: Include <config.h> unconditionally, since we no
21530         longer worry about uses that don't define HAVE_CONFIG_H.
21531         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
21532         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
21533         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
21534         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
21535         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
21536         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
21537         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
21538         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
21539         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
21540         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
21541         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
21542         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
21543         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
21544         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
21545         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
21546         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
21547         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
21548         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
21549         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
21550         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
21551         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
21552         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
21553         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
21554         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
21555         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
21556         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
21557         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
21558         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
21559         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
21560         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
21561         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
21562         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
21563         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
21564         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
21565         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
21566         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
21567         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
21568         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
21569         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
21570         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
21571         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
21572         Likewise.
21573
21574 2006-09-13  Eric Blake  <ebb9@byu.net>
21575
21576         * lib/getopt.c: Fix typo in last commit.
21577
21578 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
21579
21580         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
21581         dgettext.
21582
21583 2006-09-12  Jim Meyering  <jim@meyering.net>
21584
21585         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
21586         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
21587         Reported by Nelson H. F. Beebe.
21588
21589 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
21590
21591         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
21592         program_invocation_name and program_invocation_short_name are
21593         initialized.
21594         * lib/argp-namefrob.h: Move declarations of program_invocation_name
21595         and program_invocation_short_name to argp.h, so they are visible
21596         to user programs.
21597         * lib/argp.h: Likewise
21598
21599 2006-09-10  Bruno Haible  <bruno@clisp.org>
21600
21601         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
21602         m4/inttypes_h.m4, m4/uintmax_t.m4.
21603
21604 2006-09-10  Bruno Haible  <bruno@clisp.org>
21605
21606         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
21607         gl_AC_TYPE_UINTMAX_T.
21608
21609 2006-09-10  Bruno Haible  <bruno@clisp.org>
21610
21611         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
21612
21613 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21614
21615         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
21616         convention.  Text proposed by Bruno Haible.
21617         (struct argp_option): Document the use of N_() wrappers.
21618
21619         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
21620         '\v', and translate the two parts separately, instead of feeding
21621         the whole string to gettext.  This allows to exclude
21622         '\v' from the strings visible to the translator by writing doc
21623         strings as N_("..") "\v" N_("..").
21624
21625 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
21626
21627         * config/srclist.txt: Undo latest change; the bug was fixed.
21628
21629 2006-09-09  Bruno Haible  <bruno@clisp.org>
21630
21631         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
21632         assignments if building a library without libtool.
21633         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
21634         in func_emit_lib_Makefile_am.
21635         (func_import): When building a static library libfoo.a, arrange to
21636         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
21637         (func_create_testdir): Likewise.
21638         * modules/gc (configure.ac, Makefile.am): If building statically,
21639         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
21640         * modules/iconvme (configure.ac, Makefile.am): Likewise.
21641         * modules/striconv (configure.ac, Makefile.am): Likewise.
21642         Based on a suggestion by Ralf Wildenhues.
21643
21644 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21645
21646         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
21647         Check for unistd.h too, since Autoconf doesn't assume POSIX.
21648         Also:
21649
21650         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21651         Add year_2050_test to catch glibc bug 2821
21652         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21653
21654         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21655         Prefer #ifdef to #if.
21656
21657         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
21658         Return from 'main' instead of calling 'exit'.
21659
21660 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21661
21662         * lib/mktime.c (guess_time_tm): Fix bug where mktime
21663         returned the maximum time_t value rather than (time_t) -1.
21664         Problem originally reported by William Bardwell
21665         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
21666
21667         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21668         Moved to here ...
21669         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
21670         ... from here.
21671
21672 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
21673
21674         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
21675         2821 is fixed.
21676
21677 2006-09-08  Jim Meyering  <jim@meyering.net>
21678
21679         Don't make generated files read-only.  That would bother too many
21680         people.  However, do retain the ability to work when targets are
21681         read-only: remove the destination and temporary files before writing
21682         them (when generated via sed or echo), or by using the -f option for
21683         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
21684         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21685         * modules/byteswap, modules/configmake, modules/fcntl:
21686         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21687         * modules/localcharset, modules/netinet_in, modules/poll:
21688         * modules/stdbool, modules/stdint, modules/sys_select:
21689         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21690
21691 2006-09-08  Jim Meyering  <jim@meyering.net>
21692
21693         Avoid new build failure on FreeBSD 6.0.
21694         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
21695         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
21696         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
21697
21698 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21699
21700         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
21701
21702 2006-09-07  Jim Meyering  <jim@meyering.net>
21703
21704         Fix global typo in last change: use chmod u-w, not chmod u-x.
21705         Spotted by Paul Eggert and Bruce Korb.
21706         * modules/alloca-opt, modules/argz, modules/arpa_inet:
21707         * modules/byteswap, modules/configmake, modules/fcntl:
21708         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
21709         * modules/localcharset, modules/netinet_in, modules/poll:
21710         * modules/stdbool, modules/stdint, modules/sys_select:
21711         * modules/sys_socket, modules/sys_stat, modules/sysexits:
21712
21713 2006-09-06  Jim Meyering  <jim@meyering.net>
21714
21715         Make generated files be read-only.
21716         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
21717         Ensure that each generated file is now read-only.
21718         * modules/argz: Likewise.
21719         * modules/arpa_inet: Likewise.
21720         * modules/byteswap: Likewise.
21721         * modules/configmake: Likewise.
21722         * modules/fcntl: Likewise.
21723         * modules/fnmatch: Likewise.
21724         * modules/getopt: Likewise.
21725         * modules/glob: Likewise.
21726         * modules/inttypes: Likewise.
21727         * modules/netinet_in: Likewise.
21728         * modules/poll: Likewise.
21729         * modules/stdbool: Likewise.
21730         * modules/stdint: Likewise.
21731         * modules/sys_select: Likewise.
21732         * modules/sys_socket: Likewise.
21733         * modules/sys_stat: Likewise.
21734         * modules/sysexits: Likewise.
21735         * modules/localcharset: Same as above, but continue using temporary
21736         file named "t-$@" (why different?) rather than the "$@-t" used
21737         everywhere else.
21738
21739         * modules/sysexits (Makefile.am): Replace literal occurrences
21740         of "sysexit.h" more readable, and more consistent, "$@".
21741
21742 2006-09-06  Bruno Haible  <bruno@clisp.org>
21743
21744         * modules/striconv: New file.
21745         * modules/xstriconv: New file.
21746         * MODULES.html.sh (Internationalization functions): Add striconv,
21747         xstriconv.
21748
21749 2006-09-06  Bruno Haible  <bruno@clisp.org>
21750
21751         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
21752         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
21753         not using libtool correctly.
21754
21755 2006-09-06  Bruno Haible  <bruno@clisp.org>
21756
21757         * lib/striconv.h: New file.
21758         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
21759         iconvstring.c.
21760         * lib/xstriconv.h: New file.
21761         * lib/xstriconv.c: New file.
21762
21763 2006-09-06  Bruno Haible  <bruno@clisp.org>
21764
21765         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
21766         lib_..._LDFLAGS.
21767
21768 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21769
21770         * lib/argz_.h: Sync from Libtool.
21771
21772         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
21773                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21774
21775         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
21776
21777 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21778
21779         * modules/trim: New file.
21780
21781 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
21782
21783         * lib/trim.h: New file.
21784         * lib/trim.c: New file.
21785
21786 2006-09-05  Bruno Haible  <bruno@clisp.org>
21787
21788         * MODULES.html.sh (String handling): Add trim.
21789
21790 2006-09-04  Karl Berry  <karl@gnu.org>
21791
21792         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
21793         until next release.
21794
21795 2006-09-03  Bruno Haible  <bruno@clisp.org>
21796
21797         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
21798         correctly.
21799
21800 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21801
21802         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
21803         not gl_GETLOADAVG.  Omit unneeded semicolons.
21804         Problems reported by Ralf Wildenhues in
21805         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21806         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
21807         at the end, which is the usual gnulib style.
21808
21809         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
21810         of doing all the work ourselves.
21811         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
21812         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
21813
21814 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21815
21816         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
21817         Problem reported by Ralf Wildenhues in
21818         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
21819
21820         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
21821         HAVE_STRUCT_STATFS_F_FSTYPENAME.
21822
21823 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
21824
21825         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
21826         yesterday's patch by changing test -n to test -z.
21827
21828 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21829
21830         * modules/getloadavg (Files): Add m4/getloadavg.m4.
21831         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
21832         the former is now obsolescent.
21833
21834         * modules/chdir-long (Depends-on): Add fcntl.
21835
21836 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21837
21838         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
21839         obsolescent, and programs should use gnulib instead.
21840         * m4/getloadavg.m4: New file, with contents taken from Autoconf
21841         but with prefixes changed.
21842
21843 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21844
21845         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
21846         or stdbool.h, because they might not exist while configuring.
21847
21848         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
21849         Don't include unistd.h or limits.h; not needed, since chdir-long.h
21850         does that for us.
21851         (O_DIRECTORY): Remove.
21852
21853 2006-08-31  Eric Blake  <ebb9@byu.net>
21854
21855         * gnulib-tool: Don't let emacs change spaces to TAB.
21856
21857 2006-08-31  Bruno Haible  <bruno@clisp.org>
21858
21859         * gnulib-tool: When calling func_import more than once, do it in a
21860         subshell.
21861         Reported by Eric Blake <ebb9@byu.net>.
21862
21863 2006-08-31  Bruno Haible  <bruno@clisp.org>
21864
21865         * gnulib-tool (nl): Remove variable.
21866         (sed_transform_lib_file): Use more robust test for config-h module.
21867         (func_import): Fix typo in 2006-08-25 patch.
21868
21869 2006-08-31  Bruno Haible  <bruno@clisp.org>
21870
21871         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
21872         specified, augment Makefile.am variables instead of assigning them.
21873
21874 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21875
21876         Work around a bug in both the Linux and SunOS 64-bit kernels:
21877         nanosleep mishandles sleeps for longer than 2**31 seconds.
21878         Problem reported by Frank v Waveren in
21879         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21880         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
21881         Check for nanosleep bug.
21882         (LIB_NANOSLEEP): Append clock_gettime library if needed.
21883
21884 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21885
21886         Work around a bug in both the Linux and SunOS 64-bit kernels:
21887         nanosleep mishandles sleeps for longer than 2**31 seconds.
21888         Problem reported by Frank v Waveren in
21889         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
21890         * lib/nanosleep.c (BILLION): New constant.
21891         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
21892         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
21893         implementation.
21894
21895 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21896
21897         * modules/nanosleep (Depends-on): Add gettime.
21898
21899 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21900         and Simon Josefsson  <jas@extundo.com>
21901         and Oskar Liljeblad  <oskar@osk.mine.nu>
21902
21903         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
21904         * gnulib-tool (func_import): New license type 'unmodifiable license
21905         text'.
21906         * modules/fdl: Use it.  Longer description.
21907         * module/gpl, module/lgpl: New files.
21908
21909 2006-08-30  Jim Meyering  <jim@meyering.net>
21910
21911         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
21912         shadowing the parameter.
21913
21914 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21915
21916         Sync from Libtool:
21917
21918         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21919
21920         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
21921         sharing with gnulib.  Report by Eric Blake.
21922
21923 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21924
21925         * modules/isapipe: New file.
21926         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
21927
21928 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21929
21930         * modules/configmake (Makefile.am): Add a comment, and omit
21931         the CONFIGMAKE_ prefix from generated macro names.  Suggested
21932         by Bruno Haible.
21933
21934 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21935
21936         * m4/isapipe.m4: New file.
21937
21938 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21939
21940         * lib/isapipe.c, lib/isapipe.h: New files.
21941
21942 2006-08-29  Jim Meyering  <jim@meyering.net>
21943
21944         * modules/configmake (Makefile.am): Make configmake.h depend on
21945         Makefile.  Otherwise, a stale configmake.h could hang around.
21946
21947 2006-08-29  Eric Blake  <ebb9@byu.net>
21948
21949         * lib/error.c (error_at_line, print_errno_message): Match libc, after
21950         resolution of upstream bug 3044.
21951
21952 2006-08-29  Bruno Haible  <bruno@clisp.org>
21953
21954         * modules/localcharset (Depends-on): Add configmake.
21955         (Makefile.am): Remove setting of LIBDIR through DEFS.
21956
21957 2006-08-29  Bruno Haible  <bruno@clisp.org>
21958
21959         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
21960         defined.
21961
21962 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21963
21964         * modules/fcntl: New file.
21965         * modules/chdir-safer (Depends-on): Add fcntl.
21966         * modules/fts: Likewise.
21967         * modules/mkdir-p: Likewise.
21968
21969         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
21970         This undoes the most recent change, since we're now addressing the
21971         problem in a different way.
21972
21973         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
21974         into output, since the output might be called Makefile.am even
21975         if $makefile_name is something different.
21976         (func_import): Use $makefile_am rather than
21977         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
21978         empty.
21979
21980         * modules/inttypes (Files): Add m4/inttypes-h.m4.
21981
21982 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21983
21984         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
21985         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
21986         recent change to stdint.m4, since we're now addressing the problem in a
21987         different way.
21988
21989 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21990
21991         * m4/fcntl_h.m4: New file.
21992
21993 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21994
21995         * lib/fcntl_.h: New file.
21996         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
21997         the fcntl module.
21998         * lib/dirchownmod.c: Likewise.
21999         * lib/fts.c: Likewise.
22000
22001         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
22002         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
22003         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
22004         just before including <inttypes.h>, to avoid circular inclusion.
22005
22006 2006-08-28  Jim Meyering  <jim@meyering.net>
22007
22008         * doc/visibility.texi: Actually read and correct the grammar of the
22009         sentence affected by yesterday's change.
22010
22011 2006-08-28  Eric Blake  <ebb9@byu.net>
22012
22013         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
22014         needs wrapper.
22015
22016 2006-08-28  Eric Blake  <ebb9@byu.net>
22017
22018         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
22019
22020 2006-08-28  Eric Blake  <ebb9@byu.net>
22021
22022         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
22023
22024 2006-08-28  Bruno Haible  <bruno@clisp.org>
22025
22026         * modules/c-strstr: New file, from GNU gettext.
22027         * MODULES.html.sh (String handling): Add c-strstr.
22028
22029 2006-08-28  Bruno Haible  <bruno@clisp.org>
22030
22031         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
22032         macros.
22033         Reported by Eric Blake.
22034
22035 2006-08-28  Bruno Haible  <bruno@clisp.org>
22036
22037         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
22038         (VASNPRINTF): Return a string of length > INT_MAX without failing.
22039         * lib/vasprintf.c: Include errno.h, limits.h.
22040         (EOVERFLOW): New fallback definition.
22041         (vasprintf): Test here whether the string length is > INT_MAX.
22042         * lib/vsnprintf.c: Include errno.h, limits.h.
22043         (EOVERFLOW): New fallback definition.
22044         (vsnprintf): Fix bug when generated string was too long for the buffer.
22045         Test here whether the string length is > INT_MAX.
22046
22047 2006-08-28  Bruno Haible  <bruno@clisp.org>
22048
22049         * lib/inttypes_.h (SCNX*): Remove definitions.
22050         Reported by Eric Blake.
22051
22052 2006-08-28  Bruno Haible  <bruno@clisp.org>
22053
22054         * lib/c-strstr.h: New file, from GNU gettext.
22055         * lib/c-strstr.c: New file, from GNU gettext.
22056
22057 2006-08-28  Bruno Haible  <bruno@clisp.org>
22058
22059         * gnulib-tool: Reorder some statements.
22060
22061 2006-08-28  Bruno Haible  <bruno@clisp.org>
22062
22063         * gnulib-tool: New option --makefile-name.
22064         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
22065         $makefile_name.
22066         (func_import): Write $makefile_name to the cache file, and read it from
22067         there unless explicitly specified. Use $makefile_name as file name
22068         instead of Makefile.am. Adjust the recommendations accordingly.
22069
22070 2006-08-28  Bruno Haible  <bruno@clisp.org>
22071
22072         * gnulib-tool (func_verify_module): Check against misapplying patch.
22073
22074 2006-08-28  Bruno Haible  <bruno@clisp.org>
22075
22076         * gnulib-tool (func_relativize, func_relconcat): New functions.
22077         Give an error if --local-dir is given with --update.
22078         Remove trailing slashes from $local_gnulib_dir.
22079         (func_import): Store the relativized $local_gnulib_dir in
22080         gnulib-cache.m4, and read it from there if not specified explicitly.
22081
22082 2006-08-28  Bruno Haible  <bruno@clisp.org>
22083
22084         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
22085         is the current directory. Respect also $local_gnulib_dir.
22086
22087 2006-08-28  Bruno Haible  <bruno@clisp.org>
22088             Simon Josefsson  <jas@extundo.com>
22089
22090         BeOS portability.
22091         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
22092
22093 2006-08-27  Jim Meyering  <jim@meyering.net>
22094
22095         * doc/visibility.texi: Remove duplicate word: "pointer".
22096
22097 2006-08-26  Bruno Haible  <bruno@clisp.org>
22098
22099         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
22100         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
22101         (Makefile.am): Create inttypes.h from inttypes_.h.
22102         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
22103
22104         * modules/imaxabs: New file.
22105
22106         * modules/imaxdiv: New file.
22107
22108 2006-08-26  Bruno Haible  <bruno@clisp.org>
22109
22110         * m4/inttypes.m4: New file.
22111         * m4/_inttypes_h.m4: Remove file.
22112         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
22113         PRI_MACROS_BROKEN.
22114         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
22115
22116         * m4/imaxabs.m4: New file.
22117
22118         * m4/imaxdiv.m4: New file.
22119
22120 2006-08-26  Bruno Haible  <bruno@clisp.org>
22121
22122         * lib/inttypes_.h: New file.
22123         * lib/inttypes.h: Remove file.
22124         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
22125
22126         * lib/imaxabs.c: New file.
22127
22128         * lib/imaxdiv.c: New file.
22129
22130 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22131
22132         New config-h module, so that "make" output needn't be cluttered
22133         by -DHAVE_CONFIG_H.
22134         * MODULES.html.sh (Support for building libraries and executables):
22135         Add config-h.
22136         * modules/config-h: New file.
22137         * gnulib-tool (nl, sed_transform_lib_file): New vars.
22138         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
22139         the config-h module is used.
22140
22141         New configmake module, so that "make" output needn't be cluttered
22142         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
22143         * MODULES.html.sh (Support for building libraries and executables):
22144         Add configmake.
22145         * modules/configmake: New file.
22146
22147 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22148
22149         * m4/config-h.m4: New file.
22150
22151 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22152
22153         * config/srclist.txt: Add elisp-comp.
22154
22155 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22156
22157         * MODULES.html.sh (Support for building libraries and executables):
22158         Add elisp-comp.
22159         * build-aux/elisp-comp: New file.
22160         * modules/elisp-comp: New file.
22161
22162 2006-08-24  Bruno Haible  <bruno@clisp.org>
22163
22164         * gnulib-tool (func_create_testdir): Use non-default values of
22165         sourcebase and m4base.
22166
22167 2006-08-24  Bruno Haible  <bruno@clisp.org>
22168
22169         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
22170         HTML structure.
22171
22172 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
22173
22174         * modules/openat (Depends-on): Add lchown.
22175
22176 2006-08-23  Bruno Haible  <bruno@clisp.org>
22177
22178         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
22179         of gl_LOCK_EARLY instead of gl_LOCK.
22180
22181 2006-08-23  Bruno Haible  <bruno@clisp.org>
22182
22183         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
22184         on OSF/1 to no.
22185         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
22186
22187 2006-08-23  Bruno Haible  <bruno@clisp.org>
22188
22189         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
22190         as unusable.
22191
22192         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
22193         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
22194         (gl_LOCK): New macro.
22195
22196 2006-08-22  Simon Josefsson  <jas@extundo.com>
22197
22198         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
22199         to md5 module.
22200
22201 2006-08-22  Simon Josefsson  <jas@extundo.com>
22202
22203         * MODULES.html.sh: Add "Support for maintaining and release
22204         projects".
22205
22206         * build-aux/gnupload: New file, from coreutils.
22207
22208 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22209
22210         Avoid the need for AC_LIBSOURCES in m4 macros.
22211         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
22212         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
22213         * modules/check-version (EXTRA_DIST): Add check-version.h.
22214         * modules/crc (EXTRA_DIST): Add crc.h.
22215         * modules/des (EXTRA_DIST): Add des.h.
22216         * modules/gc (EXTRA_DIST): Add gc.h.
22217         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
22218         * modules/getline (EXTRA_DIST): Add getline.h.
22219         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
22220         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
22221         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
22222         * modules/md2 (EXTRA_DIST): Add md2.h.
22223         * modules/md4 (EXTRA_DIST): Add md4.h.
22224         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
22225         * modules/read-file (EXTRA_DIST): Add read-file.h.
22226         * modules/readline (EXTRA_DIST): Add readline.h.
22227         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
22228         rijndael-api-fst.h.
22229
22230 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22231
22232         * m4/rijndael.m4 (gl_ARCFOUR):
22233         * m4/arctwo.m4 (gl_ARCTWO):
22234         * m4/check-version.m4 (gl_CHECK_VERSION):
22235         * m4/crc.m4 (gl_CRC):
22236         * m4/des.m4 (gl_DES):
22237         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
22238         * m4/gc.m4 (gl_GC):
22239         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
22240         * m4/getline.m4 (gl_FUNC_GETLINE):
22241         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
22242         * m4/hmac-md5.m4 (gl_HMAC_MD5):
22243         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
22244         * m4/md2.m4 (gl_MD2):
22245         * m4/md4.m4 (gl_MD4):
22246         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
22247         * m4/read-file.m4 (gl_FUNC_READ_FILE):
22248         * m4/readline.m4 (gl_FUNC_READLINE):
22249         * m4/rijndael.m4 (gl_RIJNDAEL):
22250         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
22251         to get the necessary .h files and whatnot.
22252
22253 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
22254
22255         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
22256         gnulib rather than the other way around.
22257         * config/srclistvars.sh (COREUTILS): Remove.
22258
22259 2006-08-22  Jim Meyering  <jim@meyering.net>
22260
22261         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
22262
22263         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
22264
22265 2006-08-22  Eric Blake  <ebb9@byu.net>
22266
22267         * modules/regexprops-generic: New file.
22268         * MODULES.html.sh (Support for building documentation): List it.
22269
22270 2006-08-22  Eric Blake  <ebb9@byu.net>
22271
22272         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
22273         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
22274         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
22275         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
22276
22277 2006-08-22  Bruno Haible  <bruno@clisp.org>
22278
22279         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
22280         and lib_LTLIBRARIES like the other lib_* variables.
22281
22282 2006-08-22  Bruno Haible  <bruno@clisp.org>
22283
22284         * build-aux/x-to-1.in: New file, from GNU gettext.
22285
22286 2006-08-22  Bruno Haible  <bruno@clisp.org>
22287
22288         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
22289         <utmpx.h> exists.
22290
22291 2006-08-22  Bruno Haible  <bruno@clisp.org>
22292
22293         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
22294         <utmpx.h> exists.
22295
22296 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22297
22298         BeOS portability.
22299         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
22300         exist.
22301         Problem reported by Bruno Haible.
22302
22303 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22304
22305         Avoid the need for AC_LIBSOURCES in m4 macros.
22306         * modules/acl (EXTRA_DIST): Add acl.h.
22307         * modules/argmatch (Files): Add m4/argmatch.m4.
22308         (configure.ac): Add gl_ARGMATCH.
22309         (EXTRA_DIST): Renamed from lib_SOURCES, for
22310         consistency with the other modules.  Remove argmatch.c.
22311         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
22312         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
22313         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
22314         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
22315         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
22316         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
22317         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
22318         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
22319         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
22320         * modules/closeout (EXTRA_DIST): Add closeout.h.
22321         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
22322         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
22323         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
22324         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
22325         dirname.h; remove basename.c and stripslash.c.
22326         * modules/exclude (EXTRA_DIST): Add exclude.h.
22327         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
22328         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
22329         * modules/file-type (EXTRA_DIST): Add file-type.h.
22330         * modules/filemode (EXTRA_DIST): Add filemode.h.
22331         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
22332         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
22333         * modules/fpending (EXTRA_DIST): Add __fpending.h.
22334         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
22335         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
22336         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
22337         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
22338         * modules/getdate (EXTRA_DIST): Add getdate.c.
22339         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
22340         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
22341         * modules/getpass (EXTRA_DIST): Add getpass.h.
22342         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
22343         * modules/group-member (EXTRA_DIST): Add group-member.h.
22344         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
22345         * modules/hash (EXTRA_DIST): Add hash.h.
22346         * modules/human (EXTRA_DIST): Add human.h.
22347         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
22348         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
22349         * modules/lchown (EXTRA_DIST): Add lchown.h.
22350         * modules/long-options (EXTRA_DIST): Add long-options.h.
22351         * modules/lstat (EXTRA_DIST): Add lstat.h.
22352         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
22353         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
22354         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
22355         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
22356         * modules/memxor (EXTRA_DIST): Add memxor.h.
22357         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
22358         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
22359         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
22360         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
22361         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
22362         * modules/physmem (EXTRA_DIST): Add physmem.h.
22363         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
22364         * modules/posixver (EXTRA_DIST): Add posixver.h.
22365         * modules/quote (EXTRA_DIST): Add quote.h.
22366         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
22367         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
22368         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
22369         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
22370         regex_internal.h regexec.c.
22371         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
22372         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
22373         * modules/same (EXTRA_DIST): Add same.h.
22374         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
22375         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
22376         * modules/savedir (EXTRA_DIST): Add savedir.h.
22377         * modules/sha1 (EXTRA_DIST): Add sha1.h.
22378         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
22379         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
22380         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
22381         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
22382         * modules/strdup (EXTRA_DIST): Add strdup.h.
22383         * modules/strftime (EXTRA_DIST): Add strftime.h.
22384         * modules/strndup (EXTRA_DIST): Add strndup.h.
22385         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
22386         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
22387         * modules/time_r (EXTRA_DIST): Add time_r.h.
22388         * modules/timespec (EXTRA_DIST): Add timespec.h.
22389         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
22390         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
22391         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
22392         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
22393         * modules/userspec (EXTRA_DIST): Add userspec.h.
22394         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
22395         * modules/utimens (EXTRA_DIST): Add utimens.h.
22396         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
22397         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
22398         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
22399         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
22400         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
22401         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
22402         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
22403         * modules/yesno (EXTRA_DIST): Add yesno.h.
22404
22405 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22406
22407         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
22408
22409         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
22410         * m4/dev-ino.m4, same-inode.m4: Remove.
22411
22412         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
22413         * m4/acl.m4 (AC_FUNC_ACL):
22414         * m4/backupfile.m4 (gl_BACKUPFILE):
22415         * m4/c-strtod.m4 (gl_C99_STRTOLD):
22416         * m4/canon-host.m4 (gl_CANON_HOST):
22417         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
22418         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
22419         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
22420         * m4/cloexec.m4 (gl_CLOEXEC):
22421         * m4/close-stream.m4 (gl_CLOSE_STREAM):
22422         * m4/closeout.m4 (gl_CLOSEOUT):
22423         * m4/dirfd.m4 (gl_FUNC_DIRFD):
22424         * m4/dirname.m4 (gl_DIRNAME):
22425         * m4/exclude.m4 (gl_EXCLUDE):
22426         * m4/exitfail.m4 (gl_EXITFAIL):
22427         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
22428         * m4/file-type.m4 (gl_FILE_TYPE):
22429         * m4/filemode.m4 (gl_FILEMODE):
22430         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
22431         * m4/fpending.m4 (gl_FUNC_FPENDING):
22432         * m4/fprintftime.m4 (gl_FPRINTFTIME):
22433         * m4/fts.m4 (gl_FUNC_FTS):
22434         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
22435         * m4/getdate.m4 (gl_GETDATE):
22436         * m4/gethrxtime.m4 (gl_GETHRXTIME):
22437         * m4/getpagesize.m4 (gl_GETPAGESIZE):
22438         * m4/getpass.m4 (gl_FUNC_GETPASS):
22439         * m4/gettime.m4 (gl_GETTIME):
22440         * m4/getugroups.m4 (gl_GETUGROUPS):
22441         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
22442         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
22443         * m4/hard-locale.m4 (gl_HARD_LOCALE):
22444         * m4/hash.m4 (gl_HASH):
22445         * m4/idcache.m4 (gl_IDCACHE):
22446         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
22447         * m4/lchown.m4 (gl_FUNC_LCHOWN):
22448         * m4/long-options.m4 (gl_LONG_OPTIONS):
22449         * m4/lstat.m4 (gl_FUNC_LSTAT):
22450         * m4/md5.m4 (gl_MD5):
22451         * m4/memcasecmp.m4 (gl_MEMCASECMP):
22452         * m4/memcoll.m4 (gl_MEMCOLL):
22453         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
22454         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
22455         * m4/memxor.m4 (gl_MEMXOR):
22456         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
22457         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
22458         * m4/modechange.m4 (gl_MODECHANGE):
22459         * m4/mountlist.m4 (gl_MOUNTLIST):
22460         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
22461         * m4/openat.m4 (gl_FUNC_OPENAT):
22462         * m4/pathmax.m4 (gl_PATHMAX):
22463         * m4/physmem.m4 (gl_PHYSMEM):
22464         * m4/posixtm.m4 (gl_POSIXTM):
22465         * m4/posixver.m4 (gl_POSIXVER):
22466         * m4/quote.m4 (gl_QUOTE):
22467         * m4/quotearg.m4 (gl_QUOTEARG):
22468         * m4/readtokens.m4 (gl_READTOKENS):
22469         * m4/readutmp.m4 (gl_READUTMP):
22470         * m4/regex.m4 (gl_REGEX):
22471         * m4/safe-read.m4 (gl_SAFE_READ):
22472         * m4/safe-write.m4 (gl_SAFE_WRITE):
22473         * m4/same.m4 (gl_SAME):
22474         * m4/save-cwd.m4 (gl_SAVE_CWD):
22475         * m4/savedir.m4 (gl_SAVEDIR):
22476         * m4/settime.m4 (gl_SETTIME):
22477         * m4/sha1.m4 (gl_SHA1):
22478         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
22479         * m4/stat-macros.m4 (gl_STAT_MACROS):
22480         * m4/stat-time.m4 (gl_STAT_TIME):
22481         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
22482         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
22483         * m4/strdup.m4 (gl_FUNC_STRDUP):
22484         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
22485         * m4/strndup.m4 (gl_FUNC_STRNDUP):
22486         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
22487         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
22488         * m4/time_r.m4 (gl_TIME_R):
22489         * m4/timespec.m4 (gl_TIMESPEC):
22490         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
22491         * m4/unlinkdir.m4 (gl_UNLINKDIR):
22492         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
22493         * m4/userspec.m4 (gl_USERSPEC):
22494         * m4/utimecmp.m4 (gl_UTIMECMP):
22495         * m4/utimens.m4 (gl_UTIMENS):
22496         * m4/xalloc.m4 (gl_XALLOC):
22497         * m4/xgetcwd.m4 (gl_XGETCWD):
22498         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
22499         * m4/xreadlink.m4 (gl_XREADLINK):
22500         * m4/xstrtod.m4 (gl_XSTRTOD):
22501         * m4/yesno.m4 (gl_YESNO):
22502         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
22503         to get the necessary .h files and whatnot.
22504
22505 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
22506             Bruno Haible  <bruno@clisp.org>
22507
22508         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
22509         /bin/sh understanding of '!' conditional negation.
22510
22511 2006-08-21  Jim Meyering  <jim@meyering.net>
22512
22513         * modules/openat (Depends-on): Really alphabetize.
22514
22515         * modules/acl (Depends-on): Add error and quote.
22516
22517         * check-module (find_included_lib_files): Add at-func.c to the
22518         ok-to-include-more-than-once white list.
22519
22520         * modules/openat (Depends-on): Add lstat.  Alphabetize.
22521
22522 2006-08-21  Bruno Haible  <bruno@clisp.org>
22523
22524         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22525         Emit a pkgdata_DATA variable only if some snippets add contents to it.
22526         Reported by Martin Lambers <marlam@marlam.de>.
22527
22528 2006-08-21  Bruno Haible  <bruno@clisp.org>
22529
22530         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
22531         specify an installation location, don't emit a noinst_LIBRARIES or
22532         noinst_LTLIBRARIES assignment.
22533
22534 2006-08-21  Bruno Haible  <bruno@clisp.org>
22535
22536         BeOS portability.
22537         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
22538         BeOS has mbrtowc() but no <wctype.h>.
22539
22540 2006-08-21  Bruno Haible  <bruno@clisp.org>
22541
22542         BeOS portability.
22543         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
22544         exist.
22545
22546 2006-08-21  Bruno Haible  <bruno@clisp.org>
22547
22548         BeOS portability.
22549         * lib/mbchar.h: Include <wctype.h> only if it exists.
22550
22551 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22552
22553         Remove files that are no longer needed by their respective modules.
22554         * m4/obstack.m4: Remove.
22555         * m4/strerror_r.m4: Remove.
22556         * m4/uint32_t.m4: Remove.
22557         * m4/uintptr_t.m4: Remove.
22558         * m4/ullong_max.m4: Remove.
22559         * m4/xstrtoimax.m4: Remove.
22560         * m4/xstrtoumax.m4: Remove.
22561
22562         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
22563         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
22564         dependencies now capture this.
22565
22566         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
22567         Do not use AC_LIBSOURCES, since gnulib modules now do this.
22568         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
22569         * m4/human.m4 (gl_HUMAN): Likewise.
22570         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
22571         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
22572
22573         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
22574
22575         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
22576         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
22577         stdint.
22578         * m4/human.m4 (gl_HUMAN): Likewise.
22579         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
22580         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
22581         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
22582         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
22583         * m4/xstrtol (gl_XSTRTOL): Likewise.
22584
22585         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
22586         AC_TYPE_LONG_LONG_INT.
22587         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
22588         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
22589         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
22590         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
22591
22592         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
22593         on stdbool.
22594
22595         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
22596         (gl_PREREQ_XSTRTOUL): Remove.
22597
22598         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
22599
22600         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
22601         mode.
22602
22603 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22604
22605         Add and change modules to make it easier for coreutils to use
22606         gnulib-tool.
22607         * modules/backupfile (Files): Remove m4/d-ino.m4.
22608         (Depends-on): Add d-ino.
22609         * modules/cycle-check (Depends-on): Add stdint.
22610         (lib_SOURCES): Add cycle-check.h.
22611         * modules/d-ino: New module.
22612         * modules/d-type: New module.
22613         * modules/error (Files): Remove m4/strerror_r.m4.
22614         * modules/filemode (Files): Add m4/st_dm_mode.m4.
22615         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
22616         m4/inttypes_h.m4, m4/uintmax_t.m4.
22617         (Depends-on): Add stdint.
22618         (lib_SOURCES): Add fsusage.h.
22619         * modules/getcwd (Files): Remove d-ino.m4.
22620         (Depends-on): Add d-ino.
22621         * modules/getndelim2 (Depends-on): Add stdint.
22622         * modules/glob (Files): Remove m4/d-type.m4.
22623         (Depends-on): Add d-type.
22624         * modules/host-os: New module.
22625         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
22626         m4/inttypes_h.m4, m4/uintmax_t.m4.
22627         * Depends-on: Add stdint.
22628         (lib_SOURCES): Add human.h.
22629         * modules/inttostr (Files): Remove m4/intmax_t.m4,
22630         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
22631         m4/uintmax_t.m4, m4/ulonglong.m4.
22632         (Depends-on): Add stdint.
22633         (EXTRA_DIST): Add inttostr.h.
22634         * modules/lchmod: New module.
22635         * modules/link-follow: New module.
22636         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
22637         (Depends-on): Add lchmod.
22638         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
22639         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
22640         (Depends-on): Add stdint.
22641         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
22642         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
22643         (Depends-on): Add stdint.
22644         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
22645         * modules/perl: New module.
22646         * modules/regex (Depends-on): Add stdint.
22647         * modules/rmdir-errno: New module.
22648         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
22649         m4/intmax_t.m4.
22650         (Depends-on): Add stdint.
22651         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
22652         m4/uintmax_t.m4.
22653         (Depends-on): Add stdint.
22654         * modules/unlink-busy: New module.
22655         * modules/utimecmp (Depends-on): Add stdint.
22656         * modules/uptime: New module.
22657         * modules/winsz-ioctl: New module.
22658         * modules/winsz-termios: New module.
22659         * modules/xnanosleep (Depends-on): Add nanosleep.
22660         * modules/ullong_max: Remove.
22661         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
22662         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
22663         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
22664         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
22665         (Depends-on): Add inttypes.
22666         (lib_SOURCES): Add xstrtol.h.
22667         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
22668         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
22669         * MODULES.html.sh: Move 'assert' into the assert section.
22670         Move 'dummy' into the linking section.
22671         Remove ullong_max.
22672         Add section for compatibility checks for POSIX:2001 functions,
22673         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
22674         winsz-ioctl, and winsz-termios into it.
22675         Add lchmod.
22676         Add top-level Misc section and put host-os, perl, and uptime
22677         into it.
22678
22679 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22680
22681         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
22682         now assume the stdint module.  Do not include inttypes.h.
22683         * lib/fsusage.h: Likewise.
22684         * lib/getndelim2.c: Likewise.
22685         * lib/human.h: Likewise.
22686         * lib/inttostr.h: Likewise.
22687         * lib/obstack.c: Likewise.
22688         * lib/regex_internal.h: Likewise.
22689         * lib/tempname.c: Likewise.
22690         * lib/utimecmp.c: Likewise.
22691         * lib/xstrtol.h: Likewise.
22692
22693         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
22694
22695         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
22696         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
22697         * lib/xtime.h: Likewise.
22698
22699 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22700
22701         * modules/openat (Files): Add lib/fchmodat.c.
22702         Fixes problem reported by Jay Youngman.
22703
22704 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22705
22706         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
22707         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
22708
22709 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22710             Bruno Haible  <bruno@clisp.org>
22711
22712         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
22713         and is a script that invokes bison. Tighten the code. Add comments.
22714
22715 2006-08-18  Jim Meyering  <jim@meyering.net>
22716
22717         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
22718         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
22719         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
22720         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
22721
22722 2006-08-18  Bruno Haible  <bruno@clisp.org>
22723
22724         * modules/bison-i18n: New file.
22725         * MODULES.html.sh (Internationalization functions): Add it.
22726
22727 2006-08-18  Bruno Haible  <bruno@clisp.org>
22728
22729         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
22730         sys/statvfs.h. When getmntinfo was found, check its declaration and
22731         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
22732
22733 2006-08-18  Bruno Haible  <bruno@clisp.org>
22734
22735         * m4/bison-i18n.m4: New file, from bison.
22736
22737 2006-08-18  Bruno Haible  <bruno@clisp.org>
22738
22739         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
22740         (ME_DUMMY): Treat "kernfs" as a dummy.
22741         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
22742
22743 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22744
22745         Update from coreutils.
22746
22747         2006-08-15  Jim Meyering  <jim@meyering.net>
22748
22749         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
22750
22751         2006-01-17  Jim Meyering  <jim@meyering.net>
22752
22753         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
22754
22755         2006-01-11  Jim Meyering  <jim@meyering.net>
22756
22757         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
22758         Check for the lchmod function.
22759
22760 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22761
22762         Update from coreutils.
22763
22764         * lib/__fpending.h: Add copyright notice.
22765         * lib/fprintftime.h: Likewise.
22766         * lib/savedir.c: Use (C) in copyright notice.
22767         * lib/savedir.h: Likewise.
22768
22769         2006-08-15  Jim Meyering  <jim@meyering.net>
22770
22771         * lib/at-func.c: New file, with the logic of all emulated at-functions.
22772         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
22773         in support of the EXPECTED_ERRNO macro.
22774         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
22775         definitions.  Instead, define the appropriate symbols and include
22776         "at-func.c".
22777         * lib/mkdirat.c (mkdirat): Likewise.
22778         * lib/fchmodat.c (fchmodat): Likewise.
22779         (ENOSYS): Remove definition.
22780         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
22781         it.  Don't include "unistd--.h" -- it wasn't ever used.
22782
22783         2006-01-17  Jim Meyering  <jim@meyering.net>
22784
22785         Rewrite fts.c not to change the current working directory,
22786         by using openat, fstatat, fdopendir, etc..
22787
22788         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
22789         (HAVE_OPENAT_SUPPORT): Define.
22790         [_LIBC] (fchdir): Don't undef or define; no longer used.
22791         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
22792         Now, this `function' always succeeds, and consumes its file descriptor
22793         parameter -- so callers must not close such FDs.  Update callers.
22794         (diropen_fd, opendirat, cwd_advance_fd): New functions.
22795         (diropen): Add parameter, SP.  Adjust all callers.
22796         Implement using diropen_fd, rather than open.
22797         (fts_open): Initialize new member, fts_cwd_fd.
22798         Remove fts_rft-setting code.
22799         (fts_close): Close fts_cwd_fd, if necessary.
22800         (__opendir2): Define in terms of opendir or opendirat,
22801         depending on whether the FST_NOCHDIR flag is set.
22802         (fts_build): Since fts_safe_changedir consumes its FD, and since
22803         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
22804         and close the dup'd file descriptor upon failure.
22805         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
22806         (fts_safe_changedir): Tweak semantics to reflect that this function
22807         now calls cwd_advance_fd and hence consumes its FD argument.
22808         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
22809         [struct FTS] (fts_rft): Remove now-unused member.
22810         [struct FTS] (fts_cycle.state): Improve comment.
22811
22812         * lib/openat.c (openat_needs_fchdir): New function.
22813         * lib/openat.h (openat_needs_fchdir): Declare it.
22814
22815 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
22816
22817         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
22818         Problem and fix reported by Pádraig Brady in
22819         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
22820
22821 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22822
22823         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
22824
22825 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22826
22827         * lib/memcoll.c (memcoll): Optimize for the common case where the
22828         arguments are bytewise equal.
22829
22830 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
22831
22832         * doc/regexprops-generic.texi: Add a copyright notice.
22833
22834 2006-08-15  Bruno Haible  <bruno@clisp.org>
22835
22836         * modules/tmpdir (License): Change to LGPL.
22837
22838 2006-08-15  Bruno Haible  <bruno@clisp.org>
22839
22840         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
22841         module.
22842
22843 2006-08-14  Simon Josefsson  <jas@extundo.com>
22844
22845         * config/srclist.txt: Add gnupload.
22846
22847 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22848
22849         Change copyright notice from LGPL 2 to GPL 2, since that's the
22850         standard form used in the gnulib repository.
22851         * tests/test-lock.c: Likewise.
22852         * tests/test-stdint.c: Likewise.
22853         * tests/test-tls.c: Likewise.
22854
22855         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
22856         prelude-manager.  User shorter URLs for GNU projects, without '?'.
22857         Add copyright notice.
22858
22859         * check-module: Add copyright notice.  Output a copyright
22860         notice if "--version" is specified.
22861         * modules/COPYING: New file.
22862         * tests/test-getaddrinfo.c: Add copyright notice.
22863         * tests/test-verify.c: Likewise.
22864
22865 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22866
22867         Change copyright notice from LGPL 2 to GPL 2, since that's the
22868         standard form used in the gnulib repository.
22869         * lib/lock.c: LGPL -> GPL.
22870         * lib/lock.h: Likewise.
22871         * lib/strnlen1.c: Likewise.
22872         * lib/strnlen1.h: Likewise.
22873         * lib/tls.c: Likewise.
22874         * lib/tls.h: Likewise.
22875         * lib/tmpdir.c: Likewise.
22876
22877         * lib/TODO: Remove; this belongs only in coreutils.
22878
22879 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22880
22881         Add copyright notices to long-enough files that lack them, since
22882         otherwise the files aren't clearly free.  Use the same notice that
22883         getdate.texi already uses.
22884         * doc/alloca-opt.texi: Add copyright notice.
22885         * doc/alloca.texi: Likewise.
22886         * doc/ctime.texi: Likewise.
22887         * doc/functions.texi: Likewise.
22888         * doc/gcd.texi: Likewise.
22889         * doc/gnulib-tool.texi: Likewise.
22890         * doc/inet_ntoa.texi: Likewise.
22891         * doc/visibility.texi: Likewise.
22892
22893         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
22894         * doc/quote.texi: Add copyright notice.
22895
22896         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
22897         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
22898         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
22899         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
22900         is now obsolete, and give a pointer to the Sun list.
22901         Add copyright notice.
22902
22903 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
22904
22905         * config/srclistvars.sh: Add copyright notice.
22906
22907 2006-08-14  Eric Blake  <ebb9@byu.net>
22908
22909         Import the following change from libc:
22910
22911         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
22912
22913         Upstream bug 2997.
22914         * lib/misc/error.c: Add space between program name and message if file
22915         name is missing.
22916
22917 2006-08-12  Karl Berry  <karl@gnu.org>
22918
22919         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
22920         remove, these originate in gnulib now.
22921
22922 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22923
22924         * doc/Makefile (standards.info standards.html standards.dvi):
22925         Also depend on make-stds.texi.
22926
22927 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
22928
22929         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
22930         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
22931
22932         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
22933         in wchar_t.  Problem reported by Eric Blake.
22934
22935         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
22936         LEN is smaller than SIZE.  Suggested by Bruno Haible.
22937         Also, help the compiler to keep LEN in a register.
22938
22939 2006-08-11  Eric Blake  <ebb9@byu.net>
22940
22941         * users.txt: Sort.  Add tar.
22942
22943 2006-08-11  Bruno Haible  <bruno@clisp.org>
22944
22945         * users.txt: New file.
22946
22947 2006-08-11  Bruno Haible  <bruno@clisp.org>
22948
22949         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
22950         before <wchar.h>. Needed for OSF/1 and BSD/OS.
22951
22952 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
22953
22954         * modules/snprintf (Depends-on): Remove minmax.
22955         (Maintainer): Add self and Bruno.
22956
22957 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
22958
22959         * lib/.cppi-disable: Add snprintf.h, socket_.h.
22960         * lib/snprintf.c: Include <errno.h> and <limits.h>.
22961         (EOVERFLOW): Define if the system does not.
22962         Do not include "minmax.h"; it wasn't used.
22963         (snprintf): Don't assume size_t promotes to an unsigned type.
22964         Fix bug when generated string was too long for the buffer: the
22965         buffer's contents are supposed to be the initial prefix of the
22966         output.  Don't assume vasnprintf returns EOVERFLOW if the size
22967         exceeds INT_MAX; do the check ourselves.
22968
22969         Import the following changes from libc:
22970
22971         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
22972
22973         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
22974         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
22975         set wc to the byte which couldn't be converted.
22976         (re_string_reconstruct): Don't clear valid_raw_len before calling
22977         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
22978         tip_context using re_string_context_at.
22979
22980         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
22981
22982         * lib/posix/regex.h: g++ still cannot handled [restrict].
22983
22984         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
22985
22986         * lib/posix/regex.h: Remove special handling for VMS.
22987
22988 2006-08-10  Jim Meyering  <jim@meyering.net>
22989
22990         * modules/same-inode: New module.
22991         * modules/dev-ino: New module.
22992         * modules/cycle-check: Depend on these modules, rather than simply
22993         including their .h files.
22994         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
22995         required via m4/cycle-check.m4.
22996         * modules/same: Depend on new same-inode module, rather than
22997         including same-inode.h.
22998         * modules/chdir-safer: New file.
22999
23000         * modules/chown (Depends-on): Add stat-macros.
23001
23002 2006-08-10  Jim Meyering  <jim@meyering.net>
23003
23004         * m4/cycle-check.m4: New file.
23005         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
23006         * m4/dev-ino.m4, m4/same-inode.m4: New files.
23007
23008 2006-08-10  Eric Blake  <ebb9@byu.net>
23009
23010         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
23011         in from original proposal.
23012
23013 2006-08-10  Eric Blake  <ebb9@byu.net>
23014         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
23015
23016         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
23017         namespace.
23018
23019 2006-08-10  Bruno Haible  <bruno@clisp.org>
23020
23021         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
23022         as well.
23023
23024 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23025
23026         Sync from coreutils.
23027
23028         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
23029
23030         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
23031         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
23032
23033 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23034
23035         * modules/restrict: Remove; no longer needed now that we assume
23036         Autoconf 2.59 or later.
23037         * MODULES.html.sh: Remove 'restrict'.
23038         * modules/argp (Depends-on): Remove 'restrict'.
23039         * modules/base64 (Depends-on): Likewise.
23040         * modules/gc (Depends-on): Likewise.
23041         * modules/getaddrinfo (Depends-on): Likewise.
23042         * modules/glob (Depends-on): Likewise.
23043         * modules/inet_ntop (Depends-on): Likewise.
23044         * modules/inet_pton (Depends-on): Likewise.
23045         * modules/memxor (Depends-on): Likewise.
23046         * modules/regex (Depends-on): Likewise.
23047         * modules/strtok_r (Depends-on): Likewise.
23048         * modules/time_r (Depends-on): Likewise.
23049
23050 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23051
23052         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
23053         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
23054         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
23055         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
23056         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
23057         * m4/memxor.m4 (gl_MEMXOR): Likewise.
23058         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
23059         gl_C_RESTRICT replaced by AC_C_RESTRICT.
23060
23061         Merge from coreutils.
23062         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
23063         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
23064         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23065         * m4/time_r.m4 (gl_TIME_R): Likewise.
23066
23067 2006-08-09  Karl Berry  <karl@gnu.org>
23068
23069         * config/srclist.txt: no more gettext-tools, per Bruno.
23070
23071 2006-08-08  Eric Blake  <ebb9@byu.net>
23072
23073         * modules/verror: New module.
23074         * MODULES.html.sh: Document it.
23075
23076 2006-08-08  Eric Blake  <ebb9@byu.net>
23077
23078         * lib/verror.h, lib/verror.c: New files.
23079
23080 2006-08-08  Eric Blake  <ebb9@byu.net>
23081
23082         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
23083         verror_at_line output complies with GNU Coding Standards even when
23084         file is NULL.
23085
23086 2006-08-07  Bruno Haible  <bruno@clisp.org>
23087
23088         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
23089         versions of AIX.
23090         Reported by Ralf Wildenhues.
23091
23092 2006-08-07  Bruno Haible  <bruno@clisp.org>
23093
23094         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
23095         in an AC_DEFUN. Needed so that the autoconf snippets can use
23096         AC_REQUIRE.
23097
23098 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23099
23100         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23101         Initialize pkgdata_DATA.
23102         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
23103         overriding it.
23104
23105 2006-08-06  Eric Blake  <ebb9@byu.net>
23106
23107         * lib/error.h: Fold in some upstream changes from glibc.
23108         * lib/error.c: Likewise.
23109
23110 2006-08-04  Bruno Haible  <bruno@clisp.org>
23111
23112         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23113         Make the mostlyclean-local rule depend on mostlyclean-generic.
23114         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
23115
23116 2006-07-31  Bruno Haible  <bruno@clisp.org>
23117
23118         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
23119         <stdlib.h>, <string.h>.
23120
23121 2006-07-30  Bruno Haible  <bruno@clisp.org>
23122
23123         * modules/readlink (License): Change to LGPL.
23124
23125 2006-07-30  Bruno Haible  <bruno@clisp.org>
23126
23127         * modules/javaversion (Makefile.am): Distribute javaversion.java and
23128         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
23129         set PKGDATADIR to point to it.
23130
23131 2006-07-30  Bruno Haible  <bruno@clisp.org>
23132
23133         * modules/csharpexec (configure.ac): Comment out macro invocation.
23134         * modules/javaexec (configure.ac): Likewise.
23135         * modules/javacomp-script (configure.ac): Likewise.
23136
23137         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
23138
23139 2006-07-30  Bruno Haible  <bruno@clisp.org>
23140
23141         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
23142         linked-list.
23143
23144 2006-07-30  Bruno Haible  <bruno@clisp.org>
23145
23146         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
23147
23148 2006-07-30  Bruno Haible  <bruno@clisp.org>
23149
23150         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23151         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
23152         get removed.
23153
23154 2006-07-29  Bruno Haible  <bruno@clisp.org>
23155
23156         Make it possible for gnulib-tool to work with locally modified or
23157         augmented gnulib repositories.
23158         * gnulib-tool (func_usage): Document --local-dir option.
23159         (local_gnulib_dir): New variable.
23160         Handle --local-dir option.
23161         (func_lookup_file): New function.
23162         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
23163         (func_get_description, func_get_filelist, func_get_description,
23164         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
23165         func_get_automake_snippet, func_get_include_directive,
23166         func_get_license, func_get_maintainer): Use func_lookup_file.
23167         (func_import, func_create_testdir): Use func_lookup_file.
23168
23169 2006-07-29  Bruno Haible  <bruno@clisp.org>
23170
23171         * modules/setenv (Depends-on): Add unistd.
23172
23173 2006-07-29  Bruno Haible  <bruno@clisp.org>
23174
23175         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
23176
23177 2006-07-29  Bruno Haible  <bruno@clisp.org>
23178
23179         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
23180
23181 2006-07-29  Bruno Haible  <bruno@clisp.org>
23182
23183         * gnulib-tool (import, update): If there is no Makefile.am, look at
23184         aclocal.m4, instead of bailing out.
23185
23186 2006-07-29  Bruno Haible  <bruno@clisp.org>
23187
23188         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
23189         Categorize the options by when they are useful.
23190
23191 2006-07-29  Bruno Haible  <bruno@clisp.org>
23192
23193         * gnulib-tool (func_usage): Document option --no-libtool.
23194         Handle option --no-libtool.
23195         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
23196         for changed semantics of $libtool variable.
23197         (func_import): Likewise. If libtool is not used, show this through
23198         an option --no-libtool.
23199         (func_create_testdir): Update.
23200
23201 2006-07-29  Bruno Haible  <bruno@clisp.org>
23202
23203         * gnulib-tool (func_import): Extend error message about missing
23204         --doc-base.
23205
23206 2006-07-29  Bruno Haible  <bruno@clisp.org>
23207
23208         * gnulib-tool (func_import): Don't create the $docbase directory if
23209         there is no file to store there.
23210
23211 2006-07-29  Bruno Haible  <bruno@clisp.org>
23212
23213         * gnulib-tool (autoconf_minversion): If a --dir option is given and
23214         relevant, look for configure.ac there, not in the current directory.
23215         Also use a simple search for AC_PREREQ, not "autoconf --trace".
23216
23217 2006-07-29  Bruno Haible  <bruno@clisp.org>
23218
23219         * gnulib-tool (SORT): New variable.
23220         (func_usage): Undocument --assume-autoconf option.
23221         Remove --assume-autoconf option handling.
23222         (autoconf_minversion): Determine from the contents of configure.ac.
23223         (func_import): Remove autoconf_minversion handling.
23224         Suggested by Eric Blake.
23225
23226 2006-07-29  Bruno Haible  <bruno@clisp.org>
23227
23228         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
23229
23230 2006-07-29  Bruno Haible  <bruno@clisp.org>
23231
23232         * config/srclist.txt (*setenv.[ch]): Remove rules.
23233
23234 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23235
23236         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
23237
23238 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23239
23240         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
23241         arpa/inet.h.
23242
23243 2006-07-28  Simon Josefsson  <jas@extundo.com>
23244
23245         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
23246         * modules/inet_pton (Depends-on): Likewise.
23247
23248 2006-07-28  Simon Josefsson  <jas@extundo.com>
23249
23250         * m4/netinet_in_h.m4: New file.
23251
23252 2006-07-28  Simon Josefsson  <jas@extundo.com>
23253
23254         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
23255         #include's.
23256
23257 2006-07-28  Simon Josefsson  <jas@extundo.com>
23258
23259         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
23260         #include's.
23261
23262 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
23263
23264         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
23265         setgid on directories only if they set these bits.
23266         * lib/modechange.h: Remove obsolete comment about masks.
23267
23268 2006-07-28  Eric Blake  <ebb9@byu.net>
23269
23270         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
23271         macro expansion.
23272
23273 2006-07-28  Bruno Haible  <bruno@clisp.org>
23274
23275         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
23276
23277 2006-07-28  Bruno Haible  <bruno@clisp.org>
23278
23279         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
23280
23281 2006-07-28  Bruno Haible  <bruno@clisp.org>
23282
23283         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
23284         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
23285         Define fallbacks.
23286         Avoids link error on FreeBSD 4.x.
23287         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
23288
23289         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
23290         encoding.
23291         * lib/mbswidth.c (iswcntrl): Likewise.
23292
23293 2006-07-27  Bruno Haible  <bruno@clisp.org>
23294
23295         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
23296         test.
23297
23298 2006-07-27  Bruno Haible  <bruno@clisp.org>
23299
23300         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
23301         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
23302         defined.
23303
23304 2006-07-26  Eric Blake  <ebb9@byu.net>
23305
23306         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
23307
23308 2006-07-26  Eric Blake  <ebb9@byu.net>
23309
23310         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
23311         like mingw that lack mkstemp.
23312         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
23313         avoid compilation warning on mingw.
23314
23315 2006-07-26  Bruno Haible  <bruno@clisp.org>
23316
23317         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
23318         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
23319         INT_FAST*_MIN, INTPTR_MIN.
23320
23321 2006-07-25  Bruno Haible  <bruno@clisp.org>
23322
23323         * modules/version-etc (Depends-on): Add stdarg.
23324
23325 2006-07-25  Bruno Haible  <bruno@clisp.org>
23326
23327         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
23328         complex commands.
23329
23330 2006-07-25  Bruno Haible  <bruno@clisp.org>
23331
23332         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
23333         defined in <stdarg.h> or config.h.
23334
23335 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
23336
23337         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
23338         (gl_STDIO_SAFER): Remove.
23339
23340 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
23341
23342         * MODULES.html.sh (File stream based Input/Output):
23343         Add fopen-safer, tmpfile-safer; remove stdio-safer.
23344         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
23345         * modules/fopen-safer, modules/tmpfile-safer: New files.
23346         * modules/stdio-safer: Remove.
23347
23348 2006-07-24  Bruno Haible  <bruno@clisp.org>
23349
23350         * modules/tmpdir: New file.
23351         * MODULES.html.sh (File system functions): Add it.
23352
23353 2006-07-24  Bruno Haible  <bruno@clisp.org>
23354
23355         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
23356         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
23357
23358 2006-07-24  Bruno Haible  <bruno@clisp.org>
23359
23360         * modules/clean-temp: New file.
23361
23362 2006-07-24  Bruno Haible  <bruno@clisp.org>
23363
23364         * m4/tmpdir.m4: New file, from GNU gettext.
23365
23366 2006-07-24  Bruno Haible  <bruno@clisp.org>
23367
23368         * lib/tmpdir.h: New file, from GNU gettext.
23369         * lib/tmpdir.c: New file, from GNU gettext.
23370
23371 2006-07-24  Bruno Haible  <bruno@clisp.org>
23372
23373         * lib/clean-temp.h: New file, from GNU gettext.
23374         * lib/clean-temp.c: New file, from GNU gettext.
23375
23376 2006-07-23  Eric Blake  <ebb9@byu.net>
23377
23378         * modules/stdio-safer (Files): Add tmpfile-safer.c.
23379         (Depends-on): Add binary-io.
23380
23381 2006-07-23  Eric Blake  <ebb9@byu.net>
23382
23383         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
23384
23385 2006-07-23  Eric Blake  <ebb9@byu.net>
23386
23387         * lib/tmpfile-safer.c: New file.
23388         * lib/stdio-safer.h (fopen_safer): Add prototype.
23389         * lib/stdio--.h (tmpfile): Make safer.
23390
23391 2006-07-23  Bruno Haible  <bruno@clisp.org>
23392
23393         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
23394         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
23395         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
23396         gl_linked_remove_at): Use it.
23397
23398 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23399         and Simon Josefsson <jas@extundo.com>
23400
23401         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
23402
23403         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
23404
23405 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23406
23407         * modules/close-stream: New file.
23408         * modules/closeout (Description): Make it clear that it exits
23409         with a diagnostic on error.
23410         (Depends-on): Add close-stream.  Remove fpending, stdbool.
23411         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
23412
23413 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23414
23415         * m4/close-stream.m4: New file.
23416
23417 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
23418
23419         * lib/close-stream.c, lib/close-stream.h: New files.
23420
23421 2006-07-22  Bruno Haible  <bruno@clisp.org>
23422
23423         Merge from GNU gettext 0.15.
23424
23425         2006-05-01  Bruno Haible  <bruno@clisp.org>
23426
23427                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
23428
23429         2006-07-22  Bruno Haible  <bruno@clisp.org>
23430
23431                 * modules/javaversion: New file.
23432                 * MODULES.html.sh (Java): Add javaversion.
23433
23434         2006-03-12  Bruno Haible  <bruno@clisp.org>
23435
23436                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
23437
23438         2005-12-04  Bruno Haible  <bruno@clisp.org>
23439
23440                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
23441                 (untested).
23442
23443         2006-06-21  Bruno Haible  <bruno@clisp.org>
23444
23445                 Avoid warnings from recent versions of mcs.
23446                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
23447                 -o, -L, -r any more. Use options documented since mcs-1.0
23448                 instead. Similarly for -g.
23449
23450         2005-12-04  Bruno Haible  <bruno@clisp.org>
23451
23452                 * build-aux/csharpcomp.sh.in: Suffix for resources is
23453                 .resources, not .resource.
23454
23455         2005-07-09  Bruno Haible  <bruno@clisp.org>
23456
23457                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
23458                 add a .dll suffix.
23459                 Reported by Mark Junker <mjscod@gmx.de>.
23460
23461         2006-07-22  Bruno Haible  <bruno@clisp.org>
23462
23463                 * modules/gettext: Upgrade to gettext-0.15.
23464                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
23465                 m4/visibility.m4.
23466                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
23467
23468 2006-07-22  Bruno Haible  <bruno@clisp.org>
23469
23470         Merge from GNU gettext 0.15.
23471
23472         2006-03-25  Bruno Haible  <bruno@clisp.org>
23473
23474                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
23475
23476         2006-07-21  Bruno Haible  <bruno@clisp.org>
23477
23478                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
23479                 "1.1".
23480
23481         2006-05-09  Bruno Haible  <bruno@clisp.org>
23482
23483                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
23484                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
23485                 for the conftestver execution.
23486
23487         2006-05-01  Bruno Haible  <bruno@clisp.org>
23488
23489                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
23490                 optional target-version argument. Verify that the compiler
23491                 groks source of the specified source-version, or add -source
23492                 option as necessary. Verify that the compiler produces
23493                 bytecode in the specified target-version, or add -target and
23494                 -source options as necessary. Make the result of the test
23495                 available as variable CONF_JAVAC. Also log error output in
23496                 config.log.
23497
23498         2006-03-11  Bruno Haible  <bruno@clisp.org>
23499
23500                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
23501
23502         2006-05-09  Bruno Haible  <bruno@clisp.org>
23503
23504                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
23505                 CLASSPATH_SEPARATOR to a semicolon.
23506
23507         2006-03-12  Bruno Haible  <bruno@clisp.org>
23508
23509                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
23510                 available as variable CONF_JAVA, for subsequent autoconf
23511                 tests. Also log error output in config.log.
23512
23513         2006-07-19  Bruno Haible  <bruno@clisp.org>
23514
23515                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
23516                 that getline works on glibc2 systems. Needed to avoid trouble
23517                 in relocatable.c.
23518                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
23519
23520         2005-12-04  Bruno Haible  <bruno@clisp.org>
23521
23522                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
23523                 launcher (untested).
23524
23525         2005-12-04  Bruno Haible  <bruno@clisp.org>
23526
23527                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
23528
23529         2006-07-22  Bruno Haible  <bruno@clisp.org>
23530
23531                 * gettext.m4: Update from GNU gettext-0.15.
23532                 * nls.m4: Likewise.
23533                 * po.m4: Likewise.
23534                 * inttypes-pri.m4: Likewise.
23535                 * inttypes-h.m4: Renamed from inttypes.m4.
23536                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
23537
23538 2006-07-22  Bruno Haible  <bruno@clisp.org>
23539
23540         Merge from GNU gettext 0.15.
23541
23542         2005-07-05  Bruno Haible  <bruno@clisp.org>
23543
23544                 * printf-args.c (printf_fetchargs): Work around broken
23545                 definition of wint_t on mingw.
23546
23547         2005-02-12  Bruno Haible  <bruno@clisp.org>
23548
23549                 * xallocsa.h: Add extern "C" for C++.
23550
23551         2006-05-17  Bruno Haible  <bruno@clisp.org>
23552
23553                 Cygwin portability.
23554                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
23555
23556         2006-04-30  Bruno Haible  <bruno@clisp.org>
23557
23558                 * progreloc.c: Include <mach-o/dyld.h> if available.
23559                 (find_executable): Use _NSGetExecutablePath when possible.
23560
23561         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
23562
23563                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
23564                 function.
23565
23566         2005-12-29  Bruno Haible  <bruno@clisp.org>
23567
23568                 * progreloc.c (set_program_name_and_installdir): Fix
23569                 compilation error.
23570
23571         2005-12-04  Bruno Haible  <bruno@clisp.org>
23572
23573                 Cygwin portability.
23574                 * progreloc.c: Include <windows.h> also on Cygwin.
23575                 (find_executable): Add support for Cygwin.
23576                 (set_program_name_and_installdir): Handle also platforms with
23577                 nonempty EXEEXT.
23578
23579         2006-07-11  Bruno Haible  <bruno@clisp.org>
23580
23581                 * javacomp.c: Fix a comment.
23582                 Reported by Jim Meyering.
23583
23584         2006-04-30  Bruno Haible  <bruno@clisp.org>
23585
23586                 * javacomp.h (compile_java_class): Add source_version,
23587                 target_version arguments.
23588                 * javacomp.c: Rewritten to choose only a compiler that
23589                 respects the specified source_version and target_version.
23590
23591         2006-06-27  Bruno Haible  <bruno@clisp.org>
23592
23593                 Assume correct S_ISDIR macro.
23594                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
23595
23596         2006-07-22  Bruno Haible  <bruno@clisp.org>
23597
23598                 * javaversion.h: New file, from GNU gettext.
23599                 * javaversion.c: New file, from GNU gettext.
23600                 * javaversion.java: New file, from GNU gettext.
23601                 * javaversion.class: New file, from GNU gettext.
23602
23603         2006-05-17  Bruno Haible  <bruno@clisp.org>
23604
23605                 Cygwin portability.
23606                 * javaexec.c (execute_java_class): Test for jview program
23607                 also on Cygwin.
23608
23609         2006-04-09  Bruno Haible  <bruno@clisp.org>
23610
23611                 * fatal-signal.c: Don't include string.h.
23612                 (at_fatal_signal): Use a copying loop instead of memcpy.
23613
23614         2005-12-04  Bruno Haible  <bruno@clisp.org>
23615
23616                 * csharpexec.c: Add support for 'clix' launcher (untested).
23617                 (execute_csharp_using_sscli): New function.
23618                 (execute_csharp_program): Call it.
23619
23620         2006-06-21  Bruno Haible  <bruno@clisp.org>
23621
23622                 Avoid warnings from recent versions of mcs.
23623                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
23624                 -o, -L, -r any more. Use options documented since mcs-1.0
23625                 instead. Similarly for -g.
23626
23627         2005-07-09  Bruno Haible  <bruno@clisp.org>
23628
23629                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
23630                 add a .dll suffix.
23631                 Reported by Mark Junker <mjscod@gmx.de>.
23632
23633         2006-06-17  Bruno Haible  <bruno@clisp.org>
23634
23635                 * config.charset: Update for NetBSD 3.0.
23636
23637         2006-05-17  Bruno Haible  <bruno@clisp.org>
23638
23639                 Cygwin portability.
23640                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
23641
23642         2006-05-16  Bruno Haible  <bruno@clisp.org>
23643
23644                 * localcharset.c [CYGWIN]: Include <windows.h>.
23645                 (get_charset_aliases): For Cygwin, return the same CPxxx
23646                 aliases list as under WIN32.
23647                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
23648                 the environment variables. Fall back to GetACP().
23649
23650         2006-04-05  Bruno Haible  <bruno@clisp.org>
23651
23652                 * config.charset: Update Juan Manuel Guerrero's address.
23653
23654         2005-02-12  Bruno Haible  <bruno@clisp.org>
23655
23656                 * allocsa.h: Add extern "C" for C++.
23657
23658         2005-02-10  Bruno Haible  <bruno@clisp.org>
23659
23660                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
23661                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
23662
23663         2006-07-22  Bruno Haible  <bruno@clisp.org>
23664
23665                 * gettext.h: Update to GNU gettext-0.15.
23666
23667 2006-07-22  Bruno Haible  <bruno@clisp.org>
23668
23669         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
23670         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
23671         lib-prefix.m4, longdouble.m4, ssize_t.m4.
23672
23673 2006-07-21  Eric Blake  <ebb9@byu.net>
23674
23675         * modules/stdlib-safer: New file.
23676         * MODULES.html.sh (File stream based Input/Output): Add
23677         stdlib-safer.
23678
23679 2006-07-21  Eric Blake  <ebb9@byu.net>
23680
23681         * lib/stdlib-safer.h: New file from coreutils, required by
23682         stdlib--.h.
23683
23684 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
23685
23686         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
23687
23688 2006-07-20  Bruno Haible  <bruno@clisp.org>
23689
23690         * gnulib-tool: Recognize new option --assume-autoconf.
23691         (autoconf_minversion): New variable.
23692         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
23693
23694 2006-07-20  Bruno Haible  <bruno@clisp.org>
23695
23696         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
23697
23698 2006-07-19  Derek R. Price  <derek@ximbiot.com>
23699
23700         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
23701         Reindent and repaginate.
23702
23703 2006-07-19  Derek Price  <derek@ximbiot.com>
23704
23705         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
23706         Correct grammar.
23707
23708 2006-07-17  Bruno Haible  <bruno@clisp.org>
23709
23710         * modules/list: New file.
23711         * modules/array-list: New file.
23712         * modules/carray-list, modules/carray-list-tests: New files.
23713         * modules/linked-list, modules/linked-list-tests: New files.
23714         * modules/avltree-list, modules/avltree-list-tests: New files.
23715         * modules/rbtree-list, modules/rbtree-list-tests: New files.
23716         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
23717         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
23718         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
23719         * modules/oset: New file.
23720         * modules/array-oset: New file.
23721         * modules/avltree-oset, modules/avltree-oset-tests: New files.
23722         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
23723         * tests/test-carray_list.c: New file.
23724         * tests/test-linked_list.c: New file.
23725         * tests/test-avltree_list.c: New file.
23726         * tests/test-rbtree_list.c: New file.
23727         * tests/test-linkedhash_list.c: New file.
23728         * tests/test-avltreehash_list.c: New file.
23729         * tests/test-rbtreehash_list.c: New file.
23730         * tests/test-avltree_oset.c: New file.
23731         * tests/test-rbtree_oset.c: New file.
23732         * MODULES.html.sh (Container data structures): New section.
23733
23734 2006-07-17  Bruno Haible  <bruno@clisp.org>
23735
23736         * m4/gl_list.m4: New file.
23737
23738 2006-07-17  Bruno Haible  <bruno@clisp.org>
23739
23740         * lib/gl_list.h: New file.
23741         * lib/gl_list.c: New file.
23742         * lib/gl_array_list.h: New file.
23743         * lib/gl_array_list.c: New file.
23744         * lib/gl_carray_list.h: New file.
23745         * lib/gl_carray_list.c: New file.
23746         * lib/gl_linked_list.h: New file.
23747         * lib/gl_linked_list.c: New file.
23748         * lib/gl_anylinked_list1.h: New file.
23749         * lib/gl_anylinked_list2.h: New file.
23750         * lib/gl_avltree_list.h: New file.
23751         * lib/gl_avltree_list.c: New file.
23752         * lib/gl_anyavltree_list1.h: New file.
23753         * lib/gl_anyavltree_list2.h: New file.
23754         * lib/gl_rbtree_list.h: New file.
23755         * lib/gl_rbtree_list.c: New file.
23756         * lib/gl_anyrbtree_list1.h: New file.
23757         * lib/gl_anyrbtree_list2.h: New file.
23758         * lib/gl_anytree_list1.h: New file.
23759         * lib/gl_anytree_list2.h: New file.
23760         * lib/gl_linkedhash_list.h: New file.
23761         * lib/gl_linkedhash_list.c: New file.
23762         * lib/gl_anyhash_list1.h: New file.
23763         * lib/gl_anyhash_list2.h: New file.
23764         * lib/gl_avltreehash_list.h: New file.
23765         * lib/gl_avltreehash_list.c: New file.
23766         * lib/gl_rbtreehash_list.h: New file.
23767         * lib/gl_rbtreehash_list.c: New file.
23768         * lib/gl_anytreehash_list1.h: New file.
23769         * lib/gl_anytreehash_list2.h: New file.
23770
23771         * lib/gl_oset.h: New file.
23772         * lib/gl_oset.c: New file.
23773         * lib/gl_array_oset.h: New file.
23774         * lib/gl_array_oset.c: New file.
23775         * lib/gl_avltree_oset.h: New file.
23776         * lib/gl_avltree_oset.c: New file.
23777         * lib/gl_rbtree_oset.h: New file.
23778         * lib/gl_rbtree_oset.c: New file.
23779         * lib/gl_anytree_oset.h: New file.
23780
23781 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23782
23783         * m4/mkancesdirs.m4: New file.
23784         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
23785         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
23786         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
23787         it.
23788
23789 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23790
23791         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
23792         * lib/mkancesdirs.h: New files.
23793         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
23794         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
23795         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
23796         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
23797         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
23798         callers changed.  Revamp internals significantly, by not
23799         attempting to create directories that are temporarily more
23800         permissive than the final results.  Do not attempt to use
23801         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
23802         This removes some race conditions, fixes some bugs, and simplifies
23803         things.  Use new dirchownmod function to do owner and mode changes.
23804         * lib/mkdir-p.h: Likewise.
23805         * lib/modechange.c (octal_to_mode): New function.
23806         (struct mode_change): New member mentioned.
23807         (make_node_op_equals): New arg mentioned.  All callers changed.
23808         (mode_compile): Keep track of which mode bits the user has explicitly
23809         mentioned.
23810         (mode_adjust): New arg DIR, so that we implement the X op correctly.
23811         New arg PMODE_BITS, to keep track of which mode bits the user
23812         mentioned; it treats S_ISUID and S_ISGID speciall.
23813         All callers changed.
23814         * lib/modechange.h: Likewise.
23815
23816 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
23817
23818         * MODULES.html.sh: Add mkancestors.
23819         * modules/mkancesdirs: New module.
23820         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
23821         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
23822         The chdir-safer and afs files are now orphans; I'll remove them
23823         unless someone speaks up.
23824         Add lib/dirchownmod.c, lib/dirchownmod.h.
23825         (Depends-on): Remove alloca, chown, save-cwd, dirname.
23826         Add lchown, mkancesdirs.
23827         (Maintainer): Add self.
23828
23829 2006-07-15  Karl Berry  <karl@gnu.org>
23830
23831         * gnulib-tool: help message wording/arrangement.
23832
23833 2006-07-14  Simon Josefsson  <jas@extundo.com>
23834
23835         * doc/gnulib.texi (Libtool and Windows): New section.
23836
23837 2006-07-12  Simon Josefsson  <jas@extundo.com>
23838
23839         * modules/gendocs (License): Fix license, approved by Karl.
23840
23841 2006-07-12  Eric Blake  <ebb9@byu.net>
23842
23843         * MODULES.html.sh: Add gendocs.
23844
23845 2006-07-11  Eric Blake  <ebb9@byu.net>
23846
23847         * modules/fdl: New module, to install doc/fdl.texi.
23848         * MODULES.html.sh: Add new section for documentation modules.
23849         * gnulib-tool: Avoid space-tab.
23850         (--doc-base): New option, to manage files from doc.
23851
23852 2006-07-11  Eric Blake  <ebb9@byu.net>
23853
23854         * m4/absolute-header.m4: Fix comments to match recent change.
23855
23856 2006-07-11  Eric Blake  <ebb9@byu.net>
23857
23858         * gnulib-tool: List --doc-base before --tests-base.
23859
23860 2006-07-11  Derek R. Price  <derek@ximbiot.com>
23861
23862         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
23863
23864 2006-07-11  Bruno Haible  <bruno@clisp.org>
23865
23866         * README: Mention where to put documentation.
23867
23868 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23869
23870         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
23871
23872 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
23873
23874         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
23875         to stdint.m4.
23876
23877 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
23878
23879         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
23880         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
23881         "no/such/file/stdint.h" when there is no such file, so that
23882         the resulting C code can be parsed by dodgy compilers.
23883         Problems reported by Bob Proulx.
23884
23885 2006-07-10  Derek R. Price  <derek@ximbiot.com>
23886
23887         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
23888         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
23889         macros into the GNU _D_EXACT_NAMLEN.
23890         * lib/savedir.c:  Likewise.
23891         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
23892
23893 2006-07-10  Derek R. Price  <derek@ximbiot.com>
23894         and Paul Eggert  <eggert@cs.ucla.edu>
23895
23896         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
23897         * m4/savedir.m4:
23898         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
23899         macros into the GNU _D_EXACT_NAMLEN.
23900
23901 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23902
23903         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
23904         around the absolute name, to work around a problem with the HP-UX
23905         11.23 native C compiler, reported by Bob Proulx.
23906
23907 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23908
23909         * doc/maintain.texi, make-stds.texi: Sync from
23910         <http://savannah.gnu.org/projects/gnustandards>.
23911
23912 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23913
23914         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
23915
23916 2006-07-09  Jim Meyering  <jim@meyering.net>
23917
23918         * m4/glob.m4: Remove a doubled word in a comment.
23919
23920 2006-07-09  Jim Meyering  <jim@meyering.net>
23921
23922         * lib/argp-pv.c: Remove a doubled word in a comment.
23923         * lib/check-version.c (check_version): Likewise.
23924         * lib/javacomp.c (compile_java_class): Likewise.
23925
23926 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
23927
23928         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
23929         for the benefit of people using Autoconf 2.60.  If you want to
23930         support older Autoconf versions you can copy m4/onceonly_2_57.m4
23931         (or m4/onceonly.m4, if pre-2.57) manually.
23932
23933 2006-07-08  Jim Meyering  <jim@meyering.net>
23934
23935         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
23936         comment.
23937         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
23938         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
23939         comment.
23940
23941 2006-07-08  Jim Meyering  <jim@meyering.net>
23942
23943         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
23944
23945 2006-07-07  Simon Josefsson  <jas@extundo.com>
23946
23947         * tests/test-crc.c: Change expected crc value, the test vector
23948         were probably computed using the old broken crc.c?
23949
23950 2006-07-06  Simon Josefsson  <jas@extundo.com>
23951
23952         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
23953         now the canonical place for the M4 file).
23954
23955         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
23956         from the sys_socket dependency now.
23957
23958         * modules/inet_pton (Files): Ditto.
23959
23960         * modules/inet_ntop (Files): Ditto.
23961
23962 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23963
23964         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
23965         not gl_PREREQ_GETUSERSHELL.
23966
23967 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23968
23969         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
23970         with only one argument, for Autoconf 2.60.
23971         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
23972         expand to nothing, so add a shell command to avoid syntax error.
23973         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
23974
23975 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23976
23977         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
23978
23979 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23980
23981         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
23982         no longer needed.  Check for isblank decl.
23983         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
23984         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
23985         of existence.
23986
23987 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23988
23989         * lib/getloadavg.c: Use __VMS, not VMS.
23990         * lib/getopt.c: Likewise.
23991         * lib/getpagesize.h: Likewise.
23992         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
23993         and probably does not work.
23994
23995 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23996
23997         * lib/.cppi-disable: Add wcwidth.
23998         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
23999         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
24000         (ISGRAPH): Remove.  All uses changed to isgraph.
24001         (FOLD) [!defined _LIBC]: Remove special case.
24002         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
24003         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
24004         HAVE_ISBLANK.
24005         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
24006         case.
24007
24008 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
24009
24010         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
24011         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
24012         brackets.  Other minor changes to suppress some compiler
24013         warnings.
24014
24015 2006-07-06  Derek R. Price  <derek@ximbiot.com>
24016         and Paul Eggert  <eggert@cs.ucla.edu>
24017
24018         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
24019         of invoking obsolescent AC_HEADER_DIRENT macro.
24020         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
24021         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
24022         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
24023         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
24024         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
24025         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
24026         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
24027         * m4/readdir.m4: Remove; no longer needed.
24028
24029 2006-07-06  Derek R. Price  <derek@ximbiot.com>
24030         and Paul Eggert  <eggert@cs.ucla.edu>
24031
24032         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
24033         Don't worry about this obsolete case any more.
24034         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
24035         directories.
24036         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
24037         worry about this obsolete case any more.
24038         * lib/fts.c: Likewise.
24039         * lib/getcwd.c: Likewise.
24040         * lib/glob.h: Likewise.
24041         * lib/savedir.c: Likewise.
24042
24043 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24044
24045         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
24046         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
24047         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
24048         needed.
24049         All uses removed.
24050         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24051         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
24052         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
24053         needed.
24054         * m4/getdate.m4 (gl_GETDATE): Likewise.
24055         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
24056         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
24057         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
24058         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24059         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
24060         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
24061         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
24062         needed.
24063
24064 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
24065
24066         * lib/memcasecmp.c: Include <limits.h>.
24067         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
24068         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
24069         Don't assume isdigit succeeds only on '0' through '9'.
24070
24071 2006-07-05  Eric Blake  <ebb9@byu.net>
24072
24073         * modules/getaddrinfo (Depends-on): Add snprintf.
24074
24075 2006-07-05  Eric Blake  <ebb9@byu.net>
24076
24077         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
24078         to avoid 'header present but could not be compiled' on cygwin.
24079
24080 2006-07-05  Eric Blake  <ebb9@byu.net>
24081
24082         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
24083         missing from netdb.h.
24084         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
24085
24086 2006-07-05  Derek R. Price  <derek@ximbiot.com>
24087
24088         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
24089         no longer needed.
24090         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
24091         * m4/getdate.m4 (gl_GETDATE): Likewise.
24092         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
24093         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
24094         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
24095         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
24096         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
24097
24098 2006-07-05  Derek R. Price  <derek@ximbiot.com>
24099
24100         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
24101         All uses of is_space replaced by isspace.
24102         * lib/exit.h: Don't talk about STDC_HEADERS.
24103         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
24104         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
24105         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
24106         replaced by isprint etc.
24107         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
24108         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
24109         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
24110         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
24111         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
24112         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
24113
24114 2006-07-05  Bruno Haible  <bruno@clisp.org>
24115
24116         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
24117         the function exists, before testing against AIX.
24118         Reported by Martin Lambers <marlam@marlam.de>.
24119
24120 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
24121
24122         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
24123         From Mark D. Baushke.
24124
24125 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
24126
24127         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
24128         to the absolute name, not just one, to bypass Sun C 5.8's
24129         "warning: #include of /usr/include/... may be non-portable".
24130
24131 2006-07-04  Eric Blake  <ebb9@byu.net>
24132
24133         * modules/dirname-tests: New test module.
24134         * tests/test-dirname.c: New file, replacing dirname.c
24135         TEST_DIRNAME section that was recently deleted.
24136
24137 2006-07-04  Bruno Haible  <bruno@clisp.org>
24138
24139         Assume ANSI C header files and <ctype.h> functions.
24140         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
24141         (mbsnwidth): Use isprint, iscntrl instead.
24142
24143 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24144
24145         Merge from coreutils.
24146         * MODULES.html.sh: Add xstrtold.
24147         * modules/xstrtold: New file.
24148         * modules/cycle-check (Files): Add lib/same-inode.h.
24149         * modules/dirname (Files): Add m4/double-slash-root.m4.
24150         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
24151         * modules/mkdir-p (Files): Add lib/same-inode.h.
24152         * modules/same (Files): Add lib/same-inode.h.
24153
24154 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24155
24156         * m4/absolute-header.m4: Renamed from full-header-path.m4.
24157         This is to keep the terminology clean; POSIX talks about
24158         "absolute pathnames", not "full pathnames", but the GNU
24159         Coding Standards say to use "path" for something else;
24160         so use "absolute" to keep both sides happy.
24161         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
24162         Set gl_absolute_header, not gl_full_header_path.
24163         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
24164         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
24165         All uses changed.
24166
24167         Merge from coreutils.
24168
24169         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24170
24171         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
24172         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
24173         want to require the building of c-strtod.o.
24174         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
24175         needs -lm directly.
24176         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
24177
24178         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
24179
24180         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
24181         --as-needed option if available.  Problem reported by Albert Chin in
24182         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
24183         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
24184         cc merely issues a bunch of annoying warnings for --as-needed
24185         (this problem was reported by Bob Proulx).  Also, try linking with
24186         -lm to detect a bug in binutils 2.16 (this problem was reported
24187         by Ralf Wildenhues).
24188
24189         2006-06-18  Jim Meyering  <jim@meyering.net>
24190
24191         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
24192         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
24193         macro.
24194         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
24195         also check for glibc-2.4's abort-inducing bug.
24196
24197         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
24198         Low-probability clean-up should be to use rmdir to get rid of
24199         the just-created directory, not unlink.
24200
24201         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
24202         configure fail, and request a bug report to inform us about it.
24203         Add a comment that, barring reports to the contrary, in 2007 we'll
24204         assume ftruncate is universally available.
24205
24206         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
24207
24208         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
24209
24210         2006-03-12  Jim Meyering  <jim@meyering.net>
24211
24212         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
24213         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
24214         * m4/same.m4 (gl_SAME): Likewise.
24215         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
24216
24217         2006-03-11  Eric Blake  <ebb9@byu.net>
24218
24219         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
24220         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
24221         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
24222         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
24223
24224 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
24225
24226         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
24227         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
24228         reported by Mark D. Baushke, one in
24229         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
24230
24231         Merge from coreutils.
24232
24233         * lib/.cppi-disable: Add stdint_.h.
24234         * lib/.cvsignore: Add stdint.h.
24235
24236         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
24237
24238         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
24239         both double and long double versions.
24240         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
24241         * lib/xstrtold.c: New file.
24242         * lib/xstrtod.h (xstrtold): New decl.
24243
24244         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
24245
24246         * lib/filemode.c (setst): Remove.
24247         (strmode): Rewrite to avoid setst.  This makes the code shorter,
24248         (arguably) clearer, and the generated code is a bit smaller on my
24249         Debian GNU/Linux stable x86 host.
24250
24251         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
24252
24253         * lib/filemode.c: Include "filemode.h" first, to test the interface.
24254         Assume that filemode.h includes sys/types.h and sys/stat.h.
24255         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
24256         (ftypelet): Reorder to put common cases first, for efficiency.
24257         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
24258         to do 'M'.
24259         (strmode): Renamed from mode_string, and now stores 12 bytes instead
24260         of 10, for compatibility with FreeBSD.  All callers changed.
24261         (filemodestring): Now stores 12 bytes instead of 10, and sets file
24262         types that can't be deduced solely from st_mode.  First arg is now a
24263         const pointer.
24264         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
24265         (strmode): Renamed from mode_string.
24266         (filemodestring): New decl.
24267         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
24268         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
24269         needed.
24270         (S_ISPORT, S_ISWHT): New macros, if not already defined.
24271
24272         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
24273
24274         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
24275         fsusage.h now does that.  Include fsusage.h first, to test interface.
24276         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
24277         at most one method (the old code could have generated decls that
24278         didn't conform to C89, not that this was ever exercised).
24279         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
24280
24281         2006-03-19  Jim Meyering  <jim@meyering.net>
24282
24283         Work even in a chroot where d_ino values for entries in "/"
24284         don't match the stat.st_ino values for the same names.
24285         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
24286         number, iterate through all entries again, using lstat instead.
24287         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
24288         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
24289
24290         * lib/getcwd.c (__getcwd): Clarify a comment.
24291         Use memcpy in place of a call to strcpy.
24292
24293         2006-03-12  Jim Meyering  <jim@meyering.net>
24294
24295         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
24296         matches that of the current directory (which we're about to chdir ".."
24297         out of), then save the dev-ino of the parent, instead.
24298
24299         * lib/same-inode.h (SAME_INODE): New file/macro.
24300         * lib/chdir-safer.c (SAME_INODE): Remove definition.
24301         Include "same-inode.h", instead.
24302         * lib/same.c: Likewise.
24303         * lib/cycle-check.h: Include "same-inode.h".
24304         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
24305         * lib/cycle-check.c (SAME_INODE): Remove definition.
24306         * lib/root-dev-ino.h: Include "same-inode.h".
24307
24308         2006-03-11  Eric Blake  <ebb9@byu.net>
24309
24310         * lib/same.c (same_name): s/base_name/last_component/
24311         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
24312         * lib/filenamecat.c (file_name_concat): Likewise.
24313
24314         2006-03-11  Eric Blake  <ebb9@byu.net>,
24315                     Paul Eggert  <eggert@cs.ucla.edu>
24316
24317         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
24318         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
24319         drive prefix.
24320         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
24321         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
24322         (last_component): New method.
24323         * lib/dirname.c (dir_len): Determine when drive letters need a
24324         subsequent slash.  Preserve // when it is special.
24325         (dir_name): Don't append dot when drive letter is absolute.
24326         [TEST_DIRNAME]: Move into a full-blown gnulib test.
24327         * lib/basename.c (base_name): New semantics - malloc the result.
24328         Preserve // when it is special.  Preserve relative files that look
24329         like drive letters.
24330         (base_len): Preserve // when it is special.
24331         (last_component): New method, similar to old base_name semantics.
24332         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
24333         base_name.  Strip redundant slashes from ///.
24334
24335 2006-07-03  Jim Meyering  <jim@meyering.net>
24336
24337         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
24338         macro is used before the first cycle_check call.
24339
24340 2006-07-03  Eric Blake  <ebb9@byu.net>
24341
24342         * modules/dirname (Depends-on): Add xstrndup.
24343
24344 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24345
24346         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
24347         test cases, so that config.log is a bit easier to follow.
24348
24349 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
24350
24351         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
24352         both are 64 bits, since this seems to be the tradition, and this
24353         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
24354         we ever run into a host that prefers long long to long in this
24355         case, we'll need another configure-time test.  Problem reported by
24356         Jim Meyering.
24357
24358 2006-07-02  Eric Blake  <ebb9@byu.net>
24359
24360         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
24361
24362 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24363
24364         * modules/inttypes (Depends-on): No longer depends on stdint.
24365         * modules/stdint (Description): Say more about assumptions.
24366         Say that the fast types might differ.  Say macros are used.
24367         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
24368         (Makefile.am): Revise list of substituted symbols to match
24369         new stdint.m4.
24370         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
24371         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
24372         * tests/test-stdint.c (verify_same_types)
24373         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
24374         the code conforms to C99/C89.
24375         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
24376         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
24377
24378 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24379
24380         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
24381         but fix a bug, by requiring at least 64 bits.
24382         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
24383         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
24384         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
24385         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
24386
24387         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
24388         changes.  Make 2.59 a prerequisite.  Check and substitute for
24389         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
24390         inttypes.h.  Do not use special include files; just use the
24391         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
24392         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
24393         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
24394         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
24395         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
24396         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
24397         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
24398         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
24399         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
24400         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
24401         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
24402         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
24403         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
24404         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
24405         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
24406         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
24407         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
24408         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
24409         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
24410         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
24411         WINT_MAX.  Check for C99 conformance more strictly, by detecting
24412         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
24413         not check for things that C99 does not require, e.g., int8_t.  If
24414         a test isn't needed unless <stdint.h> isn't working, and is
24415         unlikely to be needed for any other reason, then don't do it
24416         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
24417         size_t, since we assume C89 freestanding at least.  Do not check
24418         for sig_atomic_t, wchar_t, or wint_t, since the code now does
24419         the right thing even if the types are not defined.  Instead use:
24420         (gl_STDINT_TYPE_PROPERTIES): New macro.
24421         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
24422         testing whether <sys/types.h> clashes, as Autoconf does this for
24423         us now.  All uses removed.
24424         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
24425         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
24426         (gl_CHECK_TYPE_SAME):
24427         Remove; no longer needed.
24428         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
24429         exists, since we'll return 0 anyway in that case.
24430         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
24431
24432 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24433
24434         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
24435         possible collision with system files.
24436         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
24437         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
24438         WCHAR_MIN and WCHAR_MAX in this case.
24439         (<stddef.h>): Do not include; no longer needed.
24440         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
24441         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
24442         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
24443         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
24444         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
24445         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
24446         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
24447         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
24448         !defined(__c99))]: Include in this case too, since it's harmless
24449         now.
24450         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
24451         dangerous to do so.
24452         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
24453         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
24454         (_STDINT_MIN, _STDINT_MAX): New macros.
24455         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
24456         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
24457         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
24458         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
24459         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
24460         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
24461         macros, not typedefs; this simplifies things quite a bit.
24462         Use long int for all types narrower than int64_t.
24463         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
24464         Define in terms of long long int or int64_t or long int,
24465         not int64_t or int32_t.  This saves some compile-time testing.
24466         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
24467         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
24468         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
24469         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
24470         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
24471         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
24472         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
24473         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
24474         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
24475         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
24476         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
24477         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
24478         undef any previous version and define our own version, for
24479         simplicity and consistency with the new macros for types.
24480         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
24481         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
24482         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
24483         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
24484         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
24485         @WINT_T_SUFFIX@ to keep things simple here.
24486         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
24487         Simplify by assuming typical 8/16/32/64 host, since we're
24488         already doing that elsewhere anyway.
24489         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
24490         and assume long long int is 64 bits if available.  This
24491         speeds up 'configure'.
24492
24493 2006-07-01  Eric Blake  <ebb9@byu.net>
24494
24495         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
24496         Reported by Andreas Buening.
24497
24498 2006-07-01  Eric Blake  <ebb9@byu.net>
24499
24500         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
24501
24502 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
24503
24504         * lib/getaddrinfo.c: fixed typo
24505
24506 2006-06-29  Jim Meyering  <jim@meyering.net>
24507
24508         * modules/strftime (Maintainer): Add my name, since with the
24509         FPRINTFTIME changes strftime.c has forked from glibc.
24510
24511 2006-06-29  Eric Blake  <ebb9@byu.net>
24512
24513         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
24514
24515 2006-06-29  Eric Blake  <ebb9@byu.net>
24516
24517         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
24518
24519 2006-06-29  Eric Blake  <ebb9@byu.net>
24520
24521         * lib/stat_.h: New file.
24522
24523 2006-06-29  Eric Blake  <ebb9@byu.net>
24524
24525         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
24526         unused static function.
24527
24528 2006-06-29  Eric Blake  <ebb9@byu.net>
24529
24530         * doc/functions.texi (Function Portability): Document missing lstat
24531         on mingw.
24532
24533 2006-06-29  Eric Blake  <ebb9@byu.net>
24534
24535         * MODULES.html.sh: Add sys_stat.
24536         * modules/sys_stat: New module.
24537         * modules/mkstemp (Depends-on): Add sys_stat.
24538
24539 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24540
24541         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
24542
24543 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24544
24545         * m4/c-bs-a.m4: Removed.
24546
24547 2006-06-29  Derek R. Price  <derek@ximbiot.com>
24548
24549         * lib/strftime.c: Assume strftime() exists.
24550
24551 2006-06-29  Derek Price  <derek@ximbiot.com>
24552
24553         * modules/c-bs-a: Removed - \a is C89.
24554         * MODULES.html.sh: Remove c-bs-a.
24555
24556 2006-06-29  Bruno Haible  <bruno@clisp.org>
24557
24558         * modules/wcwidth (License): Change to LGPL.
24559
24560 2006-06-28  Simon Josefsson  <jas@extundo.com>
24561
24562         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
24563         on _WIN32.
24564
24565         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
24566         getnameinfo.
24567
24568 2006-06-28  Simon Josefsson  <jas@extundo.com>
24569
24570         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
24571
24572 2006-06-28  Simon Josefsson  <jas@extundo.com>
24573
24574         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
24575         functions there.  It will succeed on Windows XP, but on Windows
24576         2000 and (presumably) earlier, it will fail, and use the internal
24577         re-implementation.
24578         (use_win32_p): New function.
24579         (getaddrinfo): Use strtoul on servname, to support numeric ports.
24580         Support AI_NUMERICSERV to disable getservbyname.
24581         (getnameinfo): New function, only supports
24582         NI_NUMERICHOST|NI_NUMERICSERV for now.
24583
24584         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
24585         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
24586         getnameinfo.
24587
24588 2006-06-28  Eric Blake  <ebb9@byu.net>
24589
24590         * modules/wcwidth: New file.
24591         * modules/mbchar (Depends-on): Add wcwidth.
24592         * modules/mbswidth (Depends-on): Add wcwidth.
24593         * MODULES.html.sh: Add wcwidth.
24594
24595 2006-06-28  Eric Blake  <ebb9@byu.net>
24596
24597         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
24598         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
24599
24600 2006-06-28  Eric Blake  <ebb9@byu.net>
24601
24602         * lib/xvasprintf.h: Fix comments.
24603
24604 2006-06-28  Eric Blake  <ebb9@byu.net>
24605
24606         * lib/mbchar.h (wcwidth): Include wcwidth.h.
24607         * lib/mbswidth.c (wcwidth): Move from here...
24608         * lib/wcwidth.h: ...to this new file.
24609
24610 2006-06-28  Derek R. Price  <derek@ximbiot.com>
24611
24612         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
24613
24614         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
24615         it's obsolete.
24616         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
24617
24618 2006-06-28  Derek R. Price  <derek@ximbiot.com>
24619
24620         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
24621         Autoconf 2.60 says this stuff was obsolete.
24622
24623 2006-06-28  Bruno Haible  <bruno@clisp.org>
24624
24625         * modules/wcwidth (Files): Add m4/wchar_t.m4.
24626
24627 2006-06-28  Bruno Haible  <bruno@clisp.org>
24628
24629         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
24630         gt_TYPE_WCHAR_T.
24631
24632 2006-06-28  Bruno Haible  <bruno@clisp.org>
24633
24634         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
24635         declaration for wcwidth.
24636         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
24637
24638 2006-06-28  Bruno Haible  <bruno@clisp.org>
24639
24640         * lib/mkdtemp.c [MINGW]: Include <io.h>.
24641         (mkdir): Define using _mkdir.
24642
24643 2006-06-28  Bruno Haible  <bruno@clisp.org>
24644
24645         * lib/getaddrinfo.h: Fix POSIX URL.
24646         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
24647         _WIN32.
24648         (use_win32_p): Make static.
24649         (getaddrinfo): Reject service name if it is empty or does not consist
24650         solely of decimal digits, or if its value is > 65535.
24651         (getnameinfo): Remove useless casts.
24652
24653 2006-06-27  Simon Josefsson  <jas@extundo.com>
24654
24655         * modules/sys_select: New file, suggested by Bruno Haible, Paul
24656         Eggert and Martin Lambers.
24657
24658 2006-06-27  Simon Josefsson  <jas@extundo.com>
24659
24660         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
24661         Eggert and Martin Lambers.
24662
24663 2006-06-27  Bruno Haible  <bruno@clisp.org>
24664
24665         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
24666         result to 0, not to empty.
24667         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
24668
24669 2006-06-27  Bruno Haible  <bruno@clisp.org>
24670
24671         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
24672
24673 2006-06-26  Simon Josefsson  <jas@extundo.com>
24674
24675         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
24676         present.
24677
24678 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
24679
24680         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
24681         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
24682         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
24683
24684 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
24685
24686         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
24687
24688 2006-06-26  Bruno Haible  <bruno@clisp.org>
24689
24690         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
24691
24692 2006-06-26  Bruno Haible  <bruno@clisp.org>
24693
24694         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
24695
24696 2006-06-26  Bruno Haible  <bruno@clisp.org>
24697
24698         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
24699         SGI C compiler in pre-C99 mode.
24700         Suggested by Mark D. Baushke and Larry Jones.
24701
24702 2006-06-26  Bruno Haible  <bruno@clisp.org>
24703
24704         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
24705         WCHAR_MAX.
24706         Reported by Mark D. Baushke and Larry Jones.
24707
24708 2006-06-26  Bruno Haible  <bruno@clisp.org>
24709
24710         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
24711         in pre-C99 mode.
24712         Suggested by Mark D. Baushke and Larry Jones.
24713
24714 2006-06-23  Simon Josefsson  <jas@extundo.com>
24715             Bruno Haible  <bruno@clisp.org>
24716
24717         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
24718         Emit mostlyclean-local rule.
24719         (func_emit_tests_Makefile_am): Likewise.
24720         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
24721
24722 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
24723
24724         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
24725
24726 2006-06-23  Bruno Haible  <bruno@clisp.org>
24727
24728         * tests/test-stdint.c: Update to match ISO C 99 Technical
24729         Corrigendum 1.
24730
24731 2006-06-23  Bruno Haible  <bruno@clisp.org>
24732
24733         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
24734
24735 2006-06-23  Bruno Haible  <bruno@clisp.org>
24736
24737         * lib/stdint_.h: Treat IRIX like OpenBSD.
24738
24739 2006-06-23  Bruno Haible  <bruno@clisp.org>
24740
24741         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
24742         ISO C 99 Technical Corrigendum 1.
24743
24744 2006-06-22  Simon Josefsson  <jas@extundo.com>
24745
24746         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
24747         MinGW.
24748
24749 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24750
24751         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
24752         needed.  Some compiler complained about some of them.  Problem reported
24753         by Larry Jones in
24754         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
24755
24756 2006-06-21  Simon Josefsson  <jas@extundo.com>
24757
24758         * tests/test-getaddrinfo.c: New file.
24759
24760         * modules/getaddrinfo-tests: New file.
24761
24762         * MODULES.html.sh: Add inet_pton.
24763
24764         * modules/inet_pton: New file.
24765
24766 2006-06-21  Simon Josefsson  <jas@extundo.com>
24767
24768         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
24769         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
24770         of using the (limited) gnulib implementation on Windows XP.
24771
24772         * m4/inet_pton.m4: New file.
24773
24774 2006-06-21  Simon Josefsson  <jas@extundo.com>
24775
24776         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
24777         variable.
24778
24779         * lib/socket_.h: Don't define WINVER.
24780
24781         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
24782         slightly modified to work in gnulib.
24783
24784 2006-06-21  Simon Josefsson  <jas@extundo.com>
24785
24786         * doc/gnulib.texi (Windows sockets): Add.
24787
24788 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
24789
24790         * lib/read-file.c (fread_file): Start with buffer allocation of
24791         0 bytes rather than 1 byte; this simplifies the code.
24792         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
24793         code to free buffer and save/restore errno.
24794         (internal_read_file): Remove unused local.
24795
24796 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
24797
24798         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
24799         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
24800         Problem reported by Denis Excoffier in
24801         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
24802
24803 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24804
24805         * modules/sys_socket, modules/socklen: Include sys/types since
24806         FreeBSD 4.x's sys/socket.h needs it.
24807
24808 2006-06-19  Simon Josefsson  <jas@extundo.com>
24809
24810         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
24811
24812 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
24813
24814         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
24815
24816 2006-06-19  Bruno Haible  <bruno@clisp.org>
24817
24818         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
24819         and FULL_PATH_INTTYPES_H in angle brackets.
24820         Reported by Mark D. Baushke <mdb@gnu.org>.
24821
24822 2006-06-17  Eric Blake  <ebb9@byu.net>
24823
24824         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
24825         errno.
24826
24827 2006-06-17  Bruno Haible  <bruno@clisp.org>
24828
24829         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
24830         <sys/inttypes.h>.
24831
24832 2006-06-17  Bruno Haible  <bruno@clisp.org>
24833
24834         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
24835         whether errno is declared. Assume <errno.h> declares errno.
24836
24837 2006-06-17  Bruno Haible  <bruno@clisp.org>
24838
24839         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
24840
24841 2006-06-17  Bruno Haible  <bruno@clisp.org>
24842
24843         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
24844         problem on Solaris 2.5.1.
24845
24846 2006-06-16  Eric Blake  <ebb9@byu.net>
24847
24848         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
24849         * lib/unicodeio.c [!defined errno]: Likewise.
24850         * lib/strtol.c [!defined errno]: Likewise.
24851         * lib/strtod.c [!defined errno]: Likewise.
24852
24853 2006-06-15  Eric Blake  <ebb9@byu.net>
24854
24855         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
24856
24857 2006-06-15  Eric Blake  <ebb9@byu.net>
24858
24859         * config/srclist.txt (ssize_t.m4): Lose sync.
24860
24861 2006-06-15  Bruno Haible  <bruno@clisp.org>
24862
24863         * modules/stdint (Files): Include m4/full-header-path.m4,
24864         m4/size_max.m4, m4/wchar_t.m4.
24865         (Makefile.am): Many more substitutions.
24866         * modules/stdint-tests: New file.
24867         * tests/test-stdint.c: New file.
24868
24869 2006-06-15  Bruno Haible  <bruno@clisp.org>
24870
24871         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
24872         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
24873         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
24874         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
24875         gl_CHECK_TYPE_SAME): New macros.
24876
24877 2006-06-15  Bruno Haible  <bruno@clisp.org>
24878
24879         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
24880
24881 2006-06-15  Bruno Haible  <bruno@clisp.org>
24882
24883         * lib/stdint_.h: Rewritten to be fully auto-configured.
24884         Fixes bug on HP-UX/IA64.
24885
24886 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
24887
24888         * lib/getdate.y (__attribute__): Don't define if already defined.
24889         Problem reported by Larry Jones.
24890         * lib/utimens.c (__attribute__): Likewise.
24891
24892 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
24893
24894         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
24895         reported by Andreas Schwab.
24896
24897 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24898             Bruno Haible  <bruno@clisp.org>
24899
24900         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
24901         check for the declaration of strnlen and a run test that exposes the
24902         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
24903         rpl_strndup.
24904
24905 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24906             Bruno Haible  <bruno@clisp.org>
24907
24908         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
24909
24910 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24911
24912         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
24913         compile test, for Tru64 4.0D.
24914
24915 2006-05-28  Karl Berry  <karl@gnu.org>
24916
24917         * config/srclist.txt (printf-args.c): lose sync.
24918
24919 2006-05-26  Martin Lambers  <marlam@marlam.de>
24920
24921         * lib/getpass.c: Updates the test for the native W32 API, and adds
24922         missing includes, thus fixing compilation warnings.
24923
24924 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
24925
24926         * lib/exclude.c (exclude_fnmatch): New function.
24927         (excluded_file_name): Call exclude_fnmatch.
24928         * lib/exclude.h (excluded_file_name): New prototype
24929
24930 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
24931
24932         * lib/tempname.c (small_open, large_open): New macros.
24933         (__open, __open64) [!_LIBC]: Remove.
24934         (__gen_tempname): Use small_open and large_open instead of __open
24935         and __open64.  This fixes a portability bug on HP-UX 11.11i
24936         reported by Simon Wing-Tang in
24937         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
24938
24939 2006-05-24  Bruno Haible  <bruno@clisp.org>
24940
24941         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
24942         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
24943         Reported by Thorsten Maerz <torte@netztorte.de> via
24944         Aaron Stone <aaron@serendipity.cx>.
24945
24946 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24947
24948         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
24949         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
24950         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
24951         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
24952         not really conditional on the cache.
24953         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
24954
24955 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24956
24957         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
24958         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
24959         (my_usleep): Don't mishandle maximum value.
24960
24961 2006-05-19  Jim Meyering  <jim@meyering.net>
24962
24963         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
24964
24965 2006-05-17  Bruno Haible  <bruno@clisp.org>
24966
24967         Cygwin portability.
24968         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
24969
24970 2006-05-17  Bruno Haible  <bruno@clisp.org>
24971
24972         * lib/stdint_.h: Fix recognition of Cygwin.
24973
24974 2006-05-15  Bruno Haible  <bruno@clisp.org>
24975
24976         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
24977         on libtool patch by Ralf Wildenhues.
24978
24979 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24980
24981         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
24982         test for C99 conformance; (bool) 0.5 is an integer constant
24983         expression, but (bool) -0.5 is not.  Problem reported by Fedor
24984         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
24985
24986 2006-05-11  Simon Josefsson  <jas@extundo.com>
24987
24988         * m4/xvasprintf.m4: Fix obvious typo.
24989
24990 2006-05-11  Jim Meyering  <jim@meyering.net>
24991
24992         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
24993         James Lemley.
24994
24995 2006-05-10  Simon Josefsson  <jas@extundo.com>
24996
24997         * lib/md4.c: Typo fix, update copyright years.
24998         (K1, K2): Don't use L because it turn computations into 64-bit on
24999         64-bit platforms.
25000
25001 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
25002
25003         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
25004         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
25005         unwanted sign propagation, e.g., on hosts with 64-bit int.
25006         There still are some problems with reeelly weird theoretical hosts
25007         (e.g., 33-bit int) but it's not worth worrying about now.
25008         * lib/sha1.c (rol): Likewise.
25009         (K1, K2, K3, K4): Remove unnecessary L suffix.
25010
25011 2006-05-10  Bruno Haible  <bruno@clisp.org>
25012
25013         * lib/des.c: Cast to avoid warnings.
25014
25015 2006-05-09  Bruno Haible  <bruno@clisp.org>
25016
25017         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
25018         (Depends-on): Depend also on xsize, stdarg.
25019         (configure.ac): Add gl_XVASPRINTF.
25020
25021 2006-05-09  Bruno Haible  <bruno@clisp.org>
25022
25023         * m4/xvasprintf.m4: New file.
25024
25025 2006-05-09  Bruno Haible  <bruno@clisp.org>
25026
25027         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
25028         (EOVERFLOW): Define fallback value.
25029         (xstrcat): New function.
25030         (xvasprintf): Recognize the special case of a string concatenation.
25031
25032 2006-05-08  Eric Blake  <ebb9@byu.net>
25033
25034         * gnulib-tool (func_version): Base copyright year on CVS date.
25035         (func_emit_copyright_notice): New function.
25036         (func_emit_lib_Makefile_am): Use it.
25037         (func_emit_tests_Makefile_am): Likewise.
25038         (func_import): Likewise.
25039
25040 2006-05-08  Bruno Haible  <bruno@clisp.org>
25041
25042         * modules/stdarg: New file.
25043         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
25044
25045 2006-05-08  Bruno Haible  <bruno@clisp.org>
25046
25047         * m4/stdarg.m4: New file, from GNU gettext.
25048
25049 2006-05-08  Bruno Haible  <bruno@clisp.org>
25050
25051         * config/srclist.txt (build-aux/config.rpath): different from latest
25052         release.
25053
25054 2006-05-08  Bruno Haible  <bruno@clisp.org>
25055
25056         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
25057
25058 2006-05-05  Jim Meyering  <jim@meyering.net>
25059
25060         * m4/warning.m4: New file, derived from bison's file by the same name.
25061
25062 2006-05-03  Bruno Haible  <bruno@clisp.org>
25063
25064         * lib/stdint_.h: Shorter URL.
25065         * lib/inttypes.h: Likewise.
25066
25067 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25068
25069         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
25070
25071 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25072
25073         * lib/verify.h: Document the internals better.  Most of this change
25074         was written by Bruno Haible.
25075
25076 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
25077
25078         * doc/verify.texi: New file, partly based on a proposal by
25079         Bruno Haible.
25080
25081 2006-05-02  Bruno Haible  <bruno@clisp.org>
25082
25083         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
25084         test from here...
25085         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
25086
25087 2006-04-29  Bruno Haible  <bruno@clisp.org>
25088
25089         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
25090         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
25091
25092 2006-04-29  Bruno Haible  <bruno@clisp.org>
25093
25094         * gnulib-tool: Make --update option actually work.
25095
25096 2006-04-29  Bruno Haible  <bruno@clisp.org>
25097
25098         * doc/gcd.texi: New file.
25099         * doc/gnulib.texi: Include it.
25100
25101 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
25102
25103         * lib/getdate.y (get_date): When adding relative date, start with the
25104         initial time, not with the result of the first mktime call.
25105
25106 2006-04-25  Bruno Haible  <bruno@clisp.org>
25107
25108         * gnulib-tool (func_import): Output the include directives in three
25109         blocks, sorted separately.
25110         Reported by Ben Pfaff <blp@cs.stanford.edu>.
25111
25112 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
25113
25114         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
25115         to define main with arguments, for C++.  Reported by Eric Blake.
25116         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
25117         Prefer 'int main ()' to 'int main (void)', for C++.
25118         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
25119         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
25120         for 'main', for C99 and C++.
25121
25122 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
25123
25124         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
25125         Don't assume that exit status -1 is valid.
25126         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
25127         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
25128         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
25129         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
25130         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
25131         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
25132         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
25133         functions can be used without declaring them, or that you can
25134         exit with status -1.
25135         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
25136
25137 2006-04-24  Karl Berry  <karl@gnu.org>
25138
25139         * config/srclist.txt (longdouble.m4): sync lost.
25140
25141 2006-04-24  Eric Blake  <ebb9@byu.net>
25142
25143         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
25144
25145 2006-04-24  Bruno Haible  <bruno@clisp.org>
25146
25147         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
25148         poll() implementation in AIX.
25149         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25150
25151 2006-04-24  Bruno Haible  <bruno@clisp.org>
25152
25153         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
25154         assigned exactly once.
25155
25156 2006-04-23  Claudio Fontana  <claudio@gnu.org>
25157             Bruno Haible  <bruno@clisp.org>
25158
25159         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
25160         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
25161         for AM_CPPFLAGS.
25162
25163 2006-04-23  Bruno Haible  <bruno@clisp.org>
25164
25165         * modules/copy-file: Depend on unistd.
25166         * modules/execute: Likewise.
25167         * modules/fatal-signal: Likewise.
25168         * modules/findprog: Likewise.
25169         * modules/mkdtemp : Likewise.
25170         * modules/pipe: Likewise.
25171         * modules/wait-process: Likewise.
25172
25173 2006-04-23  Bruno Haible  <bruno@clisp.org>
25174
25175         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
25176         condition was already detected.
25177         Reported by Ben Pfaff <blp@cs.stanford.edu>.
25178
25179 2006-04-23  Bruno Haible  <bruno@clisp.org>
25180
25181         * lib/copy-file.c: Include <unistd.h> unconditionally.
25182         * lib/execute.c: Likewise.
25183         * lib/fatal-signal.c: Likewise.
25184         * lib/findprog.c: Likewise.
25185         * lib/mkdtemp.c: Likewise.
25186         * lib/pipe.h: Likewise.
25187         * lib/pipe.c: Likewise.
25188         * lib/wait-process.h: Likewise.
25189
25190 2006-04-23  Bruno Haible  <bruno@clisp.org>
25191
25192         * gnulib-tool (func_usage): Fix --import description. Document
25193         --update.
25194         (func_import): Create temporary file in a temporary directory, if
25195         --dry-run is specified. Silence errors from 'grep' when there are no
25196         m4 files in $m4dir.
25197         (func_create_testdir): Silence errors from 'grep' when there are no
25198         m4 files in $m4dir.
25199         Reported by Karl Berry <karl@freefriends.org>.
25200
25201 2006-04-20  Bruno Haible  <bruno@clisp.org>
25202
25203         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
25204         one argument, so that the code will be portable to Autoconf 2.60.
25205         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
25206         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
25207         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
25208
25209 2006-04-19  Derek Price  <derek@ximbiot.com>
25210             Eric Blake  <ebb9@byu.net>
25211
25212         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
25213         rather than "/full/path.h".  Update comment to match.  Shorten &
25214         generalize m4_translit call via AS_TR_CPP.
25215
25216 2006-04-19  Derek Price  <derek@ximbiot.com>
25217             Eric Blake  <ebb9@byu.net>
25218
25219         * lib/inttypes.h: Correct grammar in comment.
25220
25221 2006-04-18  Derek Price  <derek@ximbiot.com>
25222             Paul Eggert  <eggert@cs.ucla.edu>
25223
25224         * modules/inttypes: New file.
25225         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
25226
25227 2006-04-18  Derek Price  <derek@ximbiot.com>
25228             Paul Eggert  <eggert@cs.ucla.edu>
25229
25230         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
25231         New files.
25232
25233 2006-04-18  Derek Price  <derek@ximbiot.com>
25234             Paul Eggert  <eggert@cs.ucla.edu>
25235
25236         * lib/inttypes.h: New file.
25237         * lib/strtoimax.c: Assume <inttypes.h>.
25238
25239 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
25240
25241         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
25242         isn't mounted.  Problem reported by Kir Kolyshkin.
25243
25244 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
25245
25246         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
25247         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
25248         Derek R. Price.
25249         * lib/regex.h (RE_DUP_MAX): Update comment to match current
25250         implementation.
25251
25252 2006-04-12  Eric Blake  <ebb9@byu.net>
25253
25254         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
25255         is now done automatically by the corresponding Autoconf macro.
25256
25257 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
25258
25259         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
25260         time_r.h.
25261
25262 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25263
25264         Merge regex changes from libc, removing some of our
25265         POSIX-conformance changes that were rejected and redoing them in a
25266         less-intrusive way.
25267
25268         * lib/regcomp.c (re_compile_internal, init_dfa):
25269         Length arg is now size_t, not Idx.  All uses changed.
25270         (peek_token): Forward decl now says internal_function.
25271         (__re_error_msgid, __re_error_msgid_idx):
25272         Now static rather than extern with attribute_hidden.
25273         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
25274         For some reason libc prefers K&R style defns for external functions.
25275         (regerror) [!defined _LIBC]: Likewise.
25276         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
25277         (seek_collating_symbol_entry, lookup_collation_sequence_value):
25278         (build_range_exp, build_collating_symbol):
25279         Use K&R-style defn.
25280         (re_compile_fastmap): Use '\0' to memset, not 0.
25281         (utf8_sb_map): Make the calculations more obvious.
25282         (init_dfa, parse_bracket_exp, build_charclass_op):
25283         Call calloc and cast result, as glibc does.
25284         (init_word_char, fetch_token, peek_token, peek_token_bracket):
25285         (build_range_exp, build_collating_symbol):
25286         Now internal functions.
25287
25288         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
25289
25290         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
25291         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
25292         Don't depend on VMS; depend on __VMS instead, for POSIX
25293         namespace cleanness.
25294         (regoff_t): Define to ssize_t, not long int.
25295
25296         Remove the REG_ macros named below.  Instead, make the old names
25297         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
25298         __USE_GNU_REGEX.
25299         (REG_BACKSLASH_ESCAPE_IN_LISTS):
25300         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
25301         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
25302         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
25303         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
25304         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
25305         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
25306         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
25307         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
25308         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
25309         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
25310         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
25311         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
25312         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
25313         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
25314         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
25315         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
25316         (REG_NREGS):
25317         Remove.  All uses replaced by the old RE_* names.
25318         (RE_BACKSLASH_ESCAPE_IN_LISTS):
25319         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
25320         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
25321         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
25322         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
25323         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
25324         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
25325         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
25326         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
25327         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
25328         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
25329         Don't bother having these macros be independent of each others'
25330         values, since they no longer exist in the POSIX name space.
25331
25332         Rename the following member names back to their old names,
25333         unless !__USE_GNU_REGEX.  All uses changed back.
25334         (buffer): Renamed from re_buffer.
25335         (allocated): Renamed from re_allocated.
25336         (used): Renamed from re_used.
25337         (syntax): Renamed from re_syntax.
25338         (fastmap): Renamed from re_fastmap.
25339         (translate): Renamed from re_translate.
25340         (can_be_null): Renamed from re_can_be_null.
25341         (regs_allocated): Renamed from re_regs_allocated.
25342         (fastmap_accurate): Renamed from re_fastmap_accurate.
25343         (no_sub): Renamed from re_no_sub.
25344         (not_bol): Renamed from re_not_bol.
25345         (not_eol): Renamed from re_not_eol.
25346         (newline_anchor): Renamed from re_newline_anchor.
25347         (num_regs): Renamed from rm_num_regs.
25348         (start): Renamed from rm_start.
25349         (end): Renamed from rm_end.
25350
25351         (free_state): Move up a bit.
25352
25353         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
25354         #define to be empty.
25355         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
25356         when that is what is intended.
25357         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
25358         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
25359         (MAX): New macro.
25360         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
25361         All uses changed back to re_malloc, etc.  It's now the caller's
25362         responsibility to check for overflow; all callers changed.
25363         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
25364         (re_x2nrealloc): Remove.
25365         (free_state): Remove decl.
25366
25367         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
25368         (re_set_registers, re_exec):
25369         Use K&R-style defn.
25370
25371         2006-01-31  Roland McGrath  <roland@redhat.com>
25372
25373         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
25374         Reported by Mike Frysinger <vapier@gentoo.org>.
25375
25376         2006-01-15  Andreas Jaeger  <aj@suse.de>
25377
25378         [BZ #1950]
25379         * lib/regex_internal.c (re_string_reconstruct): Adjust for
25380         build_wcs_upper_buffer change.
25381         (build_wcs_upper_buffer): Change return type.
25382
25383         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
25384
25385         * lib/regex_internal.h: Include <stdint.h> if available.
25386
25387         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
25388
25389         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
25390
25391         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
25392
25393         * lib/regcomp.c: Adjust for changed secondary hash function.
25394
25395         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
25396
25397         * lib/regex.h: Pretty printing.
25398         Clean up namespace a bit.
25399
25400         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
25401
25402         * lib/regexec.c (update_cur_sifted_state, check_arrival,
25403         check_arrival_add_next_nodes): Avoid using uninitialized variable.
25404
25405         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
25406                     Ulrich Drepper  <drepper@redhat.com>
25407
25408         [BZ #1302]
25409         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
25410         changed.
25411         (bitset_word_t): Renamed from bitset_word.  All uses changed.
25412
25413         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
25414
25415         [BZ #281]
25416         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
25417         * lib/regcomp.c: Remove unnecessary uses of
25418         unsigned RE_TRANSLATE_TYPE.
25419         * lib/regex_internal.h: Likewise.
25420         * lib/regex_internal.c: Likewise.
25421         * lib/regexec.c: Likewise.
25422         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
25423
25424         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
25425
25426         * lib/regexec.c (find_recover_state): Remove unnecessary
25427         initialization.
25428         (transit_state_bkref): Make DFA a const pointer.
25429         (get_subexp): Likewise.
25430         (check_arrival): Likewise.
25431         (update_cur_sifted_state): Likewise.
25432         (re_search_internal): Likewise.
25433         (prune_impossible_nodes): Likewise.
25434         (acquire_init_state_context): Likewise.
25435         (proceed_next_node): Likewise.
25436         (set_regs): Likewise.
25437         (free_fail_stack_return): Likewise.
25438         (check_arrival_expand_ecl): Mark DFA parameter as const.
25439         (check_arrival_expand_ecl_sub): Likewise.
25440         (check_subexp_limits): Likewise.
25441         (sub_epsilon_src_nodes):  Likewise.
25442         (add_epsilon_src_nodes):  Likewise.
25443         (merge_state_array): Likewise.
25444         (update_regs): Likewise.
25445         (build_trtable): Likewise.
25446         (sift_states_backward): Mark MCTX parameter as const.
25447         (build_sifted_states): Likewise.
25448         (update_cur_sifted_state): Likewise.
25449         (sift_states_mkref): Likewise.
25450         (check_arrival_expand_ecl): Mark eclosure as const.
25451         (check_dst_limits_calc_pos_1): Likewise.
25452         * lib/regex_internal.h (re_match_context_t): Make dfa a const
25453         pointer.
25454
25455         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
25456
25457         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
25458         (transit_state_sb): Likewise.
25459         (transit_state_mb): Likewise.
25460         (sift_states_iter_mb): Likewise.
25461         (check_arrival_add_next_nodes): Likewise.
25462         (check_node_accept_bytes): Change first parameter to pointer-to-const.
25463         [_LIBC] (re_search_2_stub): Use mempcpy.
25464
25465         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
25466         mbrtowc for very simple UTF-8 case.
25467
25468         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
25469         a pointer-to-const.
25470         (re_acquire_state_context): Likewise.
25471         * lib/regex_internal.h: Adjust prototypes.
25472
25473         * lib/regex.c: Prevent using C++ compilers.
25474
25475         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
25476         (re_acquire_state_context): Likewise.
25477
25478 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25479
25480         * modules/regex (Depends-on): Add ssize_t.
25481
25482 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25483
25484         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
25485         translation table.
25486
25487 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
25488
25489         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
25490
25491 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
25492             Bruno Haible  <bruno@clisp.org>
25493
25494         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
25495         <sys/types.h> and <inttypes.h>.
25496
25497 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25498
25499         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
25500         `__error_t_defined', so argp.h will not typedef the former.
25501
25502 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
25503
25504         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
25505         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
25506         glibc names.  Even if glibc is changed to conform to POSIX, the
25507         traditional names will be available anyway, since regex depends on
25508         the extensions module.  Also, fix a longstanding typo in the
25509         implementation of Spencer ERE test #75 from grep 2.3.  Problems
25510         reported by Emanuele Giaquinta.  Also, change sense of cached
25511         variable, so that the message makes sense.
25512
25513 2006-03-24  Simon Josefsson  <jas@extundo.com>
25514
25515         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
25516         including some doc fixes.
25517         (base64_encode_alloc): Fix +1 bug on allocation failures.
25518
25519 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25520
25521         * lib/base64.c (base64_encode): Do not read past end of array with
25522         unsanitized input on systems with CHAR_BIT > 8.
25523
25524 2006-03-24  Eric Blake  <ebb9@byu.net>
25525
25526         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
25527
25528 2006-03-22  Karl Berry  <karl@gnu.org>
25529
25530         * config/srclist.txt (*setenv.[ch]): get from coreutils.
25531         * config/srclistvars.sh (COREUTILS): new var.
25532
25533 2006-03-17  Jim Meyering  <jim@meyering.net>
25534
25535         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
25536         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
25537
25538 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
25539
25540         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
25541         no longer needs it.  Instead, check that regoff_t is as least
25542         as wide as ptrdiff_t.
25543
25544         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
25545         so that our regex.h stays compatible with the installed regex.
25546         This is helpful for installers who configure --without-included-regex.
25547         Problem reported by Emanuele Giaquinta.
25548
25549 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
25550
25551         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
25552         Typedef to long int, not to off_, as POSIX will likely change
25553         in that direction.
25554
25555 2006-03-15  Eric Blake  <ebb9@byu.net>
25556
25557         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
25558
25559 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
25560
25561         * lib/argp-help.c (validate_uparams): Fix typo
25562         * lib/argp-parse.c (argp_default_options): Consistently begin help
25563         messages with a lowercase letter.
25564
25565 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
25566
25567         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
25568         overrun buffers and shouldn't be used (much as gets shouldn't be
25569         used).
25570         * lib/time_r.c (asctime_r, ctime_r): Likewise.
25571
25572 2006-03-08  Simon Josefsson  <jas@extundo.com>
25573
25574         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
25575         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25576
25577 2006-03-08  Simon Josefsson  <jas@extundo.com>
25578
25579         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
25580         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25581
25582 2006-03-08  Simon Josefsson  <jas@extundo.com>
25583
25584         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
25585         signal that configure disabled the device.
25586
25587 2006-03-08  Simon Josefsson  <jas@extundo.com>
25588
25589         * build-aux/maint.mk: Fix refresh-po, to handle no translated
25590         languages.
25591
25592 2006-03-07  Simon Josefsson  <jas@extundo.com>
25593
25594         * modules/getopt (Depends-on): Add unistd.
25595
25596         * modules/unistd: New file.
25597
25598 2006-03-07  Simon Josefsson  <jas@extundo.com>
25599
25600         * modules/gc-random: New file.
25601
25602 2006-03-07  Simon Josefsson  <jas@extundo.com>
25603
25604         * m4/unistd_h.m4: New file.
25605
25606 2006-03-07  Simon Josefsson  <jas@extundo.com>
25607
25608         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
25609         test to be side-effect free by storing the result in the cache
25610         variable gl_cv_lib_readline, and moving the assignment of
25611         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
25612         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25613
25614 2006-03-07  Simon Josefsson  <jas@extundo.com>
25615
25616         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
25617         error on missing devices (the functions will return an error).
25618
25619         * m4/gc.m4: Move random stuff to gc-random.m4
25620
25621 2006-03-07  Simon Josefsson  <jas@extundo.com>
25622
25623         * lib/unistd_.h: New file.
25624
25625 2006-03-07  Simon Josefsson  <jas@extundo.com>
25626
25627         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
25628
25629 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25630
25631         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
25632         Problem reported by Juan Manuel Guerrero.
25633
25634 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25635
25636         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
25637         the unistd module.
25638         * lib/getlogin_r.c: Likewise.
25639         * lib/getlogin_r.h: Likewise.
25640         * lib/glob.c: Likewise.
25641         * lib/pagealign_alloc.c: Likewise.
25642         * lib/unistd_.h: Remove; no longer needed.
25643
25644 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
25645
25646         * MODULES.html.sh (Support for systems lacking POSIX:2001):
25647         Add unistd.
25648         * modules/c-stack (Depends-on): Add unistd.
25649         * modules/getlogin_r: Likewise.
25650         * modules/glob: Likewise.
25651         * modules/pagealign_alloc: Likewise.
25652         * modules/unistd (Files): Remove lib/unistd_.h.
25653         (EXTRA_DIST): Remove.
25654         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
25655         need unistd_.h.
25656         (MOSTLYCLEANFILES): Remove unistd.h-t.
25657
25658 2006-03-03  Simon Josefsson  <jas@extundo.com>
25659
25660         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
25661
25662 2006-03-03  Simon Josefsson  <jas@extundo.com>
25663
25664         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
25665         libidn and bison.
25666
25667 2006-03-03  Simon Josefsson  <jas@extundo.com>
25668
25669         * build-aux/maint.mk: Add indent target.
25670
25671 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
25672
25673         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
25674         our replacement poll.h in any case, to avoid a differing
25675         declaration from a system header.  Seen on AIX.
25676
25677 2006-03-01  Simon Josefsson  <jas@extundo.com>
25678
25679         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
25680         <kasal@ucw.cz>.
25681
25682 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25683
25684         * modules/gettime (Depends-on): Add extensions module.
25685         * modules/nanosleep (Depends-on): Likewise.
25686         * modules/settime (Depends-on): Likewise.
25687
25688 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25689
25690         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
25691         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
25692         pedantically.
25693         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
25694         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
25695
25696         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
25697         not "==".  Reported by Ralf Wildenhues.
25698
25699 2006-03-01  Karl Berry  <karl@gnu.org>
25700
25701         * doc/Copyright/request-*: new files, synced from gnuorg.
25702
25703 2006-03-01  Karl Berry  <karl@gnu.org>
25704
25705         * config/srclist.txt (Copyright/*): new entries.
25706
25707 2006-02-28  Simon Josefsson  <jas@extundo.com>
25708
25709         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
25710
25711 2006-02-27  Simon Josefsson  <jas@extundo.com>
25712
25713         * lib/base64.h: Indent #define's.  From Jim Meyering
25714         <jim@meyering.net>.
25715
25716 2006-02-27  Jim Meyering  <jim@meyering.net>
25717
25718         Revert the change of 2006-02-24, so these files can continue
25719         to be sync'd from gettext.
25720         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
25721         of `config.h'.
25722
25723 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
25724
25725         * modules/intprops: New file.
25726         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
25727         Add intprops.
25728         * modules/getloadavg (Files): Remove lib/intprops.h.
25729         (Depends-on): Add intprops.
25730         * modules/human: Likewise.
25731         * modules/inttostr: Likewise.
25732         * modules/openat: Likewise.
25733         * modules/sig2str: Likewise.
25734         * modules/userspec: Likewise.
25735         * modules/utimecmp: Likewise.
25736         * modules/xnanosleep: Likewise.
25737         * modules/xstrtol: Likewise.
25738
25739 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
25740
25741         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
25742         * modules/lock-tests (TESTS): Use $(EXEEXT).
25743         * modules/tls-tests: Likewise.
25744         * modules/argp-tests: Likewise.
25745         (check_PROGRAMS): New var, replacing...
25746         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
25747
25748 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25749
25750         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
25751         `config.h'.
25752
25753 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
25754
25755         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
25756
25757 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25758
25759         Sync from coreutils.
25760         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
25761         gl_CHDIR_SAFER.
25762
25763 2006-02-22  Jim Meyering  <jim@meyering.net>
25764
25765         Sync from coreutils.
25766         * m4/chdir-safer.m4: New file.
25767
25768 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
25769
25770         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
25771         AT_FDCWD exceeds INT_MAX.
25772         * lib/openat.h (AT_FDCWD): Likewise.
25773
25774 2006-02-17  Eric Blake  <address@hidden>
25775
25776         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
25777
25778 2006-02-16  Simon Josefsson  <jas@extundo.com>
25779
25780         * modules/getaddrinfo (Depends-on): Add sys_socket.
25781
25782 2006-02-15  Simon Josefsson  <jas@extundo.com>
25783
25784         * build-aux/maint.mk: Add dsyntax-check rule.
25785
25786 2006-02-15  Eric Blake  <ebb9@byu.net>
25787
25788         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
25789         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
25790         'present but cannot compile' warnings on cygwin.
25791         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
25792         use ws2tcpip.h if sys/socket.h works.
25793         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
25794         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
25795
25796 2006-02-14  Simon Josefsson  <jas@extundo.com>
25797
25798         * modules/maintainer-makefile (Files): Rename.
25799
25800         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
25801         and (the local) Makefile.cfg to maint-cfg.mk.
25802
25803         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
25804         to the latter.
25805
25806         * modules/maintainer-makefile: New module.
25807
25808         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
25809         severaly stripped to make it possible to build it up from scratch
25810         with reliable tests.
25811
25812         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
25813         fixes to permit overriding the default actions when configure and
25814         makefile are not available.
25815
25816 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
25817
25818         Sync from coreutils.
25819         * modules/lstat (Depends-on): Don't depend on xalloc.
25820         (License): Change from GPL to LGPL, since this is now simply a
25821         replacement for a libc function.
25822
25823 2006-02-14  Jim Meyering  <jim@meyering.net>
25824
25825         Sync from coreutils.
25826
25827         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
25828         failure on deficient systems, and simplify gnulib lgpl dependencies.
25829         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
25830         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
25831
25832         * lib/xalloc-die.c: Remove unused definition of N_.
25833
25834 2006-02-14  Jim Meyering  <jim@meyering.net>
25835
25836         Sync from coreutils.
25837         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
25838         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
25839         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
25840         double-quote uses of that variable, to accommodate the rare case in
25841         which getmntent is available in none of the libraries checked.  This
25842         happens at least on FreeBSD 5.0.
25843
25844 2006-02-13  Simon Josefsson  <jas@extundo.com>
25845
25846         * gnulib-tool (Usage): Fix --import, from
25847         karl@freefriends.org (Karl Berry).
25848
25849 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
25850
25851         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
25852
25853 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
25854
25855         * lib/argp-namefrob.h: Restore changes accidentally lost during the
25856         "autoupdate" on 2005-12-12.
25857
25858 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
25859
25860         * modules/closeout (Depends-on): Remove atexit.
25861
25862 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
25863
25864         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
25865         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
25866
25867 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
25868
25869         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
25870         __EXTENSIONS__ if this causes compilation to fail.  Problem
25871         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
25872         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
25873
25874 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
25875
25876         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
25877         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
25878         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
25879         All uses changed.
25880
25881 2006-01-26  Simon Josefsson  <jas@extundo.com>
25882
25883         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
25884         prototype is visible on mingw32.
25885
25886         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
25887         for mingw32.
25888
25889         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
25890         mingw32).
25891
25892 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
25893
25894         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
25895         attempt to open for write; this always fails, at least on POSIX
25896         hosts.  This reinstates the 2006-01-09 change, which was
25897         inadvertently removed.
25898
25899 2006-01-26  Bruno Haible  <bruno@clisp.org>
25900
25901         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
25902         Reported by Paul Eggert.
25903
25904 2006-01-26  Bruno Haible  <bruno@clisp.org>
25905             Paul Eggert  <eggert@cs.ucla.edu>
25906
25907         * lib/stdbool_.h (_Bool)
25908         [(! (defined __cplusplus || defined __BEOS__)
25909           && !defined __GNUC__
25910           && !(defined __HP_cc || defined __xlc__
25911                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
25912                || defined __sgi))]:
25913         #define to signed char in these cases too; this simplifies
25914         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
25915         etc., separately) and makes it more conservative.
25916
25917 2006-01-25  Simon Josefsson  <jas@extundo.com>
25918
25919         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
25920         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
25921         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
25922
25923 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
25924
25925         * lib/argp-namefrob.h: Bugfix. Remove stray #
25926
25927 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
25928
25929         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
25930         so that we test the test.
25931         Check for yet another HP-UX cc bug involving *bool |= bool.
25932
25933 2006-01-25  Karl Berry  <karl@gnu.org>
25934
25935         * config/srclist.txt (vasnprintf.c): sync lost.
25936
25937 2006-01-25  Jim Meyering  <jim@meyering.net>
25938
25939         Sync from the stable (b5) branch of coreutils:
25940
25941         * lib/fts.c (fts_children): Don't let close() clobber errno from
25942         failed fchdir().
25943
25944         * lib/fts.c (fts_stat): When following a symlink-to-directory,
25945         don't necessarily interpret stat-fails+lstat-succeeds as indicating
25946         a dangling symlink.  That can also happen at least for ELOOP.
25947         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
25948         FYI, this bug predates the inclusion of fts.c in coreutils.
25949
25950         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
25951         in their own block, so pre-c99 compilers don't object.
25952
25953         Avoid the double-free (first in fts_read, second in fts_close) that
25954         would occur when an `active' directory is made inaccessible (e.g.,
25955         via chmod a-x) during a traversal.
25956         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
25957         before returning.  Reproduce this failure by
25958         mkdir -p a/b; cd a; chmod a-x . b
25959         Reported by Stavros Passas.
25960
25961 2006-01-25  Jim Meyering  <jim@meyering.net>
25962
25963         * lib/fileblocks.c: Remove more useless parentheses.
25964         * lib/readutmp.h: Likewise.
25965
25966 2006-01-25  Bruno Haible  <bruno@clisp.org>
25967
25968         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
25969         warnings.
25970         Reported by Paul Eggert.
25971
25972 2006-01-25  Bruno Haible  <bruno@clisp.org>
25973
25974         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
25975         rid of a trap command. For Solaris sh.
25976         Reported by Mark D. Baushke <mdb@gnu.org>.
25977
25978 2006-01-24  Simon Josefsson  <jas@extundo.com>
25979
25980         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
25981         Bruno.
25982
25983 2006-01-24  Karl Berry  <karl@gnu.org>
25984
25985         * config/srclist.txt (argp-namefrob.h): sync lost.
25986
25987 2006-01-24  Jim Meyering  <jim@meyering.net>
25988
25989         * modules/openat (Files): Add lib/intprops.h.
25990         From Mark D. Baushke.
25991
25992 2006-01-24  Jim Meyering  <jim@meyering.net>
25993
25994         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
25995         Reported by Mark D. Baushke.
25996
25997 2006-01-24  Jim Meyering  <jim@meyering.net>
25998
25999         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
26000
26001 2006-01-24  Bruno Haible  <bruno@clisp.org>
26002
26003         * modules/strnlen (Maintainer): Change from glibc to all.
26004
26005 2006-01-24  Bruno Haible  <bruno@clisp.org>
26006
26007         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
26008         Patch by Paul Eggert.
26009
26010 2006-01-24  Bruno Haible  <bruno@clisp.org>
26011
26012         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
26013         already has it.
26014         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
26015         2005-11-26.
26016
26017         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
26018         'signed char' to avoid problems with the built-in _Bool type.
26019         Reported by Paul Eggert on 2005-11-26.
26020
26021 2006-01-24  Bruno Haible  <bruno@clisp.org>
26022
26023         * gnulib-tool (func_import): Avoid constructing complicated sed
26024         expressions inside backquote.
26025         Report and solution by Mark D. Baushke <mdb@gnu.org>.
26026
26027 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
26028
26029         These changes imported from libc.
26030         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
26031         test and two separate function calls.
26032         * lib/strndup.c (__strndup): Add libc_hidden_def.
26033
26034 2006-01-23  Simon Josefsson  <jas@extundo.com>
26035
26036         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
26037         Remove the test_*_SOURCES variable: automake infers it by default.
26038         * modules/tls-tests: Likewise.
26039
26040 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26041
26042         Work around porting bugs reported by Dieter in
26043         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
26044         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
26045         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
26046         Include "getopt.h" first, to check interface.
26047         (getenv): Declare only if defined HAVE_DECL_GETENV &&
26048         !HAVE_DECL_GETENV.
26049         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
26050         (__strndup): Revert to K&R-style function dfns, the glibc style.
26051         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
26052         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
26053         Include strnlen.h first, to get prototype properly.
26054         (strnlen): Renamed from __strnlen.
26055         Remove weak alias.
26056
26057 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26058
26059         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
26060
26061 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26062
26063         * config/srclist.txt: Adjust to reflect glibc reorganization.
26064         This affects only comments.
26065
26066 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
26067
26068          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
26069          Reported by Bruce Korb <bkorb@gnu.org>.
26070
26071 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
26072
26073         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
26074         to pacify gcc -Wswitch-default.
26075
26076 2006-01-22  Bruno Haible  <bruno@clisp.org>
26077
26078         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
26079         temporary buffer for sprintf, take into account the precision also
26080         for 'd', 'i', 'u', 'o', 'x', 'X'.
26081
26082 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
26083
26084         * modules/argp-tests: New module
26085         * tests/test-argp.c: New file
26086         * tests/test-argp-2.sh: New file
26087
26088 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
26089
26090         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
26091         (__argp_base_name): Removed
26092         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
26093         typo.
26094         (__argp_base_name): Provide macro definition or extern declaration
26095         depending on the configuration
26096
26097 2006-01-20  Simon Josefsson  <jas@extundo.com>
26098
26099         * modules/inet_ntop (Depends-on): Depend on sys_socket.
26100
26101 2006-01-20  Simon Josefsson  <jas@extundo.com>
26102
26103         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
26104
26105 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
26106
26107         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
26108         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
26109         Suggested by Bruno Haible.
26110
26111 2006-01-20  Karl Berry  <karl@gnu.org>
26112
26113         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
26114         until changes propagate, I guess.
26115
26116 2006-01-19  Simon Josefsson  <jas@extundo.com>
26117
26118         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
26119
26120 2006-01-19  Simon Josefsson  <jas@extundo.com>
26121
26122         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
26123
26124 2006-01-19  Simon Josefsson  <jas@extundo.com>
26125
26126         * gnulib-tool: Set check_PROGRAMS.
26127
26128         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
26129         modules/des-tests, modules/gc-arcfour-tests,
26130         modules/gc-arctwo-tests, modules/gc-des-tests,
26131         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
26132         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
26133         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
26134         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
26135         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
26136         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
26137         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
26138         test_*_SOURCES.
26139
26140 2006-01-18  Simon Josefsson  <jas@extundo.com>
26141
26142         * modules/socklen (Depends-on): Depend on sys_socket.
26143
26144 2006-01-18  Simon Josefsson  <jas@extundo.com>
26145
26146         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
26147         modules/des-tests, modules/gc-arcfour-tests,
26148         modules/gc-arctwo-tests, modules/gc-des-tests,
26149         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
26150         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
26151         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
26152         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
26153         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
26154         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
26155         $(EXEEXT) to automake TESTS variable, for mingw32.
26156
26157 2006-01-17  Simon Josefsson  <jas@extundo.com>
26158
26159         * modules/socklen (Include): Need sys/socket.h.
26160
26161 2006-01-17  Bruno Haible  <bruno@clisp.org>
26162
26163         * modules/ssize_t (Include): Add <sys/types.h>.
26164
26165 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
26166
26167         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
26168         it's not portable and it doesn't work with cross-compiles.
26169         Problem reported by Bruno Haible.  Fix missing-$ typo in
26170         'test "gl_cv_ignore_unused_libraries" ...' that prevented
26171         -zignore from being used with Sun's C compiler.
26172
26173 2006-01-12  Simon Josefsson  <jas@extundo.com>
26174
26175         * lib/base64.c: Fix warning, reported by Bruno Haible
26176         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
26177
26178 2006-01-12  Bruno Haible  <bruno@clisp.org>
26179
26180         * modules/ldd: New file.
26181         * build-aux/ldd.sh.in: New file.
26182         * MODULES.html.sh (Support for building libraries and executables): Add
26183         ldd.
26184
26185 2006-01-12  Bruno Haible  <bruno@clisp.org>
26186
26187         * m4/ldd.m4: New file.
26188
26189 2006-01-12  Bruno Haible  <bruno@clisp.org>
26190
26191         * gnulib-tool (func_import, func_create_testdir): Don't go into an
26192         endless loop while replacing $auxdir with build-aux.
26193
26194 2006-01-11  Simon Josefsson  <jas@extundo.com>
26195
26196         * lib/stdint_.h (SIZE_MAX): Add missing (.
26197
26198 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
26199
26200         Sync from coreutils.
26201         * lib/md5.c: Fix commentary typos.
26202         (alignof, UNALIGNED_P): No need for a GCC-specific version.
26203         * lib/md5.h (__attribute__): Remove; unused.
26204         * lib/sha1.c: Fix commentary to match md5 better.
26205         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
26206         so that we don't need to worry about alignment.  All uses changed.
26207         This merges the 2005-10-28 md5 change into sha1.
26208
26209 2006-01-11  Jim Meyering  <jim@meyering.net>
26210
26211         Sync from coreutils.
26212         * lib/md5.c (OP): Fix spacing.
26213
26214 2006-01-11  Bruno Haible  <bruno@clisp.org>
26215
26216         Ensure automatic ordering between gl_LOCK and gl_ARGP.
26217         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
26218         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
26219
26220 2006-01-11  Bruno Haible  <bruno@clisp.org>
26221
26222         Ensure automatic ordering between gl_LOCK and gl_ARGP.
26223         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
26224         the "early" section as well.
26225
26226 2006-01-11  Bruno Haible  <bruno@clisp.org>
26227
26228         Avoid "ar: no archive members specified" error on MacOS X.
26229         * gnulib-tool (func_modules_add_dummy): New function.
26230         (func_import, func_create_testdir): Invoke it.
26231
26232 2006-01-11  Bruno Haible  <bruno@clisp.org>
26233
26234         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
26235         with $auxdir in AC_CONFIG_FILES statements.
26236
26237 2006-01-11  Bruno Haible  <bruno@clisp.org>
26238
26239         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26240         Initialize also noinst_HEADERS to empty.
26241
26242 2006-01-11  Bruno Haible  <bruno@clisp.org>
26243
26244         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
26245         variables.
26246         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
26247         autoreconf.
26248
26249 2006-01-11  Bruno Haible  <bruno@clisp.org>
26250
26251         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
26252         overridable by the user.
26253         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26254
26255 2006-01-10  Simon Josefsson  <jas@extundo.com>
26256
26257         * modules/sys_socket: New file.
26258
26259 2006-01-10  Simon Josefsson  <jas@extundo.com>
26260
26261         * m4/sys_socket_h.m4: New file.
26262
26263 2006-01-10  Simon Josefsson  <jas@extundo.com>
26264
26265         * lib/socket_.h: New file.
26266
26267 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26268
26269         * modules/readutmp (Maintainer): Add myself.
26270
26271 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26272
26273         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
26274         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
26275         People who are still concerned with buggy memcmp implementations
26276         can invoke gl_FUNC_MEMCMP themselves.
26277
26278 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
26279
26280         * lib/regex_internal.h (BITSET_WORD_BITS):
26281         Work around a bug in 64-bit PGC (before version 6.1-2), where the
26282         preprocessor mishandles large unsigned values as if they were signed.
26283         Problem reported by Claudio Fontana in
26284         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
26285
26286 2006-01-10  Jim Meyering  <jim@meyering.net>
26287
26288         Avoid the double-free (first in fts_read, second in fts_close) that
26289         would occur when an `active' directory is made inaccessible (e.g.,
26290         via chmod a-x) during a traversal.
26291         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
26292         before returning.  Reproduce this failure by
26293         mkdir -p a/b; cd a; chmod a-x . b
26294         Reported by Stavros Passas.
26295
26296         Sync from coreutils.
26297         * lib/sha1.c: Tweak grammar in a comment.
26298
26299 2006-01-10  Jim Meyering  <jim@meyering.net>
26300
26301         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
26302         Patch by Joerg Sonnenberger.
26303
26304 2006-01-10  Bruno Haible  <bruno@clisp.org>
26305
26306         * modules/readutmp: Depend on module free.
26307         * modules/strtok_r: Depend on module restrict.
26308
26309 2006-01-10  Bruno Haible  <bruno@clisp.org>
26310
26311         * modules/gettext (configure.ac): Add an invocation of
26312         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
26313
26314 2006-01-10  Bruno Haible  <bruno@clisp.org>
26315
26316         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
26317         Reported by Werner Lemberg <wl@gnu.org>.
26318
26319 2006-01-10  Bruno Haible  <bruno@clisp.org>
26320
26321         * lib/localcharset.c: Update from GNU gettext.
26322
26323 2006-01-10  Bruno Haible  <bruno@clisp.org>
26324
26325         * lib/argp.h (__const): Remove macro. Use const instead.
26326         * lib/argp-fmtstream.h (__const): Likewise.
26327         * lib/glob_.h (__const): Remove macro.
26328         * lib/glob-libc.h: Use const instead of __const.
26329
26330 2006-01-10  Bruno Haible  <bruno@clisp.org>
26331
26332         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
26333         variable.
26334         Needed to avoid an automake error regarding the 'gettext' module.
26335
26336 2006-01-09  Simon Josefsson  <jas@extundo.com>
26337
26338         * modules/inet_ntop (Depends-on): Add restrict.
26339
26340 2006-01-09  Simon Josefsson  <jas@extundo.com>
26341
26342         * modules/gc-rijndael-tests (License): Put under LGPL.
26343
26344         * modules/gc-des-tests (License): Likewise.
26345
26346         * modules/gc-arcfour-tests (License): Likewise.
26347
26348         * modules/gc-arctwo-tests (License): Likewise.
26349
26350         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
26351
26352         * modules/gc-hmac-sha1-tests (Files): Likewise.
26353
26354         * modules/gc-hmac-md5-tests (License): Likewise.
26355
26356         * modules/gc-sha1-tests (License): Likewise.
26357
26358         * modules/gc-md5-tests (License): Likewise.
26359
26360         * modules/gc-md4-tests (License): Likewise.
26361
26362         * modules/gc-md2-tests (License): Likewise.
26363
26364         * modules/gc-tests (License): Likewise.
26365
26366         * modules/des-tests (License): Likewise.
26367
26368         * modules/md4-tests (License): Likewise.
26369
26370         * modules/md2-tests (License): Likewise.
26371
26372 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26373
26374         Sync from coreutils:
26375
26376         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
26377         * modules/lib-ignore: New file.
26378         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
26379         chdir-safer.m4, lchmod.m4.
26380         * modules/openat: Add mkdirat.c, openat-priv.h.
26381
26382 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26383
26384         Sync from coreutils.
26385         * m4/lib-ignore.m4: New file.
26386         * m4/lchmod.m4: New file.
26387
26388 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26389
26390         Sync from coreutils.
26391         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
26392         for write access: POSIX says that must fail.
26393         * lib/fts.c (diropen): Likewise.
26394         * lib/save-cwd.c (save_cwd): Likewise.
26395         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
26396         well, for minor improvements on hosts that lack O_DIRECTORY.
26397         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
26398         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
26399         Fall back on chown if open failed with EACCES.
26400
26401         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
26402         Report an error at compile-time if only a 1-second nominal clock
26403         resolution is found.
26404
26405         * lib/lchmod.h: New file.
26406         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
26407         (make_dir_parents): Use lchown rather than chown, and
26408         lchmod rather than chmod.
26409
26410         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
26411         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
26412         "proc" reported by n0dalus.
26413
26414         * lib/mountlist.c: Include <limits.h>.
26415         (dev_from_mount_options)
26416         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
26417         New function.  It no longer assumes "dev=" has the System V meaning
26418         on Linux (since it doesn't).  It also parses "dev=" more carefully.
26419         (read_file_system_list)
26420         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
26421         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
26422         dev= in that case.
26423
26424         * lib/posixtm.h (PDS_PRE_2000): New macro.
26425         * lib/posixtm.c (year): Arg is now syntax_bits rather than
26426         allow_century.  All usages changed.  Reject dates outside the range
26427         1969-1999 if PDS_PRE_2000 is used.
26428
26429 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
26430
26431         Sync from coreutils.
26432         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
26433         (Time of day items): Mention the possibility of leap seconds.
26434         Problem reported by Dr. David Alan Gilbert.
26435
26436 2006-01-09  Jim Meyering  <jim@meyering.net>
26437
26438         Sync from coreutils.
26439
26440         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
26441
26442         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
26443
26444         * lib/modechange.c (mode_compile): Reject an invalid mode string
26445         that starts with an octal digit.  From Andreas Gruenbacher.
26446
26447         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
26448         and dup to open_safer and dup_safer, respectively.
26449         (openat_permissive): Fix typo in comment.
26450
26451         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
26452         "gettext.h"; either no longer needed or are guaranteed by openat.h.
26453         (_): Remove; no longer needed.
26454         (openat): Renamed from rpl_openat; no need for rpl_openat
26455         since openat.h renames openat for us.
26456         Replace most of the body with a call to openat_permissive,
26457         to avoid duplicate code.
26458         Port to (probably hypothetical) environments were mode_t is
26459         wider than int.
26460         (openat_permissive): Require mode arg, so that we can check
26461         types better.  Put it just after flags.  Change cwd failure
26462         indicator from pointer-to-bool to pointer-to-errno-value.
26463         All callers changed.
26464         Invoke openat_save_fail and/or openat_restore_fail if
26465         cwd_errno is null, so that openat can call us.
26466         (openat_permissive, fdopendir, fstatat, unlinkat):
26467         Simplify errno handling to avoid some duplicate code,
26468         as it's OK to set errno on success.
26469         * lib/openat.h: Revamp code so that function macros depend on
26470         __OPENAT_PREFIX only, not also on AT_FDCWD.
26471         (openat_ro): Remove.  Caller changed to use openat_permissive.
26472         (openat_permissive): Now a macro, if not a function.
26473         (openat_restore_fail, openat_save_fail): Now always functions,
26474         since mkdirat needs them even if __OPENAT_PREFIX is defined.
26475
26476         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
26477         and openat.c.
26478         * lib/mkdirat.c: Include openat-priv.h.
26479         Remove definitions of macros defined therein.
26480         * lib/openat.c: Likewise.
26481
26482         * lib/mkdirat.c (mkdirat): New file and function.
26483         * lib/openat.h (mkdirat): Declare.
26484
26485         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
26486
26487         * lib/openat.h (openat_permissive): Declare.
26488         (openat_ro): Define.
26489
26490         * lib/openat.c (EXPECTED_ERRNO): New macro.
26491         (openat_permissive): New function -- used in remove.c rewrite.
26492         (all functions): Set errno just before returning, only if there
26493         was an actual failure.
26494         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
26495
26496         Emulate openat-family functions using Linux's procfs, if possible.
26497         Idea and some code based on Ulrich Drepper's glibc changes.
26498
26499         * lib/openat.c: (BUILD_PROC_NAME): New macro.
26500         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
26501         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
26502         before falling back on save_cwd and restore_cwd.
26503         (fdopendir, fstatat, unlinkat): Likewise.
26504
26505         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
26506         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
26507
26508         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
26509         as second argument to va_arg.  Otherwise, some versions of gcc
26510         warn that `if this code is reached, the program will abort'.
26511
26512 2006-01-09  Jim Meyering  <jim@meyering.net>
26513
26514         Sync from coreutils.
26515         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
26516         Require openat-priv.h.
26517
26518 2006-01-09  Bruno Haible  <bruno@clisp.org>
26519
26520         * modules/strnlen (Include): Use strnlen.h.
26521
26522 2006-01-09  Bruno Haible  <bruno@clisp.org>
26523
26524         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
26525
26526 2006-01-09  Bruno Haible  <bruno@clisp.org>
26527
26528         * lib/sysexit_.h (EX_OK): New macro.
26529         Suggested by Martin Lambers <marlam@marlam.de>.
26530
26531 2006-01-09  Bruno Haible  <bruno@clisp.org>
26532
26533         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
26534         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
26535
26536 2006-01-09  Bruno Haible  <bruno@clisp.org>
26537
26538         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
26539         numbers.
26540
26541 2006-01-09  Bruno Haible  <bruno@clisp.org>
26542
26543         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
26544         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
26545         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
26546         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
26547
26548 2006-01-09  Bruno Haible  <bruno@clisp.org>
26549
26550         * build-aux/javacomp.sh.in: New file, moved from lib/.
26551         * modules/javacomp-script (Files): Update.
26552         (configure.ac): Add AC_CONFIG_FILES invocation.
26553         (EXTRA_DIST): Remove variable.
26554
26555         * build-aux/javaexec.sh.in: New file, moved from lib/.
26556         * modules/javaexec (Files): Update.
26557         (configure.ac): Add AC_CONFIG_FILES invocation.
26558         (EXTRA_DIST): Remove javaexec.sh.in.
26559
26560         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
26561         * modules/csharpcomp-script (Files): Update.
26562         (configure.ac): Add AC_CONFIG_FILES invocation.
26563         (EXTRA_DIST): Remove variable.
26564
26565         * build-aux/csharpexec.sh.in: New file, moved from lib/.
26566         * modules/csharpexec (Files): Update.
26567         (configure.ac): Add AC_CONFIG_FILES invocation.
26568         (EXTRA_DIST): Remove csharpexec.sh.in.
26569
26570 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
26571
26572         Sync from coreutils.
26573
26574         Add POSIX ACL support
26575         * lib/acl.h (copy_acl, set_acl): Add declarations.
26576         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
26577         systems other than Linux.
26578         (chmod_or_fchmod): New function: use fchmod when possible,
26579         and chmod otherwise.
26580         (file_has_acl): Add a POSIX ACL implementation, with a
26581         Linux-specific subcase.
26582         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
26583         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
26584         acls are unsupported.
26585         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
26586         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
26587         are unsupported.
26588
26589 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
26590
26591         Sync from coreutils.
26592         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
26593
26594 2006-01-07  Bruno Haible  <bruno@clisp.org>
26595
26596         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
26597         gl_EARLY.
26598
26599 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
26600
26601         * lib/strftime.c (tzname): Don't declare if it is already #defined.
26602         Problem reported for Mingw by Mark Junker.
26603
26604 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
26605
26606         * README: Gnulib normally doesn't generate a tarball.
26607
26608 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
26609
26610         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
26611         long int, not int, for nanosecond counts, so that people who are
26612         used to POSIX struct timespec won't be surprised.  Reported by Jim
26613         Meyering.
26614
26615 2005-12-28  Bruno Haible  <bruno@clisp.org>
26616
26617         * build-aux/config.rpath: Update from GNU gettext.
26618
26619 2005-12-16  Jim Meyering  <jim@meyering.net>
26620
26621         * modules/fprintftime: New module.
26622         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
26623
26624 2005-12-16  Jim Meyering  <jim@meyering.net>
26625
26626         * m4/fprintftime.m4: New file.
26627
26628 2005-12-16  Jim Meyering  <jim@meyering.net>
26629
26630         * lib/fprintftime.c, lib/fprintftime.h: New files.
26631
26632 2005-12-15  Simon Josefsson  <jas@extundo.com>
26633
26634         * modules/socklen (configure.ac): Fix M4 macro name, to align with
26635         new m4/socklen.m4.
26636
26637 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26638
26639         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
26640         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
26641
26642 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26643
26644         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
26645         * lib/argp-help.c (fill_in_uparams): Check if the constructed
26646         struct uparams is valid. Fall back to the default values if it is
26647         not.
26648
26649 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26650
26651         * modules/argp (Files): Add argp-pin.c
26652         (Depends-on): dirname
26653         (lib_SOURCES): Add argp-pin.c
26654
26655 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26656
26657         * m4/argp.m4:  Check if program_invocation_name and
26658         program_invocation_short_name are declared and define appropriate
26659         macros if they are not.
26660
26661 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26662
26663         * lib/argp-help.c (__argp_base_name): New function
26664         (__argp_short_program_name): Rewrite using __argp_base_name
26665         * lib/argp-namefrob.h: Define program_invocation_name and
26666         program_invocation_short_name if requested
26667         (__argp_base_name): Add prototype
26668         * lib/argp-parse.c (argp_def): Use gettext wrappers
26669         (argp_default_parser): Use __argp_base_name
26670         * lib/argp-pin.c: New file. Defines program_invocation_name and
26671         program_invocation_short_name on systems that lack them.
26672
26673 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
26674
26675         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
26676         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
26677         porting problem reported by Georg Schwarz in
26678         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
26679
26680 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
26681
26682         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
26683         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
26684         porting problem reported by Georg Schwarz in
26685         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
26686
26687 2005-12-05  Bruno Haible  <bruno@clisp.org>
26688
26689         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
26690         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
26691         Reported by Mark Junker <mjscod@gmx.de>.
26692
26693 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
26694
26695         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
26696         Use implementation from Albert Chin, with some
26697         comments/corrections by Stepan Kasal and myself.
26698
26699 2005-12-02  Bruno Haible  <bruno@clisp.org>
26700
26701         * gnulib-tool (func_import): Accept GPLed build tool modules when
26702         --lgpl is given.
26703         * modules/csharpcomp-script: New file.
26704         * modules/csharpcomp: Depend on it.
26705         * modules/javacomp-script: New file.
26706         * modules/javacomp: Depend on it.
26707         Suggested by Simon Josefsson.
26708
26709 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
26710
26711         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
26712         statement, to work around an HP-UX 10.20 compiler bug reported by
26713         Peter O'Gorman.
26714
26715 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
26716
26717         * modules/savedir (Depends-on): Add openat.
26718
26719 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
26720
26721         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
26722         (uintmax_t) [defined uintmax_t]: Do not declare.
26723         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
26724         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
26725         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
26726         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
26727         sake of portability to weird hosts that C allows (though we don't
26728         know of any practical examples).
26729
26730         * lib/savedir.h (fdsavedir): New decl.
26731         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
26732         contains most of the former guts of savedir.
26733         (savedir): Use savedirstream.
26734         Include "openat.h".
26735
26736 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
26737
26738         * modules/obstack (Files): Add m4/ulonglong.m4.
26739         Problem reported by Davide Angelocola.
26740
26741 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
26742
26743         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
26744         coreutils no longer futzes with rounding modes.
26745
26746 2005-11-14  Jim Meyering  <jim@meyering.net>
26747
26748         * lib/mkstemp-safer.c: Include <config.h>, required for possible
26749         replacement of mkstemp.
26750
26751 2005-11-10  Simon Josefsson  <jas@extundo.com>
26752
26753         * lib/readline.c: Remove EOL.
26754
26755 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26756
26757         * modules/gethrxtime (Depends-on): Add gettime.
26758
26759 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26760
26761         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
26762         or gettimeofday; no longer needed.
26763
26764 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26765
26766         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
26767         time business.
26768         (gethrxtime) [! (HAVE_NANOUPTIME
26769         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
26770         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
26771         our own approximation.
26772
26773 2005-11-08  Eric Blake  <ebb9@byu.net>
26774
26775         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
26776
26777 2005-11-08  Eric Blake  <ebb9@byu.net>
26778
26779         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
26780
26781 2005-11-04  Bruno Haible  <bruno@clisp.org>
26782
26783         * gnulib-tool: Implement --update mode.
26784
26785 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26786
26787         Fix porting problem reported by Theodoros V. Kalamatianos.
26788         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
26789         Don't assume that futimes failing means we must fail.
26790
26791 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26792
26793         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
26794         variables to suggest the intended function of the PATH_MAX check.
26795
26796 2005-10-30  Kean Johnston  <jkj@sco.com>
26797
26798         Trivial changes to support SCO systems.
26799         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
26800         as PATH_MAX.
26801         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
26802         where __ptr is null when no I/O is pending.
26803
26804 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26805
26806         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
26807         leave errno alone.  Problem reported by Dmitry V. Levin.
26808
26809 2005-10-28  Simon Josefsson  <jas@extundo.com>
26810
26811         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
26812         Test more.
26813
26814         * tests/test-gc-md2.c, tests/test-md2.c: New files.
26815
26816         * modules/md2, modules/md2-tests: New files.
26817
26818 2005-10-28  Simon Josefsson  <jas@extundo.com>
26819
26820         * m4/inet_ntop.m4: More tests.
26821
26822         * m4/gc-md2.m4, md2.m4: New file.
26823
26824 2005-10-28  Simon Josefsson  <jas@extundo.com>
26825
26826         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
26827         "restrict" keywords, as per POSIX.  Protect the function
26828         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
26829         Don't use K&R prototypes.  Check the sprintf return values.
26830         Re-define EAFNOSUPPORT if not present.  Indent.
26831
26832         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
26833         suggested by Bruno Haible <bruno@clisp.org>.
26834
26835         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
26836
26837         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
26838
26839         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
26840         libgcrypt).
26841
26842         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
26843
26844         * lib/md2.h, lib/md2.c: New files.
26845
26846 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
26847
26848         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
26849         errno alone.  Problem reported by Frederic Jolliton.
26850
26851 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
26852
26853         * modules/verify (License): Change from GPL to LGPL.  This is a
26854         tiny module and there are apparently near-equivalents that are
26855         under the BSD license.
26856
26857 2005-10-24  Simon Josefsson  <jas@extundo.com>
26858
26859         * modules/sha1: Relicense to LGPL.
26860
26861 2005-10-24  Simon Josefsson  <jas@extundo.com>
26862
26863         * lib/md4.h: Shrink buffer size, now that we changed the type.
26864
26865 2005-10-23  Simon Josefsson  <jas@extundo.com>
26866
26867         * gnulib-tool (func_import): Fix --tests-base.
26868
26869 2005-10-22  Simon Josefsson  <jas@extundo.com>
26870
26871         * modules/arcfour (Depends-on): Need stdint.
26872
26873 2005-10-22  Simon Josefsson  <jas@extundo.com>
26874
26875         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
26876         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
26877
26878 2005-10-22  Simon Josefsson  <jas@extundo.com>
26879
26880         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
26881         suggested by Bruno Haible <bruno@clisp.org>.
26882
26883 2005-10-22  Simon Josefsson  <jas@extundo.com>
26884
26885         * lib/crc.h: Include stddef.h, for size_t.
26886
26887 2005-10-22  Simon Josefsson  <jas@extundo.com>
26888
26889         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
26890         arcfour_context struct (simplify test vector testing in GNU
26891         Shishi).
26892
26893 2005-10-21  Simon Josefsson  <jas@extundo.com>
26894
26895         * modules/des, modules/des-tests: New files.
26896
26897         * modules/gc-des, modules/gc-des-tests: New files.
26898
26899         * tests/test-des.c, tests/test-gc-des.c: New file.
26900
26901 2005-10-21  Simon Josefsson  <jas@extundo.com>
26902
26903         * modules/arctwo, modules/arctwo-tests: New files.
26904
26905         * tests/test-arctwo.c: New file.
26906
26907         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
26908
26909         * tests/test-gc-arctwo.c: New file.
26910
26911 2005-10-21  Simon Josefsson  <jas@extundo.com>
26912
26913         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
26914         Bruno Haible <bruno@clisp.org>.
26915
26916         * m4/gc-des.m4: New file.
26917
26918 2005-10-21  Simon Josefsson  <jas@extundo.com>
26919
26920         * m4/arctwo.m4: New file.
26921
26922         * m4/gc-arctwo.m4: New file.
26923
26924 2005-10-21  Simon Josefsson  <jas@extundo.com>
26925
26926         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
26927         block.
26928
26929 2005-10-21  Simon Josefsson  <jas@extundo.com>
26930
26931         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
26932         <bruno@clisp.org>.
26933
26934         * lib/hmac-sha1.c (hmac_sha1): Likewise.
26935
26936         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
26937         Bruno Haible <bruno@clisp.org>.
26938
26939         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
26940         <bruno@clisp.org>.
26941
26942 2005-10-21  Simon Josefsson  <jas@extundo.com>
26943
26944         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
26945
26946 2005-10-21  Simon Josefsson  <jas@extundo.com>
26947
26948         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
26949
26950 2005-10-21  Simon Josefsson  <jas@extundo.com>
26951
26952         * lib/des.h, lib/des.c: New files.
26953
26954         * lib/gc-gnulib.c: Support DES.c
26955
26956 2005-10-21  Simon Josefsson  <jas@extundo.com>
26957
26958         * lib/arctwo.h, lib/arctwo.c: New files.
26959
26960         * lib/gc-gnulib.c: Support ARCTWO.
26961
26962 2005-10-21  Simon Josefsson  <jas@extundo.com>
26963
26964         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
26965         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26966
26967 2005-10-21  Simon Josefsson  <jas@extundo.com>
26968
26969         * gnulib-tool (func_import, func_create_testdir): Define automake
26970         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
26971         Makefile.am snippet),
26972         suggested by Bruno Haible <bruno@clisp.org>.
26973
26974         * modules/gc (Makefile.am): Use it.
26975
26976 2005-10-21  Bruno Haible  <bruno@clisp.org>
26977
26978         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
26979         patch.
26980
26981 2005-10-19  Simon Josefsson  <jas@extundo.com>
26982
26983         * tests/test-gc-rijndael.c: New file.
26984
26985         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
26986
26987 2005-10-19  Simon Josefsson  <jas@extundo.com>
26988
26989         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
26990         interface too.
26991
26992 2005-10-19  Simon Josefsson  <jas@extundo.com>
26993
26994         * tests/test-gc-arcfour.c: New file.
26995
26996         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
26997
26998 2005-10-19  Simon Josefsson  <jas@extundo.com>
26999
27000         * modules/gc-md4, modules/gc-md4-tests: New file.
27001
27002         * tests/test-gc-md4.c: New file.
27003
27004 2005-10-19  Simon Josefsson  <jas@extundo.com>
27005
27006         * m4/gc-md4.m4: New file.
27007
27008 2005-10-19  Simon Josefsson  <jas@extundo.com>
27009
27010         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
27011         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
27012         <kasal@ucw.cz>.
27013
27014 2005-10-19  Simon Josefsson  <jas@extundo.com>
27015
27016         * m4/gc-arcfour.m4: New file.
27017
27018         * m4/gc-rijndael.m4: New file.
27019
27020 2005-10-19  Simon Josefsson  <jas@extundo.com>
27021
27022         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
27023
27024 2005-10-19  Simon Josefsson  <jas@extundo.com>
27025
27026         * lib/gc-gnulib.c: Support ARCFOUR.
27027
27028 2005-10-19  Simon Josefsson  <jas@extundo.com>
27029
27030         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
27031         support.
27032
27033         * lib/gc.h: Add ECB enum type.
27034
27035         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
27036
27037 2005-10-18  Simon Josefsson  <jas@extundo.com>
27038
27039         * tests/test-md5.c: New file.
27040
27041         * modules/md5-tests: New file.
27042
27043 2005-10-18  Simon Josefsson  <jas@extundo.com>
27044
27045         * tests/test-md4.c: New file.
27046
27047         * modules/md4, modules/md4-tests: New files.
27048
27049 2005-10-18  Simon Josefsson  <jas@extundo.com>
27050
27051         * m4/md4.m4: New file.
27052
27053 2005-10-18  Simon Josefsson  <jas@extundo.com>
27054
27055         * lib/md4.h, lib/md4.c: New files, based on md5.?.
27056
27057 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
27058
27059         * gnulib-tool (func_create_testdir): Omit the second check whether
27060         BUILT_SOURCES in nonempty.
27061
27062 2005-10-17  Simon Josefsson  <jas@extundo.com>
27063
27064         * tests/test-rijndael.c: New file.
27065
27066 2005-10-17  Simon Josefsson  <jas@extundo.com>
27067
27068         * modules/sha1: Depend on stdint instead of md5.
27069
27070         * modules/md5: Depend on stdint, remove uint32_t.
27071
27072 2005-10-17  Simon Josefsson  <jas@extundo.com>
27073
27074         * modules/gc-sha1-tests: New file.
27075
27076         * tests/test-gc-sha1.c: New file.
27077
27078 2005-10-17  Simon Josefsson  <jas@extundo.com>
27079
27080         * m4/md5.m4: Remove call to uint32_t.m4.
27081
27082 2005-10-17  Simon Josefsson  <jas@extundo.com>
27083
27084         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
27085
27086         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
27087         md5.h.
27088
27089         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
27090
27091         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
27092
27093 2005-10-17  Simon Josefsson  <jas@extundo.com>
27094
27095         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
27096
27097 2005-10-17  Simon Josefsson  <jas@extundo.com>
27098
27099         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
27100
27101 2005-10-17  Simon Josefsson  <jas@extundo.com>
27102
27103         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
27104
27105         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
27106
27107 2005-10-17  Bruno Haible  <bruno@clisp.org>
27108
27109         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
27110         that it can also be used in a test.
27111
27112 2005-10-16  Bruno Haible  <bruno@clisp.org>
27113
27114         * gnulib-tool (func_emit_tests_Makefile_am): Also define
27115         TESTS_ENVIRONMENT, so that individual tests can augment it.
27116
27117         * gnulib-tool (func_create_testdir): Use an intermediate target for
27118         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
27119         macros, like $(ALLOCA_H), which cannot be passed through the command
27120         line.
27121
27122 2005-10-15  Simon Josefsson  <jas@extundo.com>
27123
27124         * modules/rijndael-tests: New file.
27125
27126         * modules/rijndael: New file.
27127
27128 2005-10-15  Simon Josefsson  <jas@extundo.com>
27129
27130         * m4/rijndael.m4: New file.
27131
27132 2005-10-15  Simon Josefsson  <jas@extundo.com>
27133
27134         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
27135
27136         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
27137
27138 2005-10-14  Simon Josefsson  <jas@extundo.com>
27139
27140         * tests/test-arcfour.c: New file.
27141
27142         * modules/arcfour, modules/arcfour-tests: New files.
27143
27144 2005-10-14  Simon Josefsson  <jas@extundo.com>
27145
27146         * m4/arcfour.m4: New file.
27147
27148 2005-10-14  Simon Josefsson  <jas@extundo.com>
27149
27150         * lib/arcfour.h, lib/arcfour.c: New files.
27151
27152 2005-10-14  Roland McGrath  <roland@redhat.com>
27153
27154         Import from libc.  [BZ #1331]
27155         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
27156         macro argument.
27157         Reported by Matej Vela <vela@debian.org>.
27158
27159 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
27160
27161         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
27162         include <wchar.h>; no longer needed.
27163
27164 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
27165
27166         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
27167
27168 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
27169         and  Ulrich Drepper  <drepper@redhat.com>
27170
27171         Import from libc.
27172         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
27173         instead of inline stream orientation test and two separate
27174         function calls.  Pay no attention to USE_IN_LIBIO.
27175
27176 2005-10-13  Simon Josefsson  <jas@extundo.com>
27177
27178         * modules/gc-hmac-md5-tests: New file.
27179
27180         * tests/test-gc-hmac-sha1.c: New file.
27181
27182         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
27183
27184         * modules/gc-hmac-md5-tests: New file.
27185
27186         * tests/test-gc-md5.c: New file.
27187
27188         * modules/gc-md5-tests: New file.
27189
27190 2005-10-13  Simon Josefsson  <jas@extundo.com>
27191
27192         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
27193         Move memory allocation outside of loop.
27194
27195 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
27196
27197         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
27198         intermediate directory is in a read-only file system.  Problem
27199         reported by Eric Blake.
27200
27201 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
27202
27203         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
27204
27205 2005-10-12  Simon Josefsson  <jas@extundo.com>
27206
27207         * tests/test-hmac-sha1.c: New file.
27208
27209         * modules/hmac-sha1-tests: New file.
27210
27211         * modules/hmac-sha1: New file.
27212
27213 2005-10-12  Simon Josefsson  <jas@extundo.com>
27214
27215         * modules/gc-sha1: New file.
27216
27217 2005-10-12  Simon Josefsson  <jas@extundo.com>
27218
27219         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
27220
27221         * tests/test-gc-pbkdf2-sha1.c: New file.
27222
27223 2005-10-12  Simon Josefsson  <jas@extundo.com>
27224
27225         * modules/gc-md5, modules/gc-hmac-md5: New files.
27226
27227         * modules/gc (Files): Remove md5, memxor and hmac files.
27228
27229 2005-10-12  Simon Josefsson  <jas@extundo.com>
27230
27231         * m4/gc-pbkdf2-sha1.m4: New file.
27232
27233         * m4/gc-hmac-sha1.m4: New file.
27234
27235         * m4/gc-sha1: New file.
27236
27237         * m4/hmac-sha1.m4: New file.
27238
27239 2005-10-12  Simon Josefsson  <jas@extundo.com>
27240
27241         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
27242
27243         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
27244
27245 2005-10-12  Simon Josefsson  <jas@extundo.com>
27246
27247         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
27248         suggested by Bruno Haible <bruno@clisp.org>.
27249
27250 2005-10-12  Simon Josefsson  <jas@extundo.com>
27251
27252         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
27253
27254 2005-10-12  Simon Josefsson  <jas@extundo.com>
27255
27256         * lib/gc-pbkdf2-sha1.c: New file.
27257
27258         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
27259
27260 2005-10-12  Simon Josefsson  <jas@extundo.com>
27261
27262         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
27263
27264         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
27265
27266 2005-10-12  Simon Josefsson  <jas@extundo.com>
27267
27268         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
27269         GC_USE_HMAC_MD5, respectively.
27270
27271         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
27272         (gc_md5): Fix typo.
27273
27274         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
27275
27276         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
27277
27278         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
27279
27280 2005-10-12  Bruno Haible  <bruno@clisp.org>
27281
27282         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
27283         Reported by Stepan Kasal <kasal@ucw.cz>.
27284
27285 2005-10-11  Simon Josefsson  <jas@extundo.com>
27286
27287         * tests/test-crc.c: New file.
27288
27289         * modules/crc, modules/crc-tests: New files.
27290
27291 2005-10-11  Simon Josefsson  <jas@extundo.com>
27292
27293         * m4/crc.m4: New file.
27294
27295 2005-10-11  Simon Josefsson  <jas@extundo.com>
27296
27297         * lib/gc.h: Add gc_hash and gc_hash_buffer.
27298
27299         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
27300
27301         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
27302
27303 2005-10-11  Simon Josefsson  <jas@extundo.com>
27304
27305         * lib/crc.h, lib/crc.c: New files.
27306
27307         * lib/gc.h (gc_hash_buffer): Add doc.
27308
27309 2005-10-11  Bruno Haible  <bruno@clisp.org>
27310
27311         * modules/c-strcasestr: New file.
27312         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
27313
27314 2005-10-11  Bruno Haible  <bruno@clisp.org>
27315
27316         * modules/c-strcase: New file.
27317         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
27318
27319 2005-10-11  Bruno Haible  <bruno@clisp.org>
27320
27321         * lib/strcasecmp.c: Include limits.h.
27322         (strcasecmp): Avoid integer overflow on exotic platforms.
27323         * lib/strncasecmp.c: Include limits.h.
27324         (strncasecmp): Avoid integer overflow on exotic platforms.
27325         Reported by Paul Eggert.
27326
27327 2005-10-11  Bruno Haible  <bruno@clisp.org>
27328
27329         * lib/c-strcasestr.h: New file, from GNU gettext.
27330         * lib/c-strcasestr.c: New file, from GNU gettext.
27331
27332 2005-10-11  Bruno Haible  <bruno@clisp.org>
27333
27334         * lib/c-strcase.h: New file, from GNU gettext.
27335         * lib/c-strcasecmp.c: New file, from GNU gettext.
27336         * lib/c-strncasecmp.c: New file, from GNU gettext.
27337
27338 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
27339
27340         * modules/mempcpy (License): GPL -> LGPL.
27341         * modules/strchrnul (License): Likewise.
27342         * modules/sysexits (License): Likewise.
27343
27344 2005-10-08  Simon Josefsson  <jas@extundo.com>
27345
27346         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
27347
27348 2005-10-07  Simon Josefsson  <jas@extundo.com>
27349
27350         * m4/memxor.m4: Remove gl_C_RESTRICT call.
27351
27352 2005-10-06  Simon Josefsson  <jas@extundo.com>
27353
27354         * tests/test-hmac-md5.c: New file.
27355
27356         * modules/hmac-md5-tests: New file.
27357
27358         * modules/hmac-md5: New file.
27359
27360 2005-10-06  Simon Josefsson  <jas@extundo.com>
27361
27362         * m4/hmac-md5.m4: New file.
27363
27364         * m4/memxor.m4: Require gl_C_RESTRICT.
27365
27366 2005-10-06  Simon Josefsson  <jas@extundo.com>
27367
27368         * lib/memxor.c (memxor): Avoid casts and warnings.
27369
27370 2005-10-06  Simon Josefsson  <jas@extundo.com>
27371
27372         * lib/hmac-md5.c: New file.
27373
27374         * lib/hmac.h: New file.
27375
27376 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
27377
27378         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
27379         promotes to int, not unsigned int, to catch the AIX 5.3
27380         compiler bug.
27381
27382 2005-10-05  Simon Josefsson  <jas@extundo.com>
27383
27384         * modules/memxor: New file.
27385
27386         * modules/iconv (Files): Move config.rpath to havelib, it is used
27387         there.
27388
27389         * modules/havelib (Files): Add config.rpath.
27390
27391 2005-10-05  Simon Josefsson  <jas@extundo.com>
27392
27393         * m4/memxor.m4: New file.
27394
27395 2005-10-05  Simon Josefsson  <jas@extundo.com>
27396
27397         * lib/memxor.c (memxor): Fix compiler error.
27398
27399         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
27400         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
27401
27402         * lib/memxor.h, lib/memxor.c: New files.
27403
27404         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
27405         we assume all systems have it, suggested by Jim Meyering
27406         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
27407         any systems lack sys/socket.h; mingw32 is known to lack it, but we
27408         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
27409         same reasons.
27410
27411 2005-10-05  Simon Josefsson  <jas@extundo.com>
27412
27413         * config/srclist.txt: Add glibc bug 1423 for md5.h.
27414
27415 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
27416
27417         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
27418         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
27419         needed, since the source code now assumes these .h files.
27420
27421 2005-10-05  Derek Price  <derek@ximbiot.com>
27422
27423         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
27424
27425 2005-10-05  Bruno Haible  <bruno@clisp.org>
27426
27427         * modules/stdint (License): Change to LGPL.
27428
27429 2005-10-04  Simon Josefsson  <jas@extundo.com>
27430
27431         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
27432         D. Baushke" <mdb@gnu.org>.
27433
27434 2005-10-04  Bruno Haible  <bruno@clisp.org>
27435
27436         * lib/verify.h (verify_true): Provide alternative definition for C++.
27437
27438 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
27439
27440         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
27441         (SSIZE_MAX): New macro, if not already defined.
27442         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
27443         than 2 GiB.
27444
27445 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27446
27447         Sync from coreutils.
27448         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
27449         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
27450         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
27451         ULLONG_MAX doesn't work with 2.7.2.1.
27452
27453 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27454
27455         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
27456         From Ben Pfaff.
27457
27458         * modules/exclude (Depends-on): Depend on verify.
27459         * modules/strtoimax (Depends-on): Likewise.
27460         * modules/utimecmp (Depends-on): Likewise.
27461
27462 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
27463
27464         * lib/exclude.c: Include verify.h.
27465         (verify): Remove.  All callers changed to use verify.h's version.
27466         * lib/strtoimax.c: Likewise.
27467         * lib/utimecmp.c: Likewis.e
27468
27469         Sync from coreutils.
27470         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
27471         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
27472         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
27473         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
27474         bother returning ENOSYS if settimeofday or stime fails; just let
27475         them return whatever errno they want to return.
27476         * lib/utimens.c: Include unistd.h, for dup2.
27477         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
27478         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
27479
27480 2005-10-02  Jim Meyering  <jim@meyering.net>
27481
27482         Sync from coreutils.
27483         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
27484         from glibc-2.2.5 that fails for read-only files.
27485
27486 2005-10-02  Jim Meyering  <jim@meyering.net>
27487
27488         Sync from coreutils.
27489         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
27490         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
27491         `#if HAVE_CONFIG_H'.
27492         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
27493         Remove AT_FDCWD test.
27494         Do not consume the fd unless successful.
27495         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
27496         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
27497         block, so that we don't even try to compile it if settimeofday is
27498         available.  This works around a compilation failure on OSF1 V5.1,
27499         due to stime requiring a `long int*' while tv_sec is `int'.
27500
27501 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
27502
27503         Sync from coreutils.
27504         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
27505         against `yes', rather than just testing for nonempty.
27506
27507 2005-10-01  Simon Josefsson  <jas@extundo.com>
27508
27509         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
27510         and Darwin.
27511
27512         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
27513         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
27514         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
27515         freeaddrinfo and gai_strerror are declared by the POSIX headers.
27516         Check if struct addrinfo is declared.
27517
27518 2005-10-01  Simon Josefsson  <jas@extundo.com>
27519
27520         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
27521         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
27522         AI_* and EAI_* definitions.  Protect function declarations.
27523
27524 2005-10-01  Jim Meyering  <jim@meyering.net>
27525
27526         Sync from coreutils.
27527
27528         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
27529         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
27530         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
27531         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
27532         in the inet and nsl libraries.  Required on Solaris 5.7.
27533
27534 2005-10-01  Jim Meyering  <jim@meyering.net>
27535
27536         Sync from coreutils.
27537         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
27538         in the inet and nsl libraries.  Required on Solaris 5.7.
27539
27540 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
27541
27542         * lib/getdelim.c (getdelim): Remove unused variables.
27543
27544 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
27545
27546         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
27547         so that the code works even with ancient cpp.  Portability problem
27548         with GCC 2.7.2.1 reported by Thomas M.Ott.
27549
27550 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
27551
27552         * modules/regex (Depends-on): Add strcase.
27553
27554         * modules/gethostname (Licence): Change from GPL to LGPL, since
27555         gethostname.c is a trivial implementation of a standard library
27556         function.
27557         * modules/poll (License): Change from GPL to LGPL, since it's
27558         derived from LGPL code.
27559
27560 2005-09-27  Jim Meyering  <jim@meyering.net>
27561
27562         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
27563         HAVE_CONFIG_H.
27564
27565         * lib/intprops.h (signed_type_or_expr__): Define.
27566         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
27567         for unsigned types.
27568
27569 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
27570
27571         * lib/verify.h (verify_expr): Remove, replacing with:
27572         (verify_true): New macro that returns true instead of void.
27573         (verify_type__): Remove.
27574         (verify): Use verify_true rather than verify_type__.
27575
27576 2005-09-26  Bruno Haible  <bruno@clisp.org>
27577
27578         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
27579         is necessary.
27580         (lib_SOURCES): Remove mbchar.c.
27581         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
27582         (Files): Add m4/mbrtowc.m4.
27583         * modules/mbiter: Likewise.
27584         * modules/mbuiter: Likewise.
27585
27586 2005-09-26  Bruno Haible  <bruno@clisp.org>
27587
27588         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
27589         compile mbchar.c if they are not both present.
27590         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
27591         * m4/mbiter.m4 (gl_MBITER): Likewise.
27592         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
27593         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
27594         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
27595
27596 2005-09-25  Jim Meyering  <jim@meyering.net>
27597
27598         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
27599         also uses socklen_t.
27600
27601 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
27602
27603         * lib/utimens.c (ENOSYS): Define if not already defined.
27604         (futimens): Support having a null PATH if the file descriptor
27605         is nonnegative.
27606
27607         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
27608         Remove.
27609         (__attribute): Define to empty unless GCC 3.1 or later.
27610         This works around a core dump on OpenBSD 3.4, which has GCC
27611         2.95.3, which dumps core when given __attribute__(()).  It also
27612         simplifies other tests, since we really don't want to bother with
27613         worrying about which ancient version of GCC supported what.
27614         Original problem reported by Yoann Vandoorselaere, with part of
27615         the fix suggested by Derek Price.
27616
27617 2005-09-24  Jim Meyering  <jim@meyering.net>
27618
27619         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
27620         so we can once again use a positive bitfield width of 1 -- now we
27621         don't have to explain why we were using a bitfield width of 2.
27622
27623 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
27624
27625         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
27626         and similarly for the other external symbols.  Problem reported
27627         by James Gallager.
27628
27629         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
27630         bug reported by Jim Meyering.
27631
27632         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
27633         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
27634         not needed, since socklen is a prerequisite module.
27635
27636 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
27637
27638         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
27639         Problem reported by Eric Blake.
27640         (getaddrinfo): Initialize se so that it's not garbage.
27641         Redo internal storage allocation so that it doesn't make unportable
27642         assumptions about alignment.
27643         Fix a memory leak.
27644
27645         * lib/utimens.c (futimens): Use futimesat if available.
27646         Prefer it to futimes since it doesn't have the futimes bug.
27647
27648         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
27649         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
27650         Instead, declare a function that returns a pointer to an array,
27651         and use verify_type__ to declare the size of the array.
27652         Problem and germ of a solution reported by Bruno Haible.
27653         (verify_type__): Use 2, not 1, for bitfield size, to avoid
27654         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
27655
27656 2005-09-23  Jim Meyering  <jim@meyering.net>
27657
27658         Sync from coreutils.
27659         Correct build failure (socklen_t not defined) on at least
27660         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
27661         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
27662
27663 2005-09-23  Jim Meyering  <jim@meyering.net>
27664
27665         * modules/getaddrinfo (Depends-on): Add socklen.
27666
27667 2005-09-23  Bruno Haible  <bruno@clisp.org>
27668
27669         * tests/test-verify.c: New file.
27670
27671 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27672
27673         Sync from coreutils.
27674
27675         * modules/argmatch (Depends-on): Add verify.
27676         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
27677         unistd-safer.
27678         * modules/save-cwd (Depends-on): Likewise.
27679
27680         * modules/openat (Files): Add lib/openat-die.c.
27681         (Depends-on): Remove error, exitfail.
27682         Add dirname.
27683
27684         * modules/verify: New file.
27685         * MODULES.html.sh (Diagnostics <assert.h>): New section,
27686         with "verify" module.
27687
27688 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27689
27690         Sync from coreutils.
27691
27692         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
27693         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
27694         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
27695         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
27696         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
27697         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
27698         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
27699         Don't bother checking for string.h, stdlib.h, unistd.h.
27700         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
27701         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
27702         module's job.
27703         * m4/jm-macros.m4 (gl_MACROS): Likewise.
27704         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
27705
27706         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
27707         (gl_GETDATE): Use it.
27708
27709         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
27710
27711 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27712
27713         Sync from coreutils.
27714
27715         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
27716         stat-time.h.
27717         * lib/argmatch.h: Include verify.h
27718         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
27719         (ARGMATCH_ASSERT): Remove; unused.
27720         * lib/canonicalize.c: Assume STDC_HEADERS.
27721         * lib/exclude.c: Include "strcase.h".
27722         * lib/regex_internal.h [!defined _LIBC]: Likewise.
27723         * lib/getusershell.c: Include stdio--.h rather than stdio.h
27724         and stdio-safer.h.
27725         (getusershell): Call fopen, not fopen_safer.
27726         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
27727         Do not include unistd-safer.h.
27728         (save_cwd): Don't call fd_safer; no longer needed
27729         now that we include fcntl--.h.
27730
27731         * lib/getdate.y (relative_time): New type.
27732         (RELATIVE_TIME_0): New constant.
27733         (parser_control): Use relative_time instead of doing it ourselves.
27734         (%union): Add new relative_time rel member.
27735         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
27736         Now typeless.
27737         (relunit, relunit_snumber): Now of type rel.
27738         (zone, rel, relunit, get_date): Adjust to above changes.
27739
27740         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
27741         Do not include unistd-safer.h.
27742         (getloadavg): Don't call fd_safer; no longer needed
27743         now that we include fcntl--.h.
27744
27745         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
27746         (make_dir_parents): Treat ENOSYS like EEXIST.
27747
27748         Improve quality of diagnostics on restore_cwd failure.
27749         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
27750         (make_dir_parents): Last arg is now int * (for errno), not bool *.
27751         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
27752         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
27753         each time through the loop.  Do not diagnose restore_cwd failure;
27754         that is the caller's job (and perhaps the caller does not care).
27755
27756         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
27757         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
27758         If the file already exists but is not a directory, don't bother
27759         to try to make its parents.
27760         Close potential file descriptor leak if we can't chdir("/") (!).
27761         Don't always return true if chdir($PWD) fails; return true only
27762         if the requested action was done successfully (except for the
27763         chdir($PWD)).
27764         Don't log final directory unless we actually made it.
27765         Refactor to avoid duplicate code to fix up permissions.
27766         Don't attempt to fix up parent permissions if chdir($PWD) fails.
27767
27768         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
27769         to make it a bit faster and (I hope) clearer.
27770         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
27771         Fix bug in formats like %2N.
27772
27773         * lib/verify.h: New file.
27774
27775 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
27776
27777         Sync from coreutils.
27778         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
27779
27780 2005-09-22  Jim Meyering  <jim@meyering.net>
27781
27782         Sync from coreutils.
27783
27784         * m4/lstat.m4 (gl_FUNC_LSTAT):
27785         Use AC_LIBSOURCES to require lstat.c and lstat.h.
27786         Remove obsolete comment.
27787         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
27788         * m4/xstrtod.m4: Likewise.
27789
27790         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
27791
27792 2005-09-22  Jim Meyering  <jim@meyering.net>
27793
27794         Sync from coreutils.
27795
27796         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
27797
27798         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
27799         the .tm_year member, since otherwise gcc-4.0 would now warn about
27800         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
27801
27802         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
27803         order to avoid an unsuppressible warning from gcc on 64-bit systems.
27804
27805         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
27806         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
27807         when run in a time zone for which daylight savings time is in effect
27808         for the starting date.
27809
27810         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
27811         stop us from restricting permissions of just-created absolute-named
27812         directories.
27813         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
27814         to restore initial working directory.
27815         * lib/mkdir-p.c (make_dir_parents): New parameter:
27816         different_working_dir, to tell caller if/when we change the working
27817         directory and are unable to return to the initial one.
27818         * lib/mkdir-p.h (make_dir_parents): Update prototype.
27819         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
27820         `return false'.  This fixes a bug introduced on 2004-07-30.
27821
27822         * lib/openat.c (fdopendir): Be sure to close the supplied
27823         file descriptor before returning.  This makes our replacement
27824         implementation a little closer to Solaris's, where fdopendir
27825         ties the file descriptor to the returned DIR* pointer.
27826         * lib/openat.c (unlinkat): New function.
27827         * lib/openat.h (unlinkat): Add prototype.
27828         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
27829         (openat_restore_fail): Rename from openat_restore_die.
27830         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
27831
27832         Provide an alternative to exiting immediately upon save_cwd or
27833         restore_cwd failure.  Now, an application can arrange e.g.,
27834         to perform a longjump in that case.
27835         * lib/openat.c: Include dirname.h.
27836         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
27837         (rpl_openat, fdopendir, fstatat): Call openat_save_die
27838         and openat_restore_die rather than calling error directly.
27839         Don't include "error.h" or "exitfail.h"; they're no longer needed.
27840
27841         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
27842         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
27843         define.
27844
27845         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
27846         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
27847                             int utc, int nanoseconds);
27848         Background:
27849         date should not have to allocate a megabyte of virtual memory to
27850         handle a format argument like +%1048575T.  When implemented with
27851         strftime, it must allocate such a buffer, use strftime to fill it
27852         in, print it, then free it.
27853         With fprintftime, it simply prints everything and exits.
27854         With no need for memory allocation, that's one fewer way to fail.
27855         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
27856         optional field width, not before, so we accept %9:z, not %:9z.
27857         (my_strftime): Be sure to use L_('x') for literals.
27858
27859         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
27860         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
27861         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
27862         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
27863         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
27864         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
27865         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
27866         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
27867         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
27868         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
27869         * lib/xgethostname.c, lib/xreadlink.c:
27870         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
27871
27872         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
27873         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
27874         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
27875         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
27876         and don't include <sys/file.h>).
27877
27878 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
27879
27880         Sync from coreutils.
27881
27882         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
27883         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
27884         [!LDAV_DONE]: Avoid unused variable warning.
27885
27886 2005-09-21  Bruno Haible  <bruno@clisp.org>
27887
27888         * lib/unicodeio.h (unicode_to_mb): New declaration.
27889
27890 2005-09-20  Derek Price  <derek@ximbiot.com>
27891
27892         * lib/getaddrinfo.c: Don't include <netdb.h> included from
27893         getaddrinfo.h.
27894
27895 2005-09-20  Bruno Haible  <bruno@clisp.org>
27896
27897         * gnulib-tool: Remove trailing slashes from the values specified for
27898         --source-base, --m4-base, --tests-base, --aux-dir.
27899         Suggested by Simon Josefsson <jas@extundo.com>.
27900
27901 2005-09-20  Bruno Haible  <bruno@clisp.org>
27902
27903         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
27904         func_modules_to_filelist, func_import, func_create_testdir): Make all
27905         sorting results locale-independent, so that gnulib-cache.m4 doesn't
27906         change when gnulib-tool is invoked in a different locale.
27907
27908 2005-09-19  Simon Josefsson  <jas@extundo.com>
27909
27910         * m4/socklen.m4: Fix typo.
27911
27912 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27913
27914         Use a consistent style for including <config.h>.
27915         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
27916         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
27917         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
27918         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
27919         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
27920         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
27921         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
27922         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
27923         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
27924         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
27925         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
27926         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
27927         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
27928         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
27929         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
27930         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
27931         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
27932         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
27933         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
27934         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
27935         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
27936         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
27937         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
27938         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
27939         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
27940         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
27941         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
27942         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
27943         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
27944         lib/xstrtoumax.c, lib/yesno.c:
27945         Standardize inclusion of config.h.
27946         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
27947         lib/inttostr.h:  Removed inclusion of config.h from header files.
27948         * lib/inttostr.c:  Adjusted in-tree users.
27949         * lib/timespec.h: Remove superfluous warning to include config.h.
27950         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
27951         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
27952         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
27953         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
27954         config.h with HAVE_CONFIG_H.
27955
27956 2005-09-19  Jim Meyering  <jim@meyering.net>
27957
27958         * modules/pathmax (License): Change to LGPL.
27959
27960 2005-09-19  Derek Price  <derek@ximbiot.com>
27961
27962         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
27963
27964 2005-09-19  Bruno Haible  <bruno@clisp.org>
27965
27966         * gnulib-tool (import): Provide default for --tests-base.
27967
27968 2005-09-19  Bruno Haible  <bruno@clisp.org>
27969
27970         * doc/quote.texi: New file, extracted from gnulib.texi.
27971         * doc/ctime.texi: New file, extracted from gnulib.texi.
27972         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
27973         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
27974         * doc/gnulib.texi: Include them.
27975
27976 2005-09-18  Bruno Haible  <bruno@clisp.org>
27977
27978         Portability fix.
27979         * gnulib-tool (func_readlink): New function.
27980         (func_ln_if_changed): Use it.
27981
27982 2005-09-18  Bruno Haible  <bruno@clisp.org>
27983
27984         * gnulib-tool: Support --with-tests also with --import.
27985         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
27986         (func_import): Use variables $testsbase and $inctests. Emit a
27987         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
27988         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
27989         SUBDIRS += $testsdir.
27990         (func_create_testdir): Update.
27991
27992 2005-09-18  Bruno Haible  <bruno@clisp.org>
27993
27994         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
27995         instead of $dry_run.
27996         (func_cp_if_changed, func_mv_if_changed): Remove functions.
27997         (func_ln_if_changed): Don't handle dry-run here.
27998         (func_import): In dry-run mode, detect more precisely which actions
27999         would be performed, and don't use "...ing" verbs.
28000
28001 2005-09-18  Bruno Haible  <bruno@clisp.org>
28002
28003         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
28004         (func_import): Use join on two temporary files instead of three nested
28005         loops, in order to determine which files are new or old.
28006
28007 2005-09-18  Bruno Haible  <bruno@clisp.org>
28008
28009         * gnulib-tool (func_import): Comment out code that spits out the
28010         new files with --dry-run.
28011
28012 2005-09-18  Bruno Haible  <bruno@clisp.org>
28013
28014         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
28015
28016 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28017
28018         * lib/stat-time.h: New file.
28019         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
28020         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
28021         in a different way.
28022         (timespec_cmp): New function.
28023         * lib/utimecmp.c: Include stat-time.h.
28024         (SYSCALL_RESOLUTION): Depend on whether various struct stat
28025         members exist, not on the obsolescent ST_MTIM_NSEC.
28026         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
28027
28028 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28029
28030         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
28031
28032 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
28033
28034         * MODULES.html.sh (File system functions): Add stat-time.
28035         * modules/stat-time: New file.
28036         * modules/timespec (Files): Remove m4/st_mtim.m4; this
28037         is now done in a different way, by the stat-time module.
28038         * modules/utimecmp (Depends-on): Add stat-time.
28039
28040 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
28041
28042         * m4/st_mtim.m4: Remove.  Superseded by...
28043         * m4/stat-time.m4: New file.
28044         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
28045         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
28046
28047 2005-09-15  Derek Price  <derek@ximbiot.com>
28048
28049         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
28050
28051 2005-09-15  Derek Price  <derek@ximbiot.com>
28052
28053         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
28054         * lib/regex_internal.c: Ditto, using this...
28055         (__GNUC_PREREQ): ...new macro.
28056         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
28057         using...
28058         (__GNUC_PREREQ): ...this new macro.
28059
28060         * lib/strstr.h: Include string.h. Define strstr as a macro here.
28061
28062 2005-09-15  Derek Price  <derek@ximbiot.com>
28063             Paul Eggert  <eggert@cs.ucla.edu>
28064
28065         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
28066         changes, consolidating in...
28067         * lib/regex_internal.h: ...this file.
28068
28069 2005-09-13  Jim Meyering  <jim@meyering.net>
28070
28071         * lib/canon-host.c: Filter through gnu indent and reword comments
28072         slightly.
28073         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
28074
28075 2005-09-13  Derek Price  <derek@ximbiot.com>
28076
28077         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
28078         failure.
28079         Reported by Jim Meyering  <jim@meyering.net>.
28080
28081 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
28082
28083         * lib/base64.c: Typo.
28084         (base64_encode): Put b64str in initialized data section.
28085
28086 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
28087
28088         Merge glibc and coreutils changes into gnulib, plus a few
28089         extra fixes.
28090         * lib/md5.c: Use #error rather than a string.
28091         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
28092         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
28093         (__attribute__): Define to empty for non recent-GCC.
28094         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
28095         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
28096         Renamed from their non-__ counterparts, with new macros replacing
28097         them if not _LIBC.  Add __THROW attribute.
28098         (rol): Remove.
28099         (struct md5_ctx): Align buffer if using GCC.
28100         * lib/sha1.h (struct sha1_ctx): Likewise.
28101         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
28102         The old name was backwards.
28103         (NOTSWAP): Remove; not used.
28104         (rol): New macro, moved here from md5.h.
28105         (sha1_process_block): Remove a FIXME that doesn't make sense.
28106
28107 2005-09-12  Derek Price  <derek@ximbiot.com>
28108
28109         Return usable errors from canon-host.
28110         * lib/canon-host.h: New file.
28111         * lib/canon-host.c (canon_host): Wrap...
28112         (canon_host_r): ...this new function, which now relies exclusively on
28113         getaddrinfo.
28114         (ch_strerror): New function.
28115         (last_cherror): New global.
28116         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
28117         interface.
28118         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
28119         void *.
28120         (freeaddrinfo): Free ai->ai_canonname when set.
28121
28122 2005-09-12  Derek Price  <derek@ximbiot.com>
28123
28124         Make canon-host require getaddrinfo.
28125         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
28126         AC_LIBSOURCE canon-host.h.  Call...
28127         (gl_PREREQ_CANON_HOST): ...this new function, which requires
28128         gl_GETADDRINFO.
28129         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
28130
28131 2005-09-12  Derek Price  <derek@ximbiot.com>
28132
28133         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
28134         LGPL.
28135         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
28136
28137 2005-09-12  Derek Price  <derek@ximbiot.com>
28138
28139         * lib/gai_strerror.c: Include config.h when available.  Include
28140         getaddrinfo.h before other headers to test interface.
28141         Reported by Larry Jones <lawrence.jones@ugs.com>.
28142
28143 2005-09-12  Derek Price  <derek@ximbiot.com>
28144             Paul Eggert  <eggert@cs.ucla.edu>
28145
28146         * modules/glob (Files): Add glob-libc.h.
28147
28148 2005-09-12  Derek Price  <derek@ximbiot.com>
28149             Paul Eggert  <eggert@cs.ucla.edu>
28150
28151         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
28152         glob_.h, glob-libc.h.
28153         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
28154
28155 2005-09-12  Derek Price  <derek@ximbiot.com>
28156             Paul Eggert  <eggert@cs.ucla.edu>
28157
28158         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
28159         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
28160         protecting things that should be done only in gnulib contexts.
28161         * lib/glob_.h: New file, containing only the glob things needed for
28162         gnulib.
28163         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
28164         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
28165         (glob, globfree, glob_pattern_p): Now defined simply in terms of
28166         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
28167         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
28168         and to respect the namespace rules better.
28169
28170 2005-09-08  Simon Josefsson  <jas@extundo.com>
28171
28172         * modules/socklen: New file.
28173
28174 2005-09-08  Simon Josefsson  <jas@extundo.com>
28175
28176         * m4/socklen.m4: New file.
28177
28178 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28179
28180         * modules/utimens (Files): Add m4/utimbuf.m4, since
28181         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
28182         Reported by Sergey Poznyakoff.
28183
28184 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28185
28186         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
28187         definitions, since that's the preferred style in glibc.
28188         Fix a minor spacing issue, and update copyright notice to match
28189         glibc's.
28190
28191 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28192
28193         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
28194
28195 2005-09-06  Simon Josefsson  <jas@extundo.com>
28196
28197         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
28198         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
28199
28200 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
28201
28202         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
28203         warning.
28204
28205 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
28206
28207         * config/srclist.txt: Add glibc bug 1302.
28208
28209 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
28210
28211         Change bitset word type from unsigned int to unsigned long int,
28212         as this has better performance on typical 64-bit hosts.
28213         Port bitset code to hosts with unusual word sizes.
28214         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
28215         (build_collating_symbol):
28216         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
28217         argument is a bitset.  This is merely a style issue, but it makes
28218         it clearer that an entire array is expected.
28219         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
28220         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
28221         Port to the case where bitset_word is not the same as unsigned int.
28222         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
28223         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
28224         Likewise.
28225         * lib/regexec.c (check_dst_limits_calc_pos_1,
28226         check_subexp_matching_top):
28227         (build_trtable, group_nodes_into_DFAstates):
28228         Likewise.
28229         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
28230         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
28231         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
28232         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
28233         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
28234         * lib/regcomp.c (optimize_subexps, lower_subexp):
28235         Work even if bitset_word has holes in its bitwise representation.
28236         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
28237         * lib/regexec.c (check_dst_limits_calc_pos_1,
28238         check_subexp_matching_top):
28239         Likewise.
28240         * lib/regex_internal.c (re_string_reconstruct):
28241         Don't assume UCHAR_MAX == 255.
28242         * lib/regex_internal.h (bitset_set_all): Likewise.
28243         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
28244         All uses changed.
28245         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
28246         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
28247         All uses changed.
28248         (BITSET_WORD_MAX): New macro.
28249         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
28250         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
28251         (bitset_empty, bitset_copy):
28252         Prefer sizeof (bitset) to multiplying it out ourselves.
28253         (bitset_not_merge): Remove; unused.
28254         (bitset_contain): Return bool, not unsigned int with one bit on.
28255         All callers changed.
28256         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
28257         alignment than re_node_set; do this by defining a new internal
28258         type struct dests_alloc and using it to allocate memory.
28259
28260 2005-09-05  Bruno Haible  <bruno@clisp.org>
28261
28262         * gnulib-tool (func_import): Fix comparison in handling of symbolic
28263         links.
28264
28265 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
28266
28267         * modules/size_max (Makefile.am): Add size_max.h
28268
28269 2005-09-04  Derek Price  <derek@ximbiot.com>
28270
28271         * gnulib-tool (func_import): Fix reversed $symbolic logic.
28272
28273 2005-09-03  Simon Josefsson  <jas@extundo.com>
28274
28275         * gnulib-tool: Fix typo.
28276
28277 2005-09-03  Simon Josefsson  <jas@extundo.com>
28278
28279         * config/srclist.txt: Add glibc bug 1293.
28280
28281 2005-09-03  Derek Price  <derek@ximbiot.com>
28282
28283         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
28284         From Larry Jones <lawrence.jones@ugs.com>.
28285
28286 2005-09-02  Simon Josefsson  <jas@extundo.com>
28287
28288         * modules/socklen: New file.
28289
28290 2005-09-02  Simon Josefsson  <jas@extundo.com>
28291
28292         * modules/havelib: New module.
28293
28294         * modules/gettext, modules/iconv, modules/lock, modules/readline:
28295         Use havelib.
28296
28297 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
28298
28299         Check for arithmetic overflow when calculating sizes, to prevent
28300         some buffer-overflow issues.  These patches are conservative, in the
28301         sense that when I couldn't determine whether an overflow was possible,
28302         I inserted a run-time check.
28303         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
28304         macros.
28305         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
28306         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
28307         (re_xnrealloc, re_x2nrealloc): New inline functions.
28308         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
28309         parse_bracket_exp):
28310         (build_equiv_class, build_charclass): Check for arithmetic overflow
28311         in size expression calculations.
28312         * lib/regex_internal.c (re_string_realloc_buffers):
28313         (build_wcs_upper_buffer, re_node_set_add_intersect):
28314         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
28315         (re_dfa_add_node, register_state): Likewise.
28316         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
28317         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
28318         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
28319         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
28320
28321 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
28322
28323         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
28324         m4/ulonglong.m4.  Problem reported by Martin Lambers.
28325
28326 2005-09-02  Bruno Haible  <bruno@clisp.org>
28327
28328         Support for lib vs. lib64 distinction on biarch platforms.
28329         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
28330         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
28331         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
28332
28333 2005-09-02  Bruno Haible  <bruno@clisp.org>
28334
28335         * gnulib-tool (import): In the other first-use case, provide defaults
28336         as well.
28337
28338 2005-09-02  Bruno Haible  <bruno@clisp.org>
28339
28340         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
28341         patches not yet found in the latest gettext release.
28342
28343 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28344
28345         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
28346         to avoid a collision with bits/local_lim.h in glibc.
28347         All uses changed.  Problem reported by Dmitry V. Levin in
28348         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
28349
28350         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
28351         bugs in int versus size_t comparisons.
28352         (re_string_context_at): Fix bug where the code assumed that
28353         Idx is signed.
28354
28355         Use bool where appropriate.
28356         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
28357         All callers changed.
28358         (calc_eclosure_iter): Likewise, for ROOT arg.
28359         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
28360         (build_charclass_op): Likewise, for NON_MATCH arg.
28361         * lib/regex_internal.c (re_string_allocate, re_string_construct):
28362         (re_string_construct_common): Likewise, for ICASE arg.
28363         * lib/regexec.c (re_search_2_stub, re_search_stub):
28364         Likewise, for RET_LEN arg.
28365         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
28366         (set_regs): Likewise, for FL_BACKTRACK arg.
28367         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
28368         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
28369         (calc_eclosure_iter, parse_bracket_exp):
28370         Use bool for internal variables that are booleans.
28371         * lib/regexec.c (re_search_internal, check_matching,
28372         proceed_next_node):
28373         (set_regs, build_sifted_states, sift_states_bkref):
28374         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
28375         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
28376         (find_collation_sequence_value):
28377         Likewise.
28378         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
28379         (re_node_set_compare):
28380         Return bool, not int. All callers changed.
28381         * lib/regexec.c (check_halt_node_context, check_dst_limits):
28382         (build_trtable, check_node_accept): Likewise.
28383         * lib/regex_internal.h: Include stdbool.h.
28384
28385         Fix bugs uncovered when converting to bool.
28386         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
28387         failure instead of charging ahead blindly.
28388         * lib/regex_internal.c (register_state): Likewise.
28389         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
28390         for freeing internal storage.
28391         (group_nodes_into_DFA_states): Use unsigned int, not int, for
28392         bitset pieces used as boolean, to avoid undefined behavior
28393         on hosts that do int overflow checking.
28394
28395 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28396
28397         * config/srclist.txt: Add glibc bugs 1285-1287.
28398
28399 2005-09-01  Jim Meyering  <jim@meyering.net>
28400
28401         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
28402         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
28403         Require gl_STAT_MACROS, too.
28404
28405 2005-09-01  Bruno Haible  <bruno@clisp.org>
28406
28407         * gnulib-tool (import): In the first-use case, provide defaults.
28408
28409 2005-09-01  Bruno Haible  <bruno@clisp.org>
28410
28411         * gnulib-tool (func_import): Remove the .tmp files.
28412
28413 2005-09-01  Bruno Haible  <bruno@clisp.org>
28414
28415         * gnulib-tool (func_import): Fix handling of symbolic links.
28416
28417 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28418
28419         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
28420         old glibc regex code mishandles strings longer than 2**31 bytes.
28421         This patch fixes this when the regex code is used in gnulib
28422         (i.e., outside glibc).
28423
28424         This patch should not affect the use of the regex code inside
28425         glibc.  No doubt this problem also needs to be handled for glibc
28426         as well, but the result will be an incompatible change to the
28427         glibc ABI, and the old ABI will have to be supported too.  That
28428         can be the the subject for another patch.
28429
28430         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
28431         governing whether the rest of this patch is active.  By default,
28432         the macro is disabled and the patch has no effect.
28433         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
28434         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
28435         (struct re_pattern_buffer, re_search, re_search_2, re_match):
28436         (re_match_2, re_set_registers): Use the new types.
28437         * lib/regex_internal.h (Idx, re_hashval_t): New types.
28438         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
28439         New macros.
28440         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
28441         (re_string_context_at, bin_tree_t, re_dfastate_t):
28442         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
28443         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
28444         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
28445         (re_string_char_size_at, re_string_wchar_at):
28446         (re_string_elem_size_at):
28447         Use the new types and macros to port to 64-bit hosts.
28448         Use unsigned types for internal values, so that the code
28449         mostly works even for arrays larger than SSIZE_MAX.
28450         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
28451         (search_duplicated_node, calc_eclosure_iter, fetch_number):
28452         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
28453         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
28454         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
28455         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
28456         (calc_inveclosure, parse_dup_op, build_range_exp):
28457         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
28458         (fetch_number, create_token_tree, mark_opt_subexp):
28459         Likewise.
28460         * lib/regex_internal.c (re_string_construct_common,
28461         create_ci_newstate):
28462         (create_cd_newstate, re_string_allocate, re_string_construct):
28463         (re_string_realloc_buffers, build_wcs_upper_buffer):
28464         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
28465         (re_string_reconstruct, re_string_peek_byte_case):
28466         (re_string_fetch_byte_case, re_string_context_at):
28467         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
28468         (re_node_set_init_copy, re_node_set_add_intersect):
28469         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
28470         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
28471         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
28472         (re_acquire_state, re_acquire_state_context, register_state):
28473         Likewise.
28474         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
28475         search_cur_bkref_entry):
28476         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
28477         (re_search_internal, re_search_2_stub, re_search_stub)
28478         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
28479         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
28480         (update_cur_sifted_state, check_dst_limits):
28481         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
28482         (check_subexp_limits, sift_states_bkref, merge_state_array):
28483         (check_subexp_matching_top, get_subexp, get_subexp_sub):
28484         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
28485         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
28486         (expand_bkref_cache, check_node_accept_bytes):
28487         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
28488         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
28489         (acquire_init_state_context, check_halt_node_context):
28490         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
28491         (sift_states_backward, clean_state_log_if_needed):
28492         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
28493         (find_recover_state, transit_state_sb, transit_state_mb):
28494         (transit_state_bkref, build_trtable, match_ctx_clean):
28495         Likewise.
28496         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
28497         to work around an assumption that REG_MISSING is negative.
28498
28499         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
28500         (seek_collating_symbol_entry) [defined _LIBC]:
28501         (lookup_collation_sequence_value) [defined _LIBC]:
28502         (build_range_exp, build_collating_symbol) [defined _LIBC]:
28503         Use prototypes rather than old-style function definitions.
28504         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
28505         (transit_state_sb) [0]:
28506         (find_collation_sequence_value) [defined _LIBC]: Likewise.
28507
28508         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
28509         rm_eo.
28510
28511         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
28512         (optimize_subexps, lower_subexp):
28513         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
28514         since the signed shift might overflow.  Use 1u<<31 instead.
28515         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
28516         Likewise.
28517         * lib/regexec.c (check_dst_limits_calc_pos_1,
28518         check_subexp_matching_top): Likewise.
28519
28520         * lib/regcomp.c (optimize_subexps, lower_subexp):
28521         Use CHAR_BIT rather than 8, for clarity.
28522         * lib/regexec.c (check_dst_limits_calc_pos_1):
28523         (check_subexp_matching_top): Likewise.
28524         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
28525         have to worry about portability issues when shifting it left.
28526         Remove no-longer-needed test for table_size > 0.
28527         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
28528         in a word, as the resulting behavior is undefined.
28529         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
28530         in one case, a <= should have been an <, and in another case the
28531         whole test was missing.
28532         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
28533         the standard name CHAR_BIT.
28534         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
28535         this is not true on one's complement and signed-magnitude hosts.
28536
28537         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
28538         next_last_offset.
28539         (struct re_dfa_t): Remove unused member states_alloc.
28540         * lib/regcomp.c (init_dfa): Don't initialize unused members.
28541
28542 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28543
28544         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
28545         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
28546         and large-file glibc and in 32-bit large-file Solaris.
28547
28548 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28549
28550         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
28551         lengths fit in regoff_t; this isn't true if regoff_t is the same
28552         width as size_t.
28553         * lib/regex.c (re_search_internal): 5th arg is LAST_START
28554         (= START + RANGE) instead of RANGE.  This avoids overflow
28555         problems when regoff_t is the same width as size_t.
28556         All callers changed.
28557         (re_search_2_stub): Check for overflow when adding the
28558         sizes of the two strings.
28559         (re_search_stub): Check for overflow when adding START
28560         to RANGE; if it occurs, substitute the extreme value.
28561
28562 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28563
28564         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
28565
28566 2005-08-31  Jim Meyering  <jim@meyering.net>
28567
28568         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
28569         a pointer-to-const.
28570         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
28571         (register_state): Likewise.
28572         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
28573         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
28574         (group_nodes_into_DFAstates): Likewise.
28575
28576 2005-08-31  Jim Meyering  <jim@meyering.net>
28577
28578         * check-module: Add a FIXME comment.
28579
28580 2005-08-31  Eric Blake  <ebb9@byu.net>
28581
28582         * modules/unistd-safer (Files): Add unistd--.h.
28583         * modules/stdio-safer (Files): Add stdio--.h.
28584
28585 2005-08-31  Derek Price  <derek@ximbiot.com>
28586
28587         * lib/getdelim.c (getdelim): Return EOF on EOF.
28588         Reported by Larry Jones <lawrence.jones@ugs.com>.
28589
28590 2005-08-31  Bruno Haible  <bruno@clisp.org>
28591
28592         Avoid unnecessary diffs in the generated lib/Makefile.am.
28593         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
28594         the generated files.
28595         (func_import): Don't set cmd.
28596
28597 2005-08-31  Bruno Haible  <bruno@clisp.org>
28598
28599         * lib/strstr.c: Include <stddef.h>, for NULL.
28600         * lib/strcasestr.c: Likewise.
28601         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28602
28603 2005-08-31  Bruno Haible  <bruno@clisp.org>
28604
28605         * gnulib-tool: New option --macro-prefix.
28606         (func_import): Use macro_prefix.
28607         (import): Handle option --macro-prefix.
28608
28609 2005-08-31  Bruno Haible  <bruno@clisp.org>
28610
28611         * gnulib-tool (import): Rename most ac_* variables to cached_*.
28612         Also use new variables cached_lgpl, cached_libtool.
28613
28614 2005-08-31  Bruno Haible  <bruno@clisp.org>
28615
28616         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
28617         always instantiating them.
28618
28619 2005-08-31  Bruno Haible  <bruno@clisp.org>
28620
28621         * gnulib-tool (func_import): Read the previous cached settings
28622         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
28623         earlier added by gnulib but are now dropped. Warn when a gnulib file
28624         overwrites a non-gnulib file.
28625
28626 2005-08-31  Bruno Haible  <bruno@clisp.org>
28627
28628         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
28629         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
28630         projects that don't keep autogenerated files in CVS. Put into
28631         actioncmd only the specified modules, not the transitive closure.
28632
28633 2005-08-31  Bruno Haible  <bruno@clisp.org>
28634
28635         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
28636         Create directories that shall be filled.
28637         (import): Don't look for gl_* macros in configure.ac. Recurse across
28638         all directories containing a gnulib-cache.m4 files, if meaningful.
28639
28640 2005-08-31  Bruno Haible  <bruno@clisp.org>
28641
28642         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
28643         (import): Set seen_libtool when we see gl_LIBTOOL.
28644
28645 2005-08-31  Bruno Haible  <bruno@clisp.org>
28646
28647         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
28648         declaration macro definitions from generated gnulib.m4.
28649
28650 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
28651
28652         * lib/iconvme.h: Add prototype for iconv_alloc.
28653
28654 2005-08-29  Simon Josefsson  <jas@extundo.com>
28655
28656         * lib/iconvme.c: Fix errno.
28657
28658 2005-08-29  Bruno Haible  <bruno@clisp.org>
28659
28660         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
28661         that it works when the directory contains spaces.
28662
28663 2005-08-29  Bruno Haible  <bruno@clisp.org>
28664
28665         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
28666
28667 2005-08-29  Bruno Haible  <bruno@clisp.org>
28668
28669         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
28670         Emit more advice.
28671
28672 2005-08-29  Bruno Haible  <bruno@clisp.org>
28673         and Stepan Kasal  <kasal@ucw.cz>
28674
28675         * check-module: If more parameters are given, check each of them
28676         separately; add more exceptions, as noted by Jim Meyering.
28677         (check_module): New procedure.
28678         (%exempt_header): Now contains all exceptions.
28679
28680 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
28681
28682         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
28683
28684 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
28685
28686         * lib/iconvme.c: Split iconv_string into iconv_alloc.
28687
28688 2005-08-28  Bruno Haible  <bruno@clisp.org>
28689
28690         * m4/gnulib-tool.m4: New file.
28691
28692 2005-08-27  Jim Meyering  <jim@meyering.net>
28693
28694         * modules/unistd-safer (Files): Add pipe-safer.c.
28695         * modules/fcntl-safer (Files): Add creat-safer.c.
28696
28697 2005-08-27  Jim Meyering  <jim@meyering.net>
28698
28699         * m4/stdlib-safer.m4: New file.  From coreutils.
28700         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
28701         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
28702         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
28703         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
28704         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
28705
28706 2005-08-27  Jim Meyering  <jim@meyering.net>
28707
28708         * lib/fopen-safer.c: Merge minor changes from coreutils.
28709         * lib/dup-safer.c: Likewise.
28710         * lib/fd-safer.c: Likewise.
28711
28712         Merge from coreutils.
28713         * lib/stdio--.h: New file.
28714         * lib/stdlib--.h: New file.
28715         * lib/mkstemp-safer.c: New file.
28716
28717         GNU tar needs these.
28718         * lib/pipe-safer.c: New file.
28719         * lib/creat-safer.c: New file.
28720         * lib/fcntl--.h (creat): Define to creat_safer.
28721         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
28722         * lib/unistd--.h (pipe): Define to pipe_safer.
28723         * lib/unistd-safer.h: Declare pipe_safer.
28724
28725 2005-08-26  Simon Josefsson  <jas@extundo.com>
28726
28727         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
28728         Haible <bruno@clisp.org>.
28729
28730 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
28731
28732         * lib/regex_internal.h: Remove all references to
28733         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
28734         or better.
28735         (bitset_not, bitset_merge, bitset_not_merge):
28736         (bitset_mask, re_string_allocate, re_string_construct):
28737         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
28738         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
28739         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
28740         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
28741         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
28742         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
28743         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
28744         (re_acquire_state_context):
28745         Remove unnecessary forward decls.
28746         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
28747         Put __attribute at function definition,
28748         now that the function decl has been removed.
28749         * lib/regex_internal.c (re_string_peek_byte_case):
28750         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
28751         Likewise.
28752
28753 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
28754
28755         * m4/regex.m4: Add AC_PREREQ(2.50).
28756         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
28757
28758 2005-08-25  Simon Josefsson  <jas@extundo.com>
28759
28760         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
28761         __fsetlocking.
28762
28763 2005-08-25  Simon Josefsson  <jas@extundo.com>
28764
28765         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
28766         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
28767         GLIBC specific code.
28768
28769 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28770
28771         Make regex safe for g++.  This fixes one real bug (an "err"
28772         that should have been "*err").  g++ problem reported by
28773         Sam Steingold.
28774         * lib/regex_internal.h (re_calloc): New macro, consistent with
28775         re_malloc etc.  All callers of calloc changed to use re_calloc.
28776         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
28777         not int.  All callers changed.
28778         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
28779         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
28780         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
28781         (find_recover_state): Change "err" to "*err"; this fixes what
28782         appears to be a real bug.
28783         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
28784         versus int.
28785
28786 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28787
28788         * modules/regex (Depends-on): Add malloc, since the code
28789         assumes that !malloc(0) means failure.
28790
28791 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28792
28793         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
28794
28795         alloca modernization/simplification for regex.
28796         * lib/regex.c: Remove portability cruft for alloca.  This no longer
28797         needs to be at the start of the file, and can be moved into
28798         regex_internal.h and simplified.
28799         * lib/regex_internal.h: Include <alloca.h>.
28800         (__libc_use_alloca) [!defined _LIBC]: New macro.
28801         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
28802         now works outside glibc.
28803
28804 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28805
28806         * config/srclist.txt: Add glibc bugs 1241, 1245.
28807
28808 2005-08-25  Jim Meyering  <jim@meyering.net>
28809
28810         * lib/open-safer.c: Include <config.h>.
28811         Otherwise, we'd lose LARGEFILE support in any file using
28812         e.g. "fcntl--.h"
28813
28814 2005-08-25  Bruno Haible  <bruno@clisp.org>
28815
28816         * m4/minmax.m4: Require autoconf 2.52.
28817         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
28818         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
28819         alternatives of translit over the alphabet.
28820         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
28821
28822 2005-08-24  Simon Josefsson  <jas@extundo.com>
28823
28824         * tests/test-getpass.c: New file.
28825
28826 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28827
28828         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
28829         for GNU regex features.
28830
28831 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28832
28833         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
28834         * lib/regex.h (regerror): Likewise.
28835
28836         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
28837         requires this.  (The code never needed it.)
28838
28839         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
28840         All uses of recently-renamed identifiers changed to use the new,
28841         POSIX-compliant names.  The code will build and run just fine
28842         without these changes, but it's better to eat our own dog food
28843         and use the standard-conforming names.
28844
28845         * lib/regex.h: Fix a multitude of POSIX name space violations.
28846         These changes have an effect only for programs that define
28847         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
28848         do not change anything for programs compiled in the normal way.
28849         Also, there is no effect on the ABI.
28850
28851         (_REGEX_SOURCE): New macro.
28852         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
28853         defined and _GNU_SOURCE is not; this fixes a name space violation.
28854
28855         Rename the following macros to obey POSIX requirements.
28856         The old names are still visible as macros if _REGEX_SOURCE is defined.
28857         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
28858         RE_BACKSLASH_ESCAPE_IN_LISTS.
28859         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
28860         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
28861         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
28862         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
28863         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
28864         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
28865         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
28866         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
28867         (REG_INTERVALS): renamed from RE_INTERVALS.
28868         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
28869         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
28870         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
28871         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
28872         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
28873         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
28874         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
28875         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
28876         RE_UNMATCHED_RIGHT_PAREN_ORD.
28877         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
28878         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
28879         (REG_DEBUG): renamed from RE_DEBUG.
28880         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
28881         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
28882         unusual, since we can't clash with the POSIX REG_ICASE.
28883         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
28884         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
28885         (REG_NO_SUB): renamed from RE_NO_SUB.
28886         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
28887         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
28888         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
28889         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
28890         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
28891         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
28892         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
28893         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
28894         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
28895         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
28896         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
28897         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
28898         RE_SYNTAX_POSIX_MINIMAL_BASIC.
28899         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
28900         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
28901         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
28902         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
28903         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
28904         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
28905         (REG_FIXED): Renamed from REGS_FIXED.
28906         (REG_NREGS): Renamed from RE_NREGS.
28907
28908         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
28909         of other REG_* macros, since POSIX says the user is allowed to
28910         #undef these macros selectively.
28911
28912         (reg_errcode_t): Update comment stating what other tables need
28913         to be consistent.
28914
28915         Rename the following enum values to obey POSIX requirements.
28916         The old names are still visible as macros.
28917         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
28918         is not defined, since GNU is supposed to be a superset of POSIX as
28919         much as possible, and since we want reg_errcode_t to be a signed
28920         type for implementation consistency.
28921         (_REG_NOERROR): Renamed from REG_NOERROR.
28922         (_REG_NOMATCH): Renamed from REG_NOMATCH.
28923         (_REG_BADPAT): Renamed from REG_BADPAT.
28924         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
28925         (_REG_ECTYPE): Renamed from REG_ECTYPE.
28926         (_REG_EESCAPE): Renamed from REG_EESCAPE.
28927         (_REG_ESUBREG): Renamed from REG_ESUBREG.
28928         (_REG_EBRACK): Renamed from REG_EBRACK.
28929         (_REG_EPAREN): Renamed from REG_EPAREN.
28930         (_REG_EBRACE): Renamed from REG_EBRACE.
28931         (_REG_BADBR): Renamed from REG_BADBR.
28932         (_REG_ERANGE): Renamed from REG_ERANGE.
28933         (_REG_ESPACE): Renamed from REG_ESPACE.
28934         (_REG_BADRPT): Renamed from REG_BADRPT.
28935         (_REG_EEND): Renamed from REG_EEND.
28936         (_REG_ESIZE): Renamed from REG_ESIZE.
28937         (_REG_ERPAREN): Renamed from REG_ERPAREN.
28938         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
28939         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
28940         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
28941         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
28942
28943         (_REG_RE_NAME, _REG_RM_NAME): New macros.
28944         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
28945         changed.  But support the old name if the new one is not defined
28946         and if _REGEX_SOURCE.
28947
28948         Change the following member names in struct re_pattern_buffer.
28949         The old names are still supported if !_REGEX_SOURCE.
28950         The new names are always supported, regardless of _REGEX_SOURCE.
28951         (re_buffer): Renamed from buffer.
28952         (re_allocated): Renamed from allocated.
28953         (re_used): Renamed from used.
28954         (re_syntax): Renamed from syntax.
28955         (re_fastmap): Renamed from fastmap.
28956         (re_translate): Renamed from translate.
28957         (re_can_be_null): Renamed from can_be_null.
28958         (re_regs_allocated): Renamed from regs_allocated.
28959         (re_fastmap_accurate): Renamed from fastmap_accurate.
28960         (re_no_sub): Renamed from no_sub.
28961         (re_not_bol): Renamed from not_bol.
28962         (re_not_eol): Renamed from not_eol.
28963         (re_newline_anchor): Renamed from newline_anchor.
28964
28965         Change the following member names in struct re_registers.
28966         The old names are still supported if !_REGEX_SOURCE.
28967         The new names are always supported, regardless of _REGEX_SOURCE.
28968         (rm_num_regs): Renamed from num_regs.
28969         (rm_start): Renamed from start.
28970         (rm_end): Renamed from end.
28971
28972         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
28973         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
28974         Prepend __ to parameter names.
28975
28976         Undo yesterday's changes.
28977
28978 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28979
28980         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
28981         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
28982         lib/regex.c.
28983
28984 2005-08-24  Jim Meyering  <jim@meyering.net>
28985
28986         Sync from coreutils.
28987         * m4/fcntl-safer.m4: New file.
28988
28989         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
28990         and object files for this module.
28991
28992 2005-08-24  Jim Meyering  <jim@meyering.net>
28993
28994         Sync from coreutils.
28995         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
28996
28997 2005-08-24  Jim Meyering  <jim@meyering.net>
28998
28999         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
29000         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
29001
29002 2005-08-24  Jim Meyering  <jim@meyering.net>
29003
29004         * modules/fcntl-safer: New module.
29005         * modules/fts (Depends-on): Add fcntl-safer.
29006         * MODULES.html.sh (File descriptor based Input/Output):
29007         Add fcntl-safer.
29008
29009 2005-08-24  Bruno Haible  <bruno@clisp.org>
29010
29011         Support for unit test modules.
29012         * modules/README: Mention tests modules.
29013         * modules/TEMPLATE-TESTS: New file.
29014         * gnulib-tool: New options --extract-tests-module, --with-tests and
29015         --tests-base (unused for the moment).
29016         (testsbase, inctests): New variables.
29017         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
29018         (func_verify_module): Exclude TEMPLATE-TESTS.
29019         (func_verify_nontests_module, func_verify_tests_module): New functions.
29020         (func_get_dependencies): Add implicit dependency for tests modules.
29021         (func_get_tests_module): New function.
29022         (func_modules_transitive_closure): When --with-tests was specified,
29023         include the unit tests as well, unless explicitly avoided.
29024         (func_emit_lib_Makefile_am): Ignore the tests modules here.
29025         (func_emit_tests_Makefile_am): New function.
29026         (func_create_testdir): When --with-tests was specified, emit a
29027         tests/ directory.
29028         * MODULES.html.sh (Future developments): Update.
29029
29030 2005-08-24  Bruno Haible  <bruno@clisp.org>
29031
29032         * modules/tls-tests: New file.
29033         * tests/test-tls.c: New file, from GNU gettext.
29034
29035 2005-08-24  Bruno Haible  <bruno@clisp.org>
29036
29037         * modules/lock-tests: New file.
29038         * tests/test-lock.c: New file, from GNU gettext.
29039
29040 2005-08-24  Bruno Haible  <bruno@clisp.org>
29041
29042         * lib/lock.h: Add multiple inclusion guard.
29043         * lib/tls.h: Add multiple inclusion guard.
29044
29045 2005-08-24  Bruno Haible  <bruno@clisp.org>
29046
29047         * gnulib-tool: Add support for the --aux-dir option to
29048         --create-testdir, --create-megatestdir, --test, --megatest.
29049         (func_create_testdir, func_create_megatestdir): Optionally emit a
29050         AC_CONFIG_AUX_DIR directive.
29051         (create-testdir, create-megatestdir, test, megatest): Provide a
29052         default value for $auxdir.
29053
29054 2005-08-24  Bruno Haible  <bruno@clisp.org>
29055
29056         * gnulib-tool (import): Use compound statement instead of subshell
29057         where possible.
29058
29059 2005-08-24  Bruno Haible  <bruno@clisp.org>
29060
29061         * gnulib-tool (import): Change --aux-dir default to "build-aux".
29062
29063 2005-08-24  Bruno Haible  <bruno@clisp.org>
29064
29065         * gnulib-tool (func_version): Update.
29066
29067 2005-08-24  Bruno Haible  <bruno@clisp.org>
29068
29069         * gnulib-tool (func_import, func_create_testdir,
29070         func_create_megatestdir): Quote all autoconf macro arguments.
29071
29072 2005-08-24  Bruno Haible  <bruno@clisp.org>
29073
29074         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
29075         option --force, because --force causes the aclocal.m4 of each
29076         subdirectory to be newer than the corresponding config.h.in.
29077
29078 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29079
29080         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
29081         All contents moved to gl_REGEX.
29082         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
29083         assume that it does.
29084
29085 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29086
29087         * lib/regex.h (REG_NOSYS)
29088         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
29089         Define, since POSIX requires it as of 2001.
29090         (_REG_ENOSYS)
29091         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
29092         New private symbol, used to keep the enum signed in all cases.
29093         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
29094         Youngman in
29095         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
29096
29097         * lib/regex_internal.c (re_string_skip_chars, register_state):
29098         (calc_state_hash):
29099         Remove forward decls; no longer needed now that we use prototypes.
29100         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
29101         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
29102         (clean_state_log_if_needed): Likewise.
29103
29104 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
29105
29106         * config/srclist.txt: Add glibc bugs 1231-1233.
29107
29108 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29109
29110         Fix problems reported by Sam Steingold in
29111         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
29112         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
29113         assumed that reg_errcode_t is a signed type, which is not
29114         necessarily true if _XOPEN_SOURCE is not defined.
29115         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
29116         since some compilers warn about it otherwise.
29117
29118 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29119
29120         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
29121         (init_word_char, create_initial_state, duplicate_node_closure):
29122         (fetch_token, peek_token_bracket, build_range_exp):
29123         (build_collating_symbol): Remove forward decls; no longer needed
29124         now that we use prototypes.
29125
29126         * lib/regcomp.c:
29127         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
29128         (re_compile_fastmap_iter, regcomp, regerror, regfree):
29129         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
29130         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
29131         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
29132         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
29133         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
29134         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
29135         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
29136         (build_range_exp, build_collating_symbol, parse_bracket_exp):
29137         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
29138         (build_charclass, build_charclass_op, fetch_number, create_tree):
29139         (create_token_tree, mark_opt_subexp, duplicate_tree):
29140         Use prototypes rather than old-style definitions.
29141
29142         * lib/regex_internal.c:
29143         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
29144         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
29145         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
29146         (re_string_reconstruct, re_string_peek_byte_case):
29147         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
29148         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
29149         (re_node_set_init_copy, re_node_set_add_intersect):
29150         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
29151         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
29152         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
29153         (re_acquire_state, re_acquire_state_context, register_state):
29154         (create_ci_newstate, create_cd_newstate, free_state):
29155         Likewise.
29156         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
29157         re_search_2):
29158         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
29159         (re_search_internal, prune_impossible_nodes):
29160         (acquire_init_state_context, check_matching, static):
29161         (check_halt_node_context, check_halt_state_context, proceed_next_node):
29162         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
29163         (update_regs, sift_states_backward, build_sifted_states):
29164         (clean_state_log_if_needed, merge_state_array):
29165         (update_cur_sifted_state, add_epsilon_src_nodes):
29166         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
29167         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
29168         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
29169         (find_recover_state, check_subexp_matching_top, transit_state_mb):
29170         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
29171         (check_arrival, check_arrival_add_next_nodes):
29172         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
29173         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
29174         (check_node_accept_bytes, check_node_accept, extend_buffers):
29175         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
29176         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
29177         (sift_ctx_init):
29178         Likewise.
29179
29180         * lib/regex_internal.h:
29181         (re_string_allocate, re_string_construct, re_string_reconstruct):
29182         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
29183         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
29184         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
29185         (re_string_context_at, re_string_peek_byte_case):
29186         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
29187         is defined, since we now use prototypes always.
29188
29189         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
29190         C89 or better.  All uses removed.
29191
29192 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29193
29194         * config/srclist.txt: Add glibc bugs 1220-1227.
29195
29196 2005-08-20  Jim Meyering  <jim@meyering.net>
29197
29198         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
29199         of unused local, dfa.
29200
29201 2005-08-20  Bruno Haible  <bruno@clisp.org>
29202
29203         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
29204
29205 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29206
29207         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
29208         (re_node_set_insert_last, re_dfa_add_node):
29209         Rename local variables to avoid GCC shadowing warnings.
29210
29211 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29212
29213         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
29214         [defined lint]: Suppress bogus uninitialized-variable warnings.
29215
29216         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
29217         and let the caller return REG_ESPACE if out of space.  This
29218         removes an uninitialied-variable warning with GCC 4.0.1, and also
29219         avoids taking the address of a local variable.  All callers
29220         changed.
29221
29222 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29223
29224         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
29225         $LIBCSRC/posix/regexec.c.
29226         Add glibc bug 1217 for regcomp.c.
29227
29228 2005-08-19  Jim Meyering  <jim@meyering.net>
29229
29230         * lib/regexec.c (proceed_next_node): Redo local variables to
29231         avoid GCC shadowing warnings.
29232
29233 2005-08-18  Bruno Haible  <bruno@clisp.org>
29234
29235         * lib/strstr.c (strstr): Fix return value in multibyte case.
29236         * lib/strcasestr.c (strcasestr): Likewise.
29237
29238 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29239
29240         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
29241
29242 2005-08-17  Jim Meyering  <jim@meyering.net>
29243
29244         Make the %s format (seconds since the epoch) work for a negative
29245         number and when used with a zero-padded field width, e.g. %015s.
29246
29247         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
29248         label so that it precedes the code to set `digits'.  Otherwise,
29249         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
29250         print `00-22'.  Now, it prints `-0022', as it should.
29251
29252 2005-08-17  Bruno Haible  <bruno@clisp.org>
29253
29254         * modules/strstr (Files): Add m4/mbrtowc.m4.
29255         (Depends-on): Add mbuiter.
29256
29257 2005-08-17  Bruno Haible  <bruno@clisp.org>
29258
29259         * modules/strcasestr: New file.
29260         * MODULES.html.sh (String handling, based on ANSI C 89): Add
29261         strcasestr.
29262
29263 2005-08-17  Bruno Haible  <bruno@clisp.org>
29264
29265         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
29266
29267 2005-08-17  Bruno Haible  <bruno@clisp.org>
29268
29269         * modules/mbuiter: New file.
29270         * MODULES.html.sh (Extended multibyte and wide character utilities):
29271         Add mbuiter.
29272
29273 2005-08-17  Bruno Haible  <bruno@clisp.org>
29274
29275         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
29276         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
29277
29278 2005-08-17  Bruno Haible  <bruno@clisp.org>
29279
29280         * m4/strcasestr.m4: New file.
29281
29282 2005-08-17  Bruno Haible  <bruno@clisp.org>
29283
29284         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
29285         * lib/strstr.c: Completely rewritten, with multibyte locale support.
29286
29287 2005-08-17  Bruno Haible  <bruno@clisp.org>
29288
29289         * lib/strcasestr.h: New file.
29290         * lib/strcasestr.c: New file.
29291
29292 2005-08-17  Bruno Haible  <bruno@clisp.org>
29293
29294         * lib/strcasecmp.c: Use mbuiter.h.
29295
29296 2005-08-17  Bruno Haible  <bruno@clisp.org>
29297
29298         * lib/mbuiter.h: New file.
29299
29300 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
29301
29302         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
29303         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
29304         and gl_GETOPT are both invoked via different paths (as happens
29305         with GNU tar CVS because it uses both argp and getopt), the former
29306         wins.
29307
29308 2005-08-16  Bruno Haible  <bruno@clisp.org>
29309
29310         * modules/tls: New file.
29311         * MODULES.html.sh (Multithreading): Add tls.
29312
29313 2005-08-16  Bruno Haible  <bruno@clisp.org>
29314
29315         * modules/strnlen1: New file.
29316         * MODULES.html.sh (String handling): Add strnlen1.
29317
29318 2005-08-16  Bruno Haible  <bruno@clisp.org>
29319
29320         * modules/strcase (Files): Add m4/mbrtowc.m4.
29321         (Depends-on): Add strnlen1, mbchar.
29322
29323 2005-08-16  Bruno Haible  <bruno@clisp.org>
29324
29325         * modules/mbiter: New file.
29326         * MODULES.html.sh (Extended multibyte and wide character utilities):
29327         Add mbiter.
29328
29329 2005-08-16  Bruno Haible  <bruno@clisp.org>
29330
29331         * modules/mbfile: New file.
29332         * MODULES.html.sh (Extended multibyte and wide character utilities):
29333         Add mbfile.
29334
29335 2005-08-16  Bruno Haible  <bruno@clisp.org>
29336
29337         * modules/mbchar: New file.
29338         * MODULES.html.sh (Extended multibyte and wide character utilities):
29339         New section.
29340
29341 2005-08-16  Bruno Haible  <bruno@clisp.org>
29342
29343         * m4/tls.m4: New file, from GNU gettext.
29344
29345 2005-08-16  Bruno Haible  <bruno@clisp.org>
29346
29347         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
29348         always.
29349         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
29350
29351 2005-08-16  Bruno Haible  <bruno@clisp.org>
29352
29353         * m4/mbiter.m4: New file.
29354
29355 2005-08-16  Bruno Haible  <bruno@clisp.org>
29356
29357         * m4/mbfile.m4: New file.
29358
29359 2005-08-16  Bruno Haible  <bruno@clisp.org>
29360
29361         * m4/mbchar.m4: New file.
29362
29363 2005-08-16  Bruno Haible  <bruno@clisp.org>
29364
29365         * lib/tls.h: New file, from GNU gettext.
29366         * lib/tls.c: New file, from GNU gettext.
29367
29368 2005-08-16  Bruno Haible  <bruno@clisp.org>
29369
29370         * lib/strnlen1.h: New file.
29371         * lib/strnlen1.c: New file.
29372
29373 2005-08-16  Bruno Haible  <bruno@clisp.org>
29374
29375         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
29376         (mbi_init): Update.
29377         (mbi_avail, mbi_advance): Let the iteration end before the terminating
29378         NUL byte, not after it.
29379
29380 2005-08-16  Bruno Haible  <bruno@clisp.org>
29381
29382         * lib/strcase.h (strcasecmp): Add note in comments.
29383         * lib/strncasecmp.c: Use code from strcasecmp.c.
29384         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
29385         (strcasecmp): Work correctly in multibyte locales.
29386
29387 2005-08-16  Bruno Haible  <bruno@clisp.org>
29388
29389         * lib/mbiter.h: New file.
29390
29391 2005-08-16  Bruno Haible  <bruno@clisp.org>
29392
29393         * lib/mbfile.h: New file.
29394
29395 2005-08-16  Bruno Haible  <bruno@clisp.org>
29396
29397         * lib/mbchar.h: New file.
29398         * lib/mbchar.c: New file.
29399
29400 2005-08-16  Bruno Haible  <bruno@clisp.org>
29401
29402         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
29403         the valid ones. Makes the comparison operations transitive:
29404         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
29405         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
29406
29407 2005-08-15  Simon Josefsson  <jas@extundo.com>
29408
29409         * modules/ssize_t (License): Change to 'unlimited'.
29410
29411         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
29412
29413 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29414
29415         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
29416         Add comments for each pending glibc patch.
29417
29418 2005-08-15  Bruno Haible  <bruno@clisp.org>
29419
29420         * lib/regex.h (__restrict_arr): Don't define to __restrict if
29421         __cplusplus is defined.
29422
29423 2005-08-14  Jim Meyering  <jim@meyering.net>
29424
29425         Sync from coreutils.
29426
29427         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
29428         Use the hash-table-based cycle-detection code not just when
29429         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
29430         Reported by James Youngman in
29431         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
29432         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
29433         FTS_TIGHT_CYCLE_CHECK.
29434         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
29435         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
29436         once again.
29437         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
29438         * lib/fts.c (fd_safer): Remove decl.
29439         Include fcntl--.h rather than unistd-safer.h
29440         (fts_safe_changedir): Don't call fd_safer; no longer needed
29441         now that we include fcntl--.h.
29442
29443 2005-08-12  Simon Josefsson  <jas@extundo.com>
29444
29445         * modules/getndelim2: Use ssize_t module.
29446         * modules/getnline: Likewise.
29447         * modules/safe-read: Likewise.
29448         * modules/xreadlink: Likewise.
29449
29450         * modules/ssize_t: New file.
29451
29452 2005-08-12  Simon Josefsson  <jas@extundo.com>
29453
29454         * m4/readline.m4: Look for termcap, curses or ncurses if required.
29455
29456 2005-08-12  Simon Josefsson  <jas@extundo.com>
29457
29458         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29459         ssize_t.
29460
29461 2005-08-12  Simon Josefsson  <jas@extundo.com>
29462
29463         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
29464         readline, getdelim and check_version.
29465         (Support for systems lacking ISO C 99: Sizes of integer types):
29466         Add size_max.
29467
29468 2005-08-12  Bruno Haible  <bruno@clisp.org>
29469
29470         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
29471
29472 2005-08-11  Simon Josefsson  <jas@extundo.com>
29473
29474         * modules/readline: New file.
29475
29476         * modules/strnlen (Files): Add strnlen.h.
29477
29478 2005-08-11  Simon Josefsson  <jas@extundo.com>
29479
29480         * m4/readline.m4: New file.
29481
29482 2005-08-11  Simon Josefsson  <jas@extundo.com>
29483
29484         * lib/readline.h, readline.c: New file.
29485
29486 2005-08-11  Simon Josefsson  <jas@extundo.com>
29487
29488         * doc/gnulib.texi (Initial import, Finishing touches): Mention
29489         gl_AVOID.
29490
29491 2005-08-11  Bruno Haible  <bruno@clisp.org>
29492
29493         * lib/strnlen.h (strnlen): Change parameter name to match comment.
29494
29495 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
29496
29497         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
29498
29499 2005-08-10  Simon Josefsson  <jas@extundo.com>
29500
29501         * tests/test-iconvme.c: New file.
29502
29503 2005-08-10  Simon Josefsson  <jas@extundo.com>
29504
29505         * m4/strnlen.m4: New file.
29506
29507         * m4/strndup.m4: Don't check for strnlen declaration, done in
29508         strnlen.m4.
29509
29510 2005-08-10  Simon Josefsson  <jas@extundo.com>
29511
29512         * lib/strndup.c: Use strnlen.h.
29513
29514         * lib/strnlen.h: New file.
29515
29516 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
29517
29518         * README: Typos.
29519
29520 2005-08-02  Simon Josefsson  <jas@extundo.com>
29521
29522         * modules/readline: New file.
29523
29524 2005-08-02  Simon Josefsson  <jas@extundo.com>
29525
29526         * modules/getdelim: New file.
29527
29528         * modules/getline: Rewrite, don't use getndelim2.
29529
29530 2005-08-02  Simon Josefsson  <jas@extundo.com>
29531
29532         * m4/getline.m4: Separate out getdelim stuff into separate module.
29533
29534         * m4/getdelim.m4: New file.
29535
29536 2005-08-02  Simon Josefsson  <jas@extundo.com>
29537
29538         * lib/getline.h, getline.c: Rewrite.
29539
29540         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
29541
29542 2005-07-31  Bruno Haible  <bruno@clisp.org>
29543
29544         * lib/lock.h (gl_lock_initializer): New macro.
29545         (gl_lock_define_initialized): Use it.
29546         (gl_rwlock_initializer): New macro.
29547         (gl_rwlock_define_initialized): Use it.
29548         (gl_recursive_lock_initializer): New macro.
29549         (gl_recursive_lock_define_initialized): Use it.
29550
29551 2005-07-30  Karl Berry  <karl@gnu.org>
29552
29553         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
29554         Report from Ben Pfaff, regarding getopt.
29555
29556 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
29557
29558         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
29559         normal way.
29560         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
29561         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
29562         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
29563         (gl_GETOPT): Use the new macros.  Most of the implementation
29564         is moved to the new macros.  This is for programs like Emacs
29565         that don't want all the functionality of gl_GETOPT.
29566
29567 2005-07-26  Bruno Haible  <bruno@clisp.org>
29568
29569         * m4/lock.m4: Update from GNU gettext.
29570
29571 2005-07-26  Bruno Haible  <bruno@clisp.org>
29572
29573         * lib/lock.h: Update from GNU gettext.
29574         * lib/lock.c: Update from GNU gettext.
29575
29576 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
29577
29578         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
29579         obsolescent AC_TRY_RUN.  Include the default includes files, for
29580         'exit'.
29581
29582 2005-07-24  Bruno Haible  <bruno@clisp.org>
29583
29584         * modules/visibility: New file.
29585         * MODULES.html.sh (Misc): Add visibility.
29586
29587 2005-07-24  Bruno Haible  <bruno@clisp.org>
29588
29589         * m4/visibility.m4: New file.
29590
29591 2005-07-24  Bruno Haible  <bruno@clisp.org>
29592
29593         * doc/visibility.texi: New file.
29594
29595 2005-07-22  Bruno Haible  <bruno@clisp.org>
29596
29597         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
29598         $(ALLOCA_H), redundant through BUILT_SOURCES.
29599         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
29600         redundant through BUILT_SOURCES.
29601         * modules/byteswap (Makefile.am): Remove explicit dependency on
29602         $(BYTESWAP_H), redundant through BUILT_SOURCES.
29603         * modules/fnmatch (Makefile.am): Remove explicit dependency on
29604         $(FNMATCH_H), redundant through BUILT_SOURCES.
29605         * modules/getopt (Makefile.am): Remove explicit dependency on
29606         $(GETOPT_H), redundant through BUILT_SOURCES.
29607         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
29608         redundant through BUILT_SOURCES.
29609         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
29610         redundant through BUILT_SOURCES.
29611         * modules/stdbool (Makefile.am): Remove explicit dependency on
29612         $(STDBOOL_H), redundant through BUILT_SOURCES.
29613         * modules/stdint (Makefile.am): Remove explicit dependency on
29614         $(STDINT_H), redundant through BUILT_SOURCES.
29615         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
29616         Remove explicit dependency on $(SYSEXITS_H).
29617         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
29618
29619 2005-07-18  Simon Josefsson  <jas@extundo.com>
29620
29621         * lib/check-version.c (check_version): Accept identical versions too.
29622
29623 2005-07-18  Bruno Haible  <bruno@clisp.org>
29624
29625         * modules/lock: New file.
29626         * MODULES.html.sh (Multithreading): New section.
29627
29628 2005-07-18  Bruno Haible  <bruno@clisp.org>
29629
29630         * m4/lock.m4: New file, from GNU gettext.
29631
29632 2005-07-18  Bruno Haible  <bruno@clisp.org>
29633
29634         * lib/lock.h: New file, from GNU gettext.
29635         * lib/lock.c: New file, from GNU gettext.
29636
29637 2005-07-18  Bruno Haible  <bruno@clisp.org>
29638
29639         * lib/lock.h (gl_once_t): New type.
29640         (gl_once_define, gl_once): New macros.
29641         * lib/lock.c (fresh_once): New variable.
29642         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
29643         functions.
29644
29645 2005-07-16  Simon Josefsson  <jas@extundo.com>
29646
29647         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
29648         workaround, suggested by Bruno.
29649
29650 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29651
29652         * modules/xalloc (Depends-on): Add xalloc-die.
29653         * modules/xvasprintf (Depends-on): Add xalloc-die.
29654
29655 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
29656
29657         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
29658         with a minor change.
29659
29660 2005-07-15  Bruno Haible  <bruno@clisp.org>
29661
29662         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
29663         When using lib/poll.c, define poll as rpl_poll.
29664
29665 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
29666
29667         * modules/argp (Depends-on): Remove unlocked-io.
29668
29669 2005-07-14  Derek Price  <derek@ximbiot.com>
29670
29671         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
29672         for glob symlink bug.
29673
29674 2005-07-14  Bruno Haible  <bruno@clisp.org>
29675
29676         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
29677         Instead, test for *_unlocked function declarations directly.
29678
29679 2005-07-11  Simon Josefsson  <jas@extundo.com>
29680
29681         * modules/size_max: New file.
29682
29683         * modules/xsize: Depend on size_max module for size_max.m4.
29684
29685 2005-07-11  Simon Josefsson  <jas@extundo.com>
29686
29687         * lib/size_max.h: New file.
29688
29689 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
29690
29691         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
29692         copyright symbol and the year.
29693         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
29694         (version_etc_va): Use parameterized copyright notice.
29695         Reword to conform to the current GNU coding standards.
29696
29697 2005-07-11  Karl Berry  <karl@gnu.org>
29698
29699         * doc/gnulib.texi (Quoting): new node.
29700         (Initial import): more info, from Patrice.
29701
29702 2005-07-11  Bruno Haible  <bruno@clisp.org>
29703
29704         * gnulib-tool (func_usage): Document option --avoid.
29705         (Command line options): Handle --avoid.
29706         (func_acceptable): New function.
29707         (func_modules_transitive_closure): Use it.
29708
29709 2005-07-11  Bruno Haible  <bruno@clisp.org>
29710
29711         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
29712         Reported by Jim Meyering.
29713
29714 2005-07-10  Bruno Haible  <bruno@clisp.org>
29715
29716         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
29717         Needed when size_t is smaller than 'unsigned int'.
29718         Reported by Paul Eggert.
29719
29720 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
29721
29722         * modules/argp (Depends-on): Add unlocked-io
29723
29724 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
29725
29726         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
29727         block of defines.
29728
29729 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29730
29731         * config/srclist.txt: Comment out regcomp.c, since we have a porting
29732         fix now.
29733
29734 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
29735         and Paul Eggert  <eggert@cs.ucla.edu>
29736
29737         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
29738         in wint_t, not wchar_t.  Remove now-unnecessary cast.
29739
29740 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29741
29742         * modules/regex (Files): Add lib/regex_internal.c,
29743         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
29744         (Depends-on): Add extensions.
29745         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
29746
29747 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29748
29749         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
29750         pathconf.
29751         * m4/same.m4 (gl_SAME): Likewise.
29752         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
29753
29754         * m4/regex.m4: Adjust to new libc regex implementation.
29755         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
29756         all the .c and .h parts of (the new) regex.
29757         Quote the m4 stuff better.
29758         Check for RE_ICASE bug of old gnulib.
29759         Check for REG_STARTEND of recent libc.
29760         Rename local variables from jm_* to gl_*.
29761         Quote operand of "test -f".
29762         Say "recent enough" version of libc, not "version 2".
29763         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
29764         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
29765         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
29766         Remove check for btowc, isascii.
29767         Require AM_LANGINFO_CODESET.
29768
29769 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29770
29771         * lib/regex.c, regex.h: Sync from libc.
29772         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
29773         * lib/regexec.c:
29774         New files, synced from libc, except that regex_internal.h
29775         currently has a small porting fix.
29776
29777 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
29778
29779         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
29780         regex_internal.c, regexec.c.
29781         Add regex_internal.h too, but as a comment, since the libc version
29782         is currently broken in gnulib mode.
29783
29784 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29785
29786         Support programs like Emacs that use gnulib but not gettext.
29787         * MODULES.html.sh (Internationalization functions): Add gettext-h.
29788         * modules/gettext-h: New file.
29789         * modules/gettext (Files): Remove lib/gettext.h.
29790         (Depends-on): Add gettext-h.
29791         (Makefile.am): Remove lib_SOURCES.
29792         * modules/argmatch, modules/c-stack, modules/closeout:
29793         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
29794         * modules/execute, modules/file-type, modules/getaddrinfo:
29795         * modules/getopt, modules/human, modules/javacomp:
29796         * modules/javaexec, modules/mkdir-p, modules/obstack:
29797         * modules/openat, modules/pagealign_alloc, modules/pipe:
29798         * modules/quotearg, modules/regex, modules/rpmatch:
29799         * modules/unicodeio, modules/userspec, modules/version-etc:
29800         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
29801         * modules/xsetenv:
29802         Depend on gettext-h, not gettext.
29803
29804 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29805
29806         * gnulib-tool (func_import): Add support for 'public domain' license.
29807         * modules/alloca, modules/atexit, modules/memmove:
29808         Now public domain, not GPL.
29809         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
29810         * modules/realloc, modules/strerror, modules/strtod:
29811         Now LGPL, not GPL.
29812
29813 2005-07-05  Bruno Haible  <bruno@clisp.org>
29814
29815         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
29816         autoconf CVS. Needed for mingw.
29817
29818 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29819
29820         Remove the dependency of the strftime module on the tzset module.
29821         * modules/strftime (Depends-on): Remove dependency on tzset.
29822
29823 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29824
29825         Remove the dependency of the strftime module on the tzset module.
29826         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
29827         gl_FUNC_TZSET_CLOBBER.
29828
29829 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29830
29831         Remove the dependency of the strftime module on the tzset module.
29832         * lib/strftime.c (my_strftime)
29833         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
29834         Copy the input structure, to work around some of the bug with
29835         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
29836         Solaris releases, you should also use the tzset module, but we won't
29837         require it as a dependency any more since we don't want LGPLed code
29838         to depend on GPLed code.
29839
29840 2005-07-02  Jim Meyering  <jim@meyering.net>
29841
29842         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
29843         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
29844         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
29845         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
29846
29847 2005-07-02  Jim Meyering  <jim@meyering.net>
29848
29849         * lib/backupfile.c (backup_args): Change a `0' to NULL.
29850
29851 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29852
29853         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
29854         declares only 'struct timespec;' (!).
29855
29856 2005-07-01  Jim Meyering  <jim@meyering.net>
29857
29858         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
29859         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
29860         * lib/save-cwd.c, tempname.c:
29861         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
29862         and don't include <sys/file.h>).
29863
29864 2005-06-29  Jim Meyering  <jim@meyering.net>
29865
29866         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
29867         type name.  Use the variable name instead.
29868         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
29869         Likewise.
29870
29871 2005-06-28  Simon Josefsson  <jas@extundo.com>
29872
29873         * modules/check-version (Files): Add check-version.m4.
29874
29875 2005-06-28  Simon Josefsson  <jas@extundo.com>
29876
29877         * m4/check-version.m4: New file, suggested by Jim Meyering
29878         <jim@meyering.net>.
29879
29880 2005-06-28  Simon Josefsson  <jas@extundo.com>
29881
29882         * lib/check-version.h, lib/check-version.c: New files.
29883
29884 2005-06-28  Simon Josefsson  <jas@extundo.com>
29885
29886         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
29887         collision with global variable.  Better indentation.  Don't
29888         increment buffer pointer beyond buffer end.  Based on comments
29889         from Paul Eggert <eggert@cs.ucla.edu>.
29890
29891         * lib/base64.h: Indent.
29892
29893 2005-06-28  Simon Josefsson  <jas@extundo.com>
29894
29895         * doc/gnulib.texi (Library version handling): New section.
29896
29897 2005-06-28  Jim Meyering  <jim@meyering.net>
29898
29899         * check-module (find_included_lib_files): Hard-code another
29900         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
29901         but modules/fts-lgpl (correctly) does not list those files.
29902
29903         * modules/canonicalize (Files): Add lib/pathmax.h.
29904
29905 2005-06-25  Simon Josefsson  <jas@extundo.com>
29906
29907         * modules/check-version: New file.
29908
29909 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
29910
29911         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
29912         initializer of struct addrinfo, as an indication that we don't
29913         care how many members the structure has.
29914
29915 2005-06-24  Derek Price  <derek@ximbiot.com>
29916         and Bruno Haible  <bruno@clisp.org>
29917
29918         Remove stat module & update lstat.
29919         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
29920         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
29921         * m4/stat.m4: Remove this file.
29922
29923 2005-06-24  Derek Price  <derek@ximbiot.com>
29924         and Bruno Haible  <bruno@clisp.org>
29925
29926         Remove stat module & update lstat.
29927         * lib/stat.c: Remove this file...
29928         (slash_aware_lstat): ...moving this content and its support...
29929         * lib/lstat.c (rpl_lstat): ...into here.
29930         * lib/lstat.h: New file.
29931
29932 2005-06-24  Derek Price  <derek@ximbiot.com>
29933         and Bruno Haible  <bruno@clisp.org>
29934
29935         Remove stat module & update lstat.
29936         * config/srclist.txt (libc sources): Remove stat.
29937
29938 2005-06-24  Derek Price  <derek@ximbiot.com>
29939         and Bruno Haible  <bruno@clisp.org>
29940
29941         Remove stat module & update lstat.
29942         * MODULES.html.sh (stat): Remove.
29943         * MODULES.html: Regenerated.
29944         * modules/lstat (Description): Correct function name.
29945         (Files): Add "lstat.h".
29946         (Depends-on): Remove stat, add xalloc, stat-macros.
29947         * modules/stat: Remove this file.
29948         (Include): Add "lstat.h", remove <sys/stat.h>.
29949
29950 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
29951
29952         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
29953         (ranged_convert): Don't save conversion in a temporary struct.
29954         This causes a warning with GCC 4.0.0, and anyway in the typical
29955         case it's not worth the extra 100 bytes or so of code.
29956         (ranged_convert, __mktime_internal): When calling a function via a
29957         pointer P, use P () rather than (*P) (), as we now assume C89 or
29958         better.
29959
29960 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29961
29962         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
29963         "who -r" failed to give output.  Problem reported by Tim Waugh.
29964
29965         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
29966         (xcalloc): Use it to avoid needless tests.
29967         Problem reported by Jim Meyering.
29968
29969 2005-06-20  Derek Price  <derek@ximbiot.com>
29970
29971         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
29972         unnecessary for Autoconfs > 2.59c.
29973
29974 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29975
29976         * lib/argp.h (__option_is_short): Check upper limit of
29977         __key. Isprint() requires its argument to have the value
29978         of an unsigned char or EOF.
29979
29980 2005-06-16  Jim Meyering  <jim@meyering.net>
29981
29982         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
29983         when either N or S is zero.
29984
29985 2005-06-16  Derek Price  <derek@ximbiot.com>
29986
29987         * m4/bison.m4: Declare YACC & YFLAGS precious.
29988
29989 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
29990
29991         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
29992         multibyte string or pattern, fall back on unibyte matching.
29993         Problem reported by James Youngman.
29994
29995 2005-06-08  Bruno Haible  <bruno@clisp.org>
29996
29997         * modules/csharpcomp: New file.
29998         * MODULES.html.sh (C#): Add csharpcomp.
29999
30000 2005-06-08  Bruno Haible  <bruno@clisp.org>
30001
30002         * m4/csharpcomp.m4: New file, from GNU gettext.
30003
30004 2005-06-08  Bruno Haible  <bruno@clisp.org>
30005
30006         * lib/csharpcomp.h: New file, from GNU gettext.
30007         * lib/csharpcomp.c: New file, from GNU gettext.
30008         * lib/csharpcomp.sh.in: New file, from GNU gettext.
30009
30010 2005-06-08  Bruno Haible  <bruno@clisp.org>
30011
30012         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
30013         warning on mingw.
30014
30015 2005-06-07  Derek Price  <derek@ximbiot.com>
30016
30017         Sync from CVS.
30018         * lib/glob_.h: Indent nested #ifdef.
30019
30020 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30021
30022         Sync from coreutils.
30023         Use "file name" when talking about file names, instead of "filename"
30024         or "path", as per the GNU coding standards.
30025         * lib/mkdir-p.c: Renamed from makepath.c.
30026         (make_dir_parents): Renamed from make_path.  All callers changed.
30027         * lib/mkdir-p.h: Likewise.  All includers changed.
30028         * lib/filenamecat.c: Renamed from path-concat.c.
30029         (file_name_concat): Renamed from path_concat.  All callers changed.
30030         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
30031         * lib/filenamecat.h: Likewise.  All includers changed.
30032         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
30033         in comments or local variable names.
30034         * lib/basename.c: Likewise.
30035         * lib/canonicalize.c, canonicalize.h: Likewise.
30036         * lib/dirname.c, dirname.h: Likewise.
30037         * lib/euidaccess.c: Likewise.
30038         * lib/exclude.c: Likewise
30039         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
30040         * lib/fsusage.c, fsuage.h: Likewise.
30041         * lib/fts.c, fts_.h: Likewise.
30042         * lib/getcwd.c: Likewise.
30043         * lib/getloadavg.c: Likewise.
30044         * lib/mkstemp.c: Likewise.
30045         * lib/mountlist.c, mountlist.h: Likewise.
30046         * lib/openat.c, openat.h: Likewise.
30047         * lib/readlink-stub.c: Likewise.
30048         * lib/readutmp.c, readutmp.h: Likewise.
30049         * lib/rename.c: Likewise.
30050         * lib/rmdir.c: Likewise.
30051         * lib/same.c: Likewise.
30052         * lib/savedir.c: Likewise.
30053         * lib/stripslash.c: Likewise.
30054         * lib/tempname.c: Likewise.
30055         * lib/xreadlink.c: Likewise.
30056         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
30057         All uses changed.
30058         * lib/exclude.h: Likewise.
30059
30060         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
30061         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30062         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
30063         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30064         * lib/pathmax.h: Include <limits.h> unconditionally, since other
30065         files have been getting away with it for years (MORE/BSD 4.3
30066         is extinct now).
30067         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
30068         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
30069
30070         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
30071         Define to 256, not 255, as per modern POSIX.
30072
30073 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30074
30075         Sync from coreutils.
30076         Use "file name" when talking about file names, instead of "filename"
30077         or "path", as per the GNU coding standards.
30078         * MODULES.html.sh: mkdir-p renamed from makepath.
30079         filenamecat renamed from path-concat.
30080         * modules/filenamecat: Renamed from modules/path-concat.
30081         (Files): filenamecat.h and filenamecat.c renamed from
30082         path-concat.h and path-concat.c.
30083         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
30084         (Include): filenamecat.h, not path-concat.h.
30085         * modules/mkdir-p: Renamed from modules/makepath.
30086         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
30087         makepath.c.
30088         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
30089         (Include): mkdir-p.h, not makepath.h.
30090
30091 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30092
30093         Sync from coreutils.
30094         * m4/mkdir-p.m4: Renamed from makepath.m4.
30095         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
30096         Rename files from makepath.c to mkdir-p.c, and from
30097         makepath.h to mkdir-p.h.
30098         * m4/filenamecat.m4: Renamed from path-concat.m4.
30099         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
30100         Rename files from path-concat.c to filenamecat.c,
30101         and from path-concat.h to filenamecat.h.
30102         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
30103         "file name" in local variables or comments.
30104         * m4/rename.m4: Likewise.
30105
30106 2005-06-01  Bruno Haible  <bruno@clisp.org>
30107
30108         * modules/csharpexec: New file.
30109         * MODULES.html.sh (C#): New section.
30110
30111 2005-06-01  Bruno Haible  <bruno@clisp.org>
30112
30113         * m4/csharp.m4: New file, from GNU gettext.
30114         * m4/csharpexec.m4: New file, from GNU gettext.
30115
30116 2005-06-01  Bruno Haible  <bruno@clisp.org>
30117
30118         * lib/csharpexec.h: New file, from GNU gettext.
30119         * lib/csharpexec.c: New file, from GNU gettext.
30120         * lib/csharpexec.sh.in: New file, from GNU gettext.
30121
30122 2005-05-31  Derek Price  <derek@ximbiot.com>
30123             Paul Eggert  <eggert@cs.ucla.edu>
30124
30125         Sync from cvs.
30126         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
30127
30128 2005-05-31  Derek Price  <derek@ximbiot.com>
30129             Paul Eggert  <eggert@cs.ucla.edu>
30130
30131         Sync from cvs.
30132         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
30133
30134 2005-05-29  Derek Price  <derek@ximbiot.com>
30135
30136         * config/srclist.txt (glob_.h, glob.c): Add these files.
30137
30138 2005-05-29  Derek Price  <derek@ximbiot.com>
30139
30140         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
30141         * modules/glob: New file.
30142         * modules/getlogin_r: Add link to POSIX spec in description.
30143
30144 2005-05-29  Derek Price  <derek@ximbiot.com>
30145             Paul Eggert  <eggert@cs.ucla.edu>
30146
30147         * m4/glob.m4: New file.
30148
30149 2005-05-29  Derek Price  <derek@ximbiot.com>
30150             Paul Eggert  <eggert@cs.ucla.edu>
30151
30152         * lib/glob_.h, lib/glob.c: New files.
30153
30154 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30155
30156         * modules/fts (Files): Remove m4/inttypes-pri.m4.
30157         * modules/fts-lgpl (Depends-on): Remove gettext.
30158
30159 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30160
30161         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
30162         and don't require gt_INTTYPES_PRI.
30163
30164 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30165
30166         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
30167
30168         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
30169         the configuration hassle isn't worth it.
30170         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
30171         (LONGEST_MODIFIER, PRIuMAX): Remove.
30172
30173 2005-05-27  Bruno Haible  <bruno@clisp.org>
30174
30175         * lib/getlogin_r.h: Remove second include of <stddef.h>.
30176
30177 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
30178
30179         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
30180         _POSIX_PTHREAD_SEMANTICS for Solaris.
30181
30182 2005-05-25  Derek Price  <derek@ximbiot.com>
30183
30184         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
30185
30186 2005-05-25  Derek Price  <derek@ximbiot.com>
30187             Paul Eggert  <eggert@cs.ucla.edu>
30188
30189         * modules/getlogin_r, m4/getlogin_r.m4: New files.
30190         * lib/getlogin_r.c, getlogin_r.h: New files.
30191
30192 2005-05-25  Bruno Haible  <bruno@clisp.org>
30193             Derek Price  <derek@ximbiot.com>
30194
30195         * lib/getlogin_r.h: Simplify API documentation.
30196
30197 2005-05-23  Derek Price  <derek@ximbiot.com>
30198
30199         * modules/minmax (Files): Add m4/minmax.m4.
30200         (configure.ac): Add gl_MINMAX.
30201
30202 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
30203
30204         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
30205         so that unistd-safer.h (GPL'ed code) need not be included.
30206
30207 2005-05-22  Bruno Haible  <bruno@clisp.org>
30208
30209         * m4/minmax.m4: New file.
30210         Based on a patch by Derek Price <derek@ximbiot.com>.
30211
30212 2005-05-22  Bruno Haible  <bruno@clisp.org>
30213
30214         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
30215         (INT64_MIN): Fix definition.
30216         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
30217
30218         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
30219         NEED_SIGNED_INT_TYPES.
30220
30221         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
30222         HAVE_SYSTEM_INTTYPES.
30223
30224 2005-05-22  Bruno Haible  <bruno@clisp.org>
30225
30226         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
30227         Also include <sys/param.h> if it defines MIN, MAX.
30228         Based on a patch by Derek Price <derek@ximbiot.com>.
30229
30230 2005-05-21  Jim Meyering  <jim@meyering.net>
30231
30232         * modules/fts (Files): Add m4/inttypes-pri.m4.
30233         (Depends-on): Add lstat and remove gettext.  Alphabetize.
30234
30235 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30236
30237         New fts module.
30238         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
30239         (setup_dir, free_dir): New functions.
30240         (enter_dir, leave_dir): Define trivial
30241         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
30242         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
30243         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
30244         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
30245         Move to fts-cycle.c.
30246         (fts_open): Use setup_dir.
30247         (fts_close): Use free_dir.
30248         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
30249         This adds a label and some gotos, but the alternatives were messier.
30250         Check for memory allocation failure when entering a dir.
30251         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
30252         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
30253         (FTS): New member fts_cycle, that is a union that contains the
30254         old active_dir_ht and cycle_state.  All uses changed to mention
30255         fts_cycle.ht and fts_cycle.state.
30256         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
30257         fts.c, with the following changes:
30258         (setup_dir, free_dir): New functions.
30259         (enter_dir): Now returns bool.  Return true if successful, false
30260         if memory exhausted.  All callers changed.
30261         Do not bother partly cleaning up on
30262         memory allocation failure; that is free_dir's job.
30263         However, free ad if hash_insert fails, to avoid memory leak.
30264         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
30265         fts->fts_options to see which union member to use.
30266
30267 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30268
30269         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
30270         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
30271
30272 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
30273
30274         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
30275
30276 2005-05-20  Jim Meyering  <jim@meyering.net>
30277
30278         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
30279         Now a macro, to pacify GCC.
30280
30281 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
30282
30283         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
30284         of -1.
30285
30286 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
30287
30288         * lib/chown.c (rpl_chown): Return -1 on failure.
30289
30290 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
30291
30292         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
30293         Don't check for stddef.h.
30294         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
30295         don't use its results.
30296         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
30297         since we include them unconditionally.  Don't require
30298         AM_STDBOOL_H, since stdbool is a prerequisite.
30299         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
30300         since we assume C89 or better.
30301         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
30302         as we don't use their results.
30303         Don't check for fchdir, memmove, memset, strrchr, as we use
30304         them unconditionally.
30305         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
30306         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
30307
30308 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
30309
30310         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
30311         Include <stddef.h> unconditionally, since we assume C89 now.
30312         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
30313         * lib/fts.c: Include fts_.h first, to check interface.
30314         Do not include intprops.h; no longer needed.
30315         Include cycle-check.h and hash.h, since fts_.h no longer does.
30316         Remove unnecessary casts of closedir to void.
30317         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
30318         decide whether to decrement nlinks.
30319         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
30320         (FTS): Use struct hash_table * instead of Hash_table, so that
30321         we no longer need to include hash.h here.
30322
30323 2005-05-18  Jim Meyering  <jim@meyering.net>
30324
30325         * modules/dirfd (License): Change to LGPL.  Most of the code
30326         is already in the public domain.
30327
30328 2005-05-18  Jim Meyering  <jim@meyering.net>
30329
30330         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
30331         Reported by Yoann Vandoorselaere.
30332
30333 2005-05-17  Jim Meyering  <jim@meyering.net>
30334
30335         * m4/fts.m4: New file, from coreutils.
30336
30337 2005-05-17  Jim Meyering  <jim@meyering.net>
30338
30339         * lib/fts.c, lib/fts_.h: New files, from coreutils.
30340
30341 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30342
30343         Sync from coreutils.
30344         * m4/unlinkdir.m4: New file.
30345
30346 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30347
30348         Sync from coreutils.
30349         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
30350         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
30351         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
30352         White space changes only.
30353         * lib/makepath.c (make_path): Port to hosts where leading "//" is
30354         special.
30355         * lib/yesno.c: Include getline.h, not ctype.h.
30356         (yesno): Don't remove leading white space; POSIX doesn't allow it.
30357         Use getline to remove arbitrary restriction on response length.
30358
30359 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30360
30361         * config/srclist-update: Spell out "Street" in FSF postal
30362         mail address; this is the style the FSF seems to prefer.
30363
30364         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
30365         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
30366         this updates FSF postal mail address.
30367
30368         Sync from coreutils.
30369         * modules/unlinkdir: New file.
30370         * modules/yesno (Depends-on): Add getline.
30371         * MODULES.html.sh (File system functions): Add unlinkdir.
30372
30373 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30374
30375         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
30376         lib/strsep.h:
30377         Change the initial comment to refer to GPL, not LGPL.
30378         gnulib-tool will change it to LGPL as needed.
30379
30380         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
30381         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
30382         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
30383         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
30384         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
30385         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
30386         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
30387         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
30388         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
30389         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
30390         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
30391         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
30392         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
30393         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
30394         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
30395         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
30396         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
30397         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
30398         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
30399         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
30400         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
30401         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
30402         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
30403         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
30404         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
30405         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
30406         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
30407         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
30408         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
30409         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
30410         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
30411         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
30412         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
30413         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
30414         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
30415         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
30416         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
30417         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
30418         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
30419         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
30420         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
30421         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
30422         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
30423         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
30424         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
30425         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
30426         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
30427         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
30428         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
30429         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
30430         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
30431         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
30432         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
30433         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
30434         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
30435         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
30436         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
30437         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
30438         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
30439         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
30440         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
30441         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
30442         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
30443         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
30444         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
30445         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
30446         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
30447         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
30448         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
30449         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
30450         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
30451         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
30452         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
30453         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
30454         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
30455         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
30456         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
30457         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
30458         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
30459         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
30460         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
30461         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
30462         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
30463         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
30464         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
30465         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
30466         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
30467         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
30468         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
30469         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
30470         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
30471         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
30472         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
30473         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
30474         lib/yesno.c, lib/yesno.h:
30475         Update FSF postal mail address.
30476
30477 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
30478
30479         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
30480         tests/test-memmem.c, tests/test-stpncpy.c:
30481         Update FSF postal mail address.
30482
30483 2005-05-13  Bruno Haible  <bruno@clisp.org>
30484
30485         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
30486         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
30487         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
30488         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
30489         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
30490         Add support for 64-bit integers in the MSVC compiler.
30491
30492 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30493
30494         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
30495
30496 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
30497
30498         * gnulib-tool (func_import): Sort and uniquify recommended includes.
30499
30500 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
30501
30502         * doc/getdate.texi (General date syntax): Don't say that date
30503         date --iso-8601=ns generates acceptable dates; it doesn't yet.
30504         Problem reported by Nic Ferrier.
30505
30506 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30507
30508         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
30509         specified in ai_socktype. Fix invalid ai_protocol
30510         check. ai_protocol is usually set to 0 or depending on
30511         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
30512         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
30513         ai_socktype / ai_protocol in the returned addrinfo structure.
30514
30515 2005-05-10  Simon Josefsson  <jas@extundo.com>
30516
30517         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
30518         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
30519
30520 2005-05-10  Karl Berry  <karl@gnu.org>
30521
30522         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
30523         (from http://www.gnu.org/licenses).
30524         * doc/COPYING.LIB: also rename to COPYING.LESSER.
30525         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
30526         fdl.texi suffices.
30527
30528 2005-05-10  Karl Berry  <karl@gnu.org>
30529
30530         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
30531         (COPYING.DOC): remove.
30532
30533         * config/srclist-update: new FSF address.
30534
30535 2005-05-10  Derek Price  <derek@ximbiot.com>
30536
30537         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
30538         possible.
30539
30540 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30541             Bruno Haible  <bruno@clisp.org>
30542
30543         * modules/inet_ntop: New file.
30544         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30545         inet_ntop.
30546
30547 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30548             Bruno Haible  <bruno@clisp.org>
30549
30550         * m4/inet_ntop.m4: New file.
30551
30552 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30553             Bruno Haible  <bruno@clisp.org>
30554
30555         * lib/inet_ntop.h: New file.
30556         * lib/inet_ntop.c: New file, from glibc with modifications.
30557
30558 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
30559
30560         * modules/time_r (License): Change to LGPL.
30561         * modules/extensions (License): Change to LGPL.  Actually,
30562         the license is more permissive than that, but currently gnulib-tool
30563         doesn't know how to handle more-permissive licenses.
30564
30565         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
30566         Problem reported by Dave Love.
30567
30568 2005-05-08  Jim Meyering  <jim@meyering.net>
30569
30570         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
30571         blank.
30572
30573 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
30574
30575         * modules/argmatch (Depends-on): Add stdbool.
30576         * modules/backupfile (Depends-on): Likewise.
30577         * modules/chdir-long (Depends-on): Likewise.
30578         * modules/closeout (Depends-on): Likewise.
30579         * modules/cycle-check (Depends-on): Likewise.
30580         * modules/dirname (Depends-on): Likewise.
30581         * modules/fnmatch (Depends-on): Likewise.
30582         * modules/fsusage (Depends-on): Likewise.
30583         * modules/fwriteerror (Depends-on): Likewise.
30584         * modules/getcwd (Depends-on): Likewise.
30585         * modules/getloadavg (Depends-on): Likewise.
30586         * modules/hard-locale (Depends-on): Likewise.
30587         * modules/makepath (Depends-on): Likewise.
30588         * modules/mountlist (Depends-on): Likewise.
30589         * modules/nanosleep (Depends-on): Likewise.
30590         * modules/posixtm (Depends-on): Likewise.
30591         * modules/quotearg (Depends-on): Likewise.
30592         * modules/readtokens (Depends-on): Likewise.
30593         * modules/readtokens0 (Depends-on): Likewise.
30594         * modules/readutmp (Depends-on): Likewise.
30595         * modules/save-cwd (Depends-on): Likewise.
30596         * modules/strftime (Depends-on): Likewise.
30597         * modules/userspec (Depends-on): Likewise.
30598         * modules/utimecmp (Depends-on): Likewise.
30599         * modules/xgetcwd (Depends-on): Likewise.
30600         * modules/xnanosleep (Depends-on): Likewise.
30601         * modules/xstrtod (Depends-on): Likewise.
30602         * modules/yesno (Depends-on): Likewise.
30603
30604 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
30605
30606         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
30607         needless checks.
30608
30609 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30610
30611         Merge from coreutils.  Among other things,
30612         add bulletproofing for cases where stdin, stdout, or stderr are closed.
30613         * lib/fd-safer.c: New file.
30614         * lib/fcntl-safer.h, open-safer.c: Remove.
30615         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
30616         * lib/dup-safer.c: Include unistd-safer.h first.
30617         Don't include errno.h.
30618         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
30619         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
30620         * lib/file-type.c: Rely on file-type.h change.
30621         * lib/getloadavg.c: Include unistd-safer.h.
30622         (getloadavg): Use safer open.
30623         * lib/getusershell.c: Include "stdio-safer.h".
30624         (getusershell): Use safer fopen.
30625         * lib/long-options.c (long_options): Use NULL rather than 0.
30626         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
30627         'free'.
30628         * lib/modechange.c: Likewise.
30629         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
30630         (MODE_DONE): New constant.
30631         (struct mode_change): Remove 'next' member.
30632         (make_node_op_equals): New function; like the old one of the
30633         same name, except it allocates an array.
30634         (mode_compile, mode_create_from_ref): Use it.
30635         (mode_compile): Allocate result as an array, not a linked list.
30636         Parse octal string ourself, so that we catch mistakes like "+0".
30637         (mode_adjust): Arg is an array, not a linked list.
30638         * lib/modechange.c: Include stat-macros.h, xalloc.h.
30639         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
30640         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
30641         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
30642         Remove.  This is now stat-macros.h's job.
30643         (talloc): Remove.  All callers replaced by xalloc, so that
30644         our invokers don't have to worry about reporting memory failures.
30645         (make_node_op_equals): Remove.
30646         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
30647         New constants.
30648         (struct mode_change): Moved here from modechange.h.
30649         (mode_append_entry): Remove.
30650         (mode_compile): Remove MASKED_OPS arg, since it encouraged
30651         apps to have incorrect behavior.  Use simpler algorithm for head
30652         and tail.  Don't futz with umask; that's now the job of mode_adjust.
30653         Detect more invalid usages rather than having somewhat-random behavior.
30654         Don't insert an "a=" action, as that leads to incorrect behavior.
30655         (mode_compile, mode_create_from_ref): Return NULL on error instead
30656         of an enum, since now there's only one way to have an error.  All
30657         callers changed.
30658         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
30659         at the correct time.  Simplify calculation of "+u" and its ilk.
30660         Don't mishandle "+X".
30661         (mode_free): Remove "register" and localize decls.
30662         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
30663         (struct mode_change): Move to modechange.c; callers don't
30664         need to see this stuff.
30665         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
30666         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
30667         (mode_change, mode_adjust): Reflect the new signatures noted above.
30668         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
30669         that might redefine system include files.
30670         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
30671         (my_usleep): Use NULL rather than (void *) 0.
30672         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
30673         Use siginterrupt to specify that system calls should be interrupted.
30674         (rpl_nanosleep): Move initialization of suspended closer to call of
30675         my_usleep.
30676         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
30677         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
30678         (desirable_utmp_entry): New function.
30679         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
30680         using x2nrealloc, to simplify logic.
30681         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
30682         size calculation.  Do not assume utmp file is a regular file.
30683         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
30684         (READ_UTMP_CHECK_PIDS): New constant.
30685         * lib/save-cwd.c: Include unistd-safer.h.
30686         (save_cwd): Use fd_safer.
30687         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
30688         [!_LIBC] Include "stat-macros.h" instead.
30689         * lib/unistd-safer.h (fd_safer): New decl.
30690
30691 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30692
30693         * modules/getloadavg (Depends-on): Add unistd-safer.
30694         * modules/getusershell (Depends-on): Add stdio-safer.
30695         * modules/lstat (Depends-on): Remove xalloc.
30696         * modules/mkstemp (Depends-on): Add stat-macros.
30697         * modules/modechange (Depends-on): Remove xstrtol.
30698         Add stat-macros, xalloc.
30699         * modules/save-cwd (Depends-on): Add unistd-safer.
30700         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
30701         * modules/unistd-safer (Files): Add lib/fd-safer.c
30702         (Makefile.am): Remove lib_SOURCES.
30703
30704         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
30705         Remove fcntl-safer; unistd-safer supersedes it.
30706
30707 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30708
30709         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
30710         AC_HEADER_STAT.
30711         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
30712         (gl_PREREQ_CHOWN): Remove.
30713         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
30714         it.  Don't require AC_HEADER_STAT.
30715         (gl_PREREQ_LSTAT): Remove.
30716         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
30717         Don't require AC_HEADER_STAT.
30718         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
30719         (gl_PREREQ_RMDIR): Remove.
30720         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
30721         mention stat-macros.h or AC_HEADER_STAT, since we'll make
30722         the stat-macros module a prerequisite.
30723         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
30724         * m4/filemode.m4 (gl_FILEMODE): Likewise.
30725         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
30726         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
30727         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
30728         variable names.
30729         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
30730         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
30731         variable prefixes.
30732         * m4/fcntl-safer.m4: Remove.
30733         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
30734         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
30735         Invoke gl_PREREQ_FD_SAFER.
30736         (gl_PREREQ_FD_SAFER): New macro.
30737         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
30738         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
30739         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
30740         Remove duplicate call to AC_LIBOBJ(readutmp).
30741         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
30742
30743         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
30744         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
30745
30746 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30747
30748         * MODULES.html.sh (Misc): Add byteswap.
30749
30750 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30751
30752         * modules/getcwd (Depends-on): Add extensions.
30753         * modules/openat (Depends-on): Likewise.
30754
30755 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30756
30757         * modules/byteswap: New file.
30758
30759 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30760
30761         * m4/byteswap.m4: New file.
30762
30763 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
30764
30765         * lib/byteswap_.h: New file.
30766
30767 2005-04-25  Karl Berry  <karl@gnu.org>
30768
30769         * m4/gettext.m4: Update from GNU gettext 0.14.4.
30770
30771 2005-04-25  Albert Chin  <china@thewrittenword.com>
30772
30773         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
30774         Toolkit C bug.
30775
30776 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
30777
30778         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
30779         (func_ln_if_changed) Remove forcibly for no error message
30780         in case file does not exist.
30781
30782 2005-04-19  Simon Josefsson  <jas@extundo.com>
30783
30784         * gnulib-tool (Options): Make --symlink mean --symbolic.
30785
30786 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
30787
30788         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
30789
30790 2005-04-16  Simon Josefsson  <jas@extundo.com>
30791
30792         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
30793
30794 2005-04-15  Simon Josefsson  <jas@extundo.com>
30795
30796         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
30797
30798 2005-04-15  Simon Josefsson  <jas@extundo.com>
30799
30800         * gnulib-tool: Rename --symlink to --symbolic.
30801
30802 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
30803
30804         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
30805         symbolic links to files instead of copying/moving.  Add --aux-dir,
30806         specifying directory relative --dir where auxiliary build tools
30807         are placed.
30808
30809 2005-04-14  Bruno Haible  <bruno@clisp.org>
30810
30811         * modules/allocsa (License): Change to LGPL.
30812         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
30813
30814 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
30815
30816         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
30817         that "UTC +1 second" continues to work.  Problem reported
30818         by Dmitry V. Levin.
30819         (relunit_snumber): New rule.
30820         (relunit): Use it.
30821
30822 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
30823
30824         * lib/getdate.y (universal_time_zone_table): New constant.
30825         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
30826         universal_time_zone_table.
30827         (lookup_zone): Prefer universal_time_zone_table to
30828         local_time_zone_table, so that "GMT" time stamps are allowed in
30829         London during the summer.  Problem reported by Ian Abbott.
30830
30831 2005-04-12  Jim Meyering  <jim@meyering.net>
30832
30833         * lib/human.c (humblock): Set *options even when returning due to
30834         xstrtoumax conversion failure.  Thanks to a used-uninitialized
30835         warning from gcc-4.
30836
30837 2005-04-09  Jim Meyering  <jim@meyering.net>
30838
30839         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
30840         -Wuninitialized: initialize tm0.tm_year.
30841
30842 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
30843
30844         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
30845         count, since there's no maximum.  All uses changed.
30846         Add member dsts_seen.
30847         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
30848         not being INT_MAX.
30849         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
30850         Use pc_rels_seen to decide whther a date is absolute.
30851
30852         * lib/getdate.y (number): Don't overwrite year.
30853         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
30854         check.
30855
30856 2005-04-02  Simon Josefsson  <jas@extundo.com>
30857
30858         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
30859         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
30860
30861 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
30862
30863         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
30864         where no absolute path name can be longer than PATH_MAX.
30865
30866 2005-03-27  Jim Meyering  <jim@meyering.net>
30867
30868         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
30869
30870 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
30871
30872         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
30873         "one's complement" -> "ones' complement" in comment, as per Knuth.
30874         "value of type" -> "type or expression" in comment.
30875         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
30876
30877 2005-03-26  Jim Meyering  <jim@meyering.net>
30878
30879         Comment nits.
30880         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
30881         Correct typos: s/or/of/.
30882
30883 2005-03-26  Jim Meyering  <jim@meyering.net>
30884
30885         * modules/check-include-files: Move to ../ and rename to...
30886         * check-module: ...this.
30887
30888 2005-03-25  Jim Meyering  <jim@meyering.net>
30889
30890         * modules/xvasprintf (Files): Add xalloc.h.
30891
30892 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
30893
30894         * modules/gettext (Files): config/config.rpath ->
30895         build-aux/config.rpath
30896         * modules/iconv (Files): Likewise.
30897         Problem reported by Oskar Liljeblad.
30898
30899 2005-03-23  Jim Meyering  <jim@meyering.net>
30900
30901         * modules/check-include-files: New script to check for
30902         missing dependencies, multiple includes, etc.
30903
30904         * modules/c-strtold (Depends-on): Add xalloc.
30905         * modules/c-strtod (Depends-on): Add xalloc.
30906         * modules/hash (Depends-on): Add xalloc.
30907         (Files): Remove lib/xalloc.h.
30908
30909         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
30910         * modules/userspec (Files): Add lib/inttostr.h.
30911
30912 2005-03-23  Jim Meyering  <jim@meyering.net>
30913
30914         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
30915
30916 2005-03-22  Jim Meyering  <jim@meyering.net>
30917
30918         * modules/stat-macros: New module.
30919         * modules/canonicalize, modules/euidaccess, modules/file-type,
30920         * modules/filemode, modules/lchown, modules/makepath,
30921         * modules/rmdir, modules/stat: Depend on new stat-macros module
30922         rather than listing lib/stat-macros.h manually.
30923         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
30924
30925 2005-03-22  Jim Meyering  <jim@meyering.net>
30926
30927         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
30928
30929 2005-03-22  Bruno Haible  <bruno@clisp.org>
30930
30931         * config/srclist.txt: Replace target directory 'config' with
30932         'build-aux'.
30933         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
30934         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
30935         ../build-aux/.
30936
30937 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
30938
30939         * modules/chdir-long (Depends-on): Add mempcpy.
30940
30941         * modules/acl, modules/backupfile, modules/c-strtod,
30942         modules/c-strtold, modules/canon-host, modules/canonicalize,
30943         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
30944         modules/exclude, modules/exitfail, modules/file-type,
30945         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
30946         modules/getdate, modules/getline, modules/getpagesize,
30947         modules/getpass, modules/getugroups, modules/group-member,
30948         modules/hard-locale, modules/hash, modules/human, modules/idcache,
30949         modules/inttostr, modules/long-options, modules/makepath,
30950         modules/md5, modules/memcasecmp, modules/memcoll,
30951         modules/modechange, modules/mountlist, modules/path-concat,
30952         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
30953         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
30954         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
30955         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
30956         modules/strftime, modules/strndup, modules/strverscmp,
30957         modules/timespec, modules/unlocked-io, modules/userspec,
30958         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
30959         modules/yesno:
30960         Remove lib_SOURCES line from Makefile.am section, as this is now
30961         done automatically by the corresponding Autoconf macro.
30962
30963 2005-03-21  Jim Meyering  <jim@meyering.net>
30964
30965         Changes imported from coreutils.
30966
30967         * lib/cycle-check.c: Don't include xalloc.h.
30968
30969         * lib/path-concat.c: Don't include assert.h.
30970         (path_concat): Remove assertion that would have triggered
30971         for ABASE starting with more than one slash.
30972         Reported by Andreas Schwab.
30973
30974         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
30975         properly when ABASE is an absolute file name.
30976         Correct the description of this function.
30977         Include <assert.h>.
30978         Add an assertion and a test driver.
30979         This fixes a bug introduced on 2004-07-02.
30980         Andreas Schwab reported the resulting failure of cp --parents:
30981         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
30982
30983 2005-03-21  Jim Meyering  <jim@meyering.net>
30984
30985         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
30986         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
30987
30988 2005-03-21  Jim Meyering  <jim@meyering.net>
30989         and  Paul Eggert  <eggert@cs.ucla.edu>
30990
30991         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
30992         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
30993         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
30994         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
30995         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
30996         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
30997         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
30998         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
30999         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
31000         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
31001         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
31002         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
31003         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
31004         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
31005         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
31006         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
31007         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
31008         for these modules.
31009
31010 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
31011
31012         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
31013         (which shouldn't happen), generate nothing instead of returning 0
31014         immediately, so that nstrftime (NULL, ...) doesn't return 0.
31015
31016 2005-03-16  Bruno Haible  <bruno@clisp.org>
31017
31018         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
31019         HAVE_LONGLONG_64BIT.
31020
31021 2005-03-16  Bruno Haible  <bruno@clisp.org>
31022
31023         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
31024         HAVE_LONGLONG_64BIT.
31025
31026 2005-03-16  Bruno Haible  <bruno@clisp.org>
31027
31028         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
31029         HAVE_LONGLONG_64BIT.
31030
31031 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
31032
31033         * lib/strftime.c (my_strftime): Prepend space to format so that we can
31034         reliably distinguish strftime failure from empty output on POSIX
31035         hosts.
31036
31037 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
31038
31039         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
31040         (iconv_string): Don't guess a size-zero buffer, as that might cause
31041         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
31042         result would be 'too large', where 'too large' is (heuristically)
31043         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
31044         overflow concerns.  This will prevent some unwanted malloc failures
31045         when the inputs are very large.
31046
31047 2005-03-15  Karl Berry  <karl@gnu.org>
31048
31049         * config/srclist.txt (config.rpath): from gettext.
31050         * config/config.rpath: update.
31051
31052 2005-03-15  Bruno Haible  <bruno@clisp.org>
31053
31054         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
31055         to 'negate'.
31056
31057         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
31058         variable.
31059
31060         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
31061         results.
31062
31063 2005-03-14  Simon Josefsson  <jas@extundo.com>
31064
31065         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
31066         <fx@gnu.org>.
31067
31068 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
31069
31070         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
31071         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
31072         intprops.h.
31073         * lib/strtol.c: Likewise.
31074
31075 2005-03-14  Jim Meyering  <jim@meyering.net>
31076
31077         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
31078         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
31079         to be nonzero so that we (and caller) can detect the difference
31080         between a valid zero-length expansion and an error return, even
31081         when the underlying strftime fails before writing anything into
31082         that location.
31083
31084 2005-03-14  Bruno Haible  <bruno@clisp.org>
31085
31086         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
31087         Update from GNU gettext 0.14.3.
31088
31089 2005-03-10  Jim Meyering  <jim@meyering.net>
31090
31091         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
31092
31093 2005-03-10  Jim Meyering  <jim@meyering.net>
31094
31095         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
31096         so that this module works on systems without fchdir.
31097
31098 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
31099
31100         Factor int-properties macros into a single file, except for
31101         glibc-related files.
31102         * lib/intprops.h: New file.
31103         * lib/getloadavg.c: Include it instead of limits.h.
31104         (INT_STRLEN_BOUND): Remove.
31105         * lib/human.c: Include intprops.h.
31106         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
31107         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
31108         302/1000.
31109         * lib/inttostr.h: Include intprops.h instead of limits.h.
31110         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
31111         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
31112         for consistency with intprops.h.
31113         (time_t_is_integer, twos_complement_arithmetic): Use them.
31114         * lib/sig2str.h: Include <signal.h>, intprops.h.
31115         (INT_STRLEN_BOUND): Remove.
31116         * lib/strftime.c (TYPE_SIGNED): Remove.
31117         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
31118         * lib/strtol.c: Adjust comments to match intprops.h.
31119         * lib/userspec.c: Include intprops.h.
31120         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
31121         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
31122         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
31123         instead of rolling our own expressions.
31124         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
31125
31126         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
31127         instead of int.
31128         (my_strftime): Do not mishandle years close to INT_MAX, by doing
31129         the right thing even if adding 1900 would overflow.  Similarly
31130         for tm_mon + 1 and tm_yday + 1.
31131         Make %Y always equivalent to %C%y, and similarly for %G and %g.
31132         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
31133         (DO_SIGNED_NUMBER): New macro.
31134         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
31135
31136 2005-03-07  Bruno Haible  <bruno@clisp.org>
31137
31138         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
31139
31140 2005-03-07  Bruno Haible  <bruno@clisp.org>
31141
31142         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
31143
31144 2005-03-04  Derek R. Price  <derek@ximbiot.com>
31145
31146         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
31147         (func_import): Only replace files via --import when they have actually
31148         changed.
31149
31150 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31151
31152         * m4/mmap-anon.m4: New file.
31153         * m4/pagealign_alloc.m4: New file.
31154
31155 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31156             Bruno Haible  <bruno@clisp.org>
31157
31158         * modules/pagealign_alloc: New file.
31159         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
31160
31161 2005-03-03  Derek R. Price  <derek@ximbiot.com>
31162             Bruno Haible  <bruno@clisp.org>
31163
31164         * lib/pagealign_alloc.h: New file.
31165         * lib/pagealign_alloc.c: New file.
31166
31167 2005-03-03  Bruno Haible  <bruno@clisp.org>
31168
31169         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
31170         Use an all-permissive copyright notice, recommended by RMS.
31171
31172 2005-03-02  Bruno Haible  <bruno@clisp.org>
31173
31174         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
31175         of AIX, the replacement has to be done only after <string.h> is
31176         included, therefore not in config.h. stpncpy.h does the replacement,
31177         and stpncpy.c uses it.
31178
31179 2005-03-02  Bruno Haible  <bruno@clisp.org>
31180
31181         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
31182         stpncpy.c uses it.
31183
31184 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31185
31186         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
31187         The workaround isn't strictly needed for POSIX conformance, and
31188         it's too much of a pain to configure and maintain.  We'll ask
31189         people to fix their kernels instead.
31190         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
31191         (NANOSLEEP_BUG_WORKAROUND): Remove.
31192         (xnanosleep): Remove the workaround.
31193
31194 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31195
31196         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
31197         Reported by Derek Price.
31198         (Include): Add "timespec.h".
31199
31200         * modules/xnanosleep (Depends-on): Remove gethrxtime.
31201
31202 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31203
31204         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
31205         to detect nanosleep bug.
31206
31207 2005-03-01  Bruno Haible  <bruno@clisp.org>
31208
31209         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
31210
31211 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
31212
31213         * modules/gethrxtime: New file.
31214         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
31215         (Depends-on): Add gethrxtime.
31216         (configure.ac): Add gl_XNANOSLEEP.
31217         (Makefile.am): Remove lib_SOURCES line.
31218
31219 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
31220
31221         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
31222         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
31223
31224 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
31225
31226         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
31227         * lib/timespec.h (gettime): Return void, since it always
31228         succeeds now.  All uses changed.
31229         * lib/gettime.c (gettime) Likewise.
31230         [HAVE_NANOTIME]: Prefer nanotime.
31231         Assume gettimeofday succeeds, as POSIX requires.
31232         Assime time () succeeds, since other code already does.
31233         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
31234         (timespec_subtract): Remove.
31235         (NANOSLEEP_BUG_WORKAROUND): New constant.
31236         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
31237         things considerably.  Use it only on GNU/Linux hosts, since the
31238         workaround shouldn't be needed elsewhere.
31239
31240 2005-02-24  Bruno Haible  <bruno@clisp.org>
31241
31242         * modules/gettext (Files): Add m4/glibc2.m4.
31243
31244 2005-02-24  Bruno Haible  <bruno@clisp.org>
31245
31246         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
31247         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
31248         * m4/progtest.m4:
31249         Update from GNU gettext 0.14.2.
31250         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
31251
31252 2005-02-24  Bruno Haible  <bruno@clisp.org>
31253
31254         * lib/localcharset.c: Update from GNU gettext 0.14.2.
31255         * lib/config.charset: Update from GNU gettext 0.14.2.
31256
31257 2005-02-24  Bruno Haible  <bruno@clisp.org>
31258
31259         * lib/gettext.h: Update from GNU gettext 0.14.2.
31260
31261 2005-02-23  Simon Josefsson  <jas@extundo.com>
31262
31263         * m4/iconvme.m4: New file.
31264
31265 2005-02-23  Jim Meyering  <jim@meyering.net>
31266
31267         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
31268         change.
31269         Thanks to Bruno Haible for catching it.
31270
31271 2005-02-22  Simon Josefsson  <jas@extundo.com>
31272
31273         * modules/iconvme: New file.
31274
31275         * MODULES.html.sh: Add iconvme.
31276
31277 2005-02-22  Simon Josefsson  <jas@extundo.com>
31278
31279         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
31280
31281 2005-02-22  Simon Josefsson  <jas@extundo.com>
31282
31283         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
31284
31285 2005-02-22  Jim Meyering  <jim@meyering.net>
31286
31287         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
31288         s/ifndef/ifdef/.
31289
31290 2005-02-20  Neil Conway  <neilc@samurai.com>
31291
31292         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
31293         returned by OSX/Darwin if the specified buffer is not large
31294         enough for the hostname.
31295
31296 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31297
31298         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
31299         pass it to _help, otherwise the latter coredumps trying to
31300         dereference state.root_argp.
31301
31302 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31303
31304         * modules/chdir-long (Depends-on): Add memrchr.
31305         * modules/memrchr (Files): Add lib/memrchr.h.
31306         (Include): "memrchr.h".
31307
31308 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31309
31310         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
31311
31312 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
31313
31314         * lib/memrchr.h: New file.
31315         * lib/chdir-long.c: Include it.
31316         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
31317         Don't bother including stddef.h.
31318
31319 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
31320
31321         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
31322         inclusion.
31323         Include <sys/types.h>, for dev_t.
31324         (ME_DUMMY, ME_REMOTE): Move from here....
31325         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
31326         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
31327         Dmitry V. Levin.
31328         Include mountlist.h first, to test the interface.
31329
31330 2005-01-29  Bruno Haible  <bruno@clisp.org>
31331
31332         * lib/progname.c (program_name): Initialize.
31333         Needed when linking statically on MacOS X.
31334
31335 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
31336
31337         Sync from coreutils.
31338         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
31339         (Depends-on): Add c-strtod.
31340         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
31341
31342 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
31343
31344         Sync from coreutils.
31345         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
31346
31347         Remove files that are specific to coreutils.
31348         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
31349
31350 2005-01-28  Bruno Haible  <bruno@clisp.org>
31351
31352         * modules/javacomp: New file.
31353         * MODULES.html.sh (Java): Add javacomp.
31354
31355 2005-01-28  Bruno Haible  <bruno@clisp.org>
31356
31357         * m4/javacomp.m4: New file, from GNU gettext.
31358
31359 2005-01-28  Bruno Haible  <bruno@clisp.org>
31360
31361         * lib/javacomp.sh.in: New file, from GNU gettext.
31362         * lib/javacomp.h: New file, from GNU gettext.
31363         * lib/javacomp.c: New file, from GNU gettext.
31364
31365 2005-01-26  Simon Josefsson  <jas@extundo.com>
31366
31367         * lib/gai_strerror.c: Use GPL in header.
31368
31369 2005-01-26  Bruno Haible  <bruno@clisp.org>
31370
31371         * modules/javaexec: New file.
31372         * MODULES.html.sh (Java): Add javaexec.
31373
31374 2005-01-26  Bruno Haible  <bruno@clisp.org>
31375
31376         * m4/javaexec.m4: New file, from GNU gettext.
31377
31378 2005-01-26  Bruno Haible  <bruno@clisp.org>
31379
31380         * lib/javaexec.sh.in: New file, from GNU gettext.
31381         * lib/javaexec.h: New file, from GNU gettext.
31382         * lib/javaexec.c: New file, from GNU gettext.
31383
31384 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31385
31386         * modules/lchown (Depends-on): Remove lchown.h
31387
31388 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31389
31390         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
31391         must be defined if the header file was not found, in order
31392         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
31393
31394 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31395
31396         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
31397         initializers for struct pentry_state.
31398         (__argp_error): Check return value of __asprintf
31399         (__argp_failure): Translate error message
31400
31401         * lib/argp-parse.c: Removed braces around the expansion of N_()
31402
31403 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31404
31405         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
31406         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
31407         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
31408         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
31409         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
31410         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
31411         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
31412         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
31413         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
31414         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
31415         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
31416         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
31417         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
31418         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
31419         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
31420         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
31421         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
31422         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
31423         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
31424         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
31425         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
31426         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
31427         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
31428         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
31429         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
31430         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
31431         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
31432         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
31433         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
31434         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
31435         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
31436         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
31437         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
31438         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
31439         xstrtol.m4, xstrtoumax.m4, yesno.m4:
31440         Use an all-permissive copyright notice, recommended by RMS.
31441
31442 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
31443
31444         * modules/chdir-long (Depends-on): Remove mempcpy.
31445
31446 2005-01-21  Jim Meyering  <jim@meyering.net>
31447
31448         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
31449         same value as for Solaris 9.
31450
31451         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
31452         component length.  This included changing the parameter to be
31453         of type `char *' rather than `char const *'.
31454         * lib/chdir-long.h (chdir_long): Update prototype.
31455
31456         * lib/openat.c (fdopendir, fstatat): New functions.
31457         * lib/openat.h: Include headers required for use of DIR and struct
31458         stat.
31459         [AT_SYMLINK_NOFOLLOW]: Define.
31460         (fdopendir, fstatat): Add prototypes.
31461
31462 2005-01-21  Bruno Haible  <bruno@clisp.org>
31463
31464         * modules/classpath: New file.
31465         * MODULES.html.sh (Java): Add classpath.
31466
31467 2005-01-21  Bruno Haible  <bruno@clisp.org>
31468
31469         * lib/classpath.h: New file, from GNU gettext.
31470         * lib/classpath.c: New file, from GNU gettext.
31471
31472 2005-01-20  Simon Josefsson  <jas@extundo.com>
31473
31474         * modules/version-etc-fsf: New file.
31475
31476 2005-01-20  Simon Josefsson  <jas@extundo.com>
31477
31478         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
31479         * lib/version-etc.c: Remove version_etc_copyright.
31480         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
31481         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
31482
31483 2005-01-20  Simon Josefsson  <jas@extundo.com>
31484
31485         * lib/base64.h (isbase64): Add.
31486
31487         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
31488         using a unsigned prototype, don't inline.
31489         (base64_decode): Use it.
31490
31491 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31492
31493         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
31494         it.
31495
31496 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31497
31498         * lib/save-cwd.c (save_cwd): Remove code to support the case
31499         where fchdir is missing or flaky.
31500
31501 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31502
31503         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
31504
31505 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
31506
31507         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
31508         AC_LIBSOURCES now does this.
31509         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
31510         with new ullong_max module.
31511
31512 2005-01-19  Bruno Haible  <bruno@clisp.org>
31513
31514         * modules/sh-quote: New file.
31515         * MODULES.html.sh (Executing programs): Add sh-quote.
31516
31517 2005-01-19  Bruno Haible  <bruno@clisp.org>
31518
31519         * lib/sh-quote.h: New file, from GNU gettext.
31520         * lib/sh-quote.c: New file, from GNU gettext.
31521
31522 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31523
31524         Merge from coreutils.
31525         * m4/ullong_max.m4: New file.
31526         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
31527         (gl_MACROS): Assume localeconv exists.
31528
31529 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31530
31531         Merge changes from coreutils, as described below in several
31532         changelogs dated today.
31533
31534         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
31535         (O_DIRECTORY): Remove; not needed here, since "." must be
31536         a directory.  All uses removed.
31537         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
31538         universal on Suns, and we also need to test for IRIX.
31539         Revamp code to use 'if' rather than '#if'.
31540         Avoid unnecessary comparison of cwd->desc to 0.
31541
31542         * lib/utimens.c (futimens): Robustify the previous patch, by checking
31543         for known valid error numbers rather than observed invalid ones.
31544
31545 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
31546
31547         * modules/ullong_max: New file.
31548
31549         * modules/chdir-long, modules/openat: New files.
31550         * modules/save-cwd (Depends-on): Depend on chdir-long.
31551         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
31552
31553 2005-01-18  Jim Meyering  <jim@meyering.net>
31554
31555         Merge from coreutils.
31556         * m4/chdir-long.m4, m4/openat.m4: New files.
31557         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
31558         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
31559         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
31560         is sane and DOES follow symlinks.  Besides, testing 20 different
31561         systems found no broken chown implementations.
31562         Prompted by a change in rsync's copy of this macro.
31563         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
31564
31565         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
31566
31567         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
31568         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
31569         NULL-means-set-to-current-time semantics.
31570         Remove temporary file immediately, rather than waiting
31571         for configure's at-exit trap code to do it.
31572
31573 2005-01-18  Jim Meyering  <jim@meyering.net>
31574
31575         * lib/version-etc.c (version_etc_copyright): Update copyright date.
31576
31577         * lib/utimens.c (futimens): Account for the fact that futimes
31578         can also fail with errno == ENOSYS or errno == ENOENT.
31579         Patch from Dmitry V. Levin.
31580
31581         Change the name of the robust chdir function from chdir to chdir_long.
31582         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
31583         (restore_cwd): Use chdir_long, not chdir.
31584         * lib/chdir-long.c: Renamed from chdir.c.
31585         * lib/chdir-long.h: Renamed from chdir.h.
31586         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
31587         Hurd.
31588
31589 2005-01-18  Bruno Haible  <bruno@clisp.org>
31590
31591         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
31592         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
31593         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
31594         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
31595         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
31596         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
31597         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
31598         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
31599         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
31600         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
31601         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
31602         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
31603         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
31604         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
31605         Use an all-permissive copyright notice, recommended by RMS.
31606
31607 2005-01-18  Bob Proulx  <bob@proulx.com>
31608
31609         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
31610         simplify offsetof() macro construct to avoid compile failure with
31611         native HP-UX 11.0 ANSI C compiler.
31612
31613 2005-01-17  Bruno Haible  <bruno@clisp.org>
31614
31615         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
31616         redundant because stpncpy.m4 takes care of it.
31617
31618 2005-01-17  Bruno Haible  <bruno@clisp.org>
31619
31620         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
31621
31622 2005-01-17  Bruno Haible  <bruno@clisp.org>
31623
31624         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
31625         used.
31626
31627 2005-01-17  Bruno Haible  <bruno@clisp.org>
31628
31629         * lib/fwriteerror.h (fwriteerror): Change specification to include
31630         fclose.
31631         * lib/fwriteerror.c: Include <stdbool.h>.
31632         (fwriteerror): At the end, close the file stream. Record whether
31633         stdout was already closed.
31634
31635 2005-01-17  Bruno Haible  <bruno@clisp.org>
31636
31637         * lib/execute.c (environ): Declare if needed.
31638         * lib/pipe.c (environ): Likewise.
31639         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
31640
31641 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31642
31643         * modules/argp: Depend on vsnprintf
31644
31645 2005-01-10  Jim Meyering  <jim@meyering.net>
31646
31647         * modules/closeout (Depends-on): Add atexit.
31648
31649 2005-01-06  Bruno Haible  <bruno@clisp.org>
31650
31651         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
31652
31653 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31654
31655         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
31656         definitions to be after all include files, to avoid collisions.
31657         Problem reported by Bob Proulx.
31658
31659 2005-01-04  Jim Meyering  <jim@meyering.net>
31660
31661         Changes imported from coreutils.
31662         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
31663         as the mkstemp template, use a temporary directory and an
31664         8.3-friendly template to avoid trouble on systems like DJGPP.
31665         Reported by Juan M. Guerrero via Stepan Kasal.
31666         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
31667         close. Remove the temporary directory right away, rather than waiting
31668         for configure's at-exit trap code to do it.
31669         Suggestion from Stepan Kasal.
31670
31671 2005-01-01  Simon Josefsson  <jas@extundo.com>
31672
31673         * gnulib-tool: Print #include directives when --import'ing.
31674
31675 2004-12-28  Simon Josefsson  <jas@extundo.com>
31676
31677         * tests/test-base64.c: Include required header files.  Remove
31678         unused variables.
31679
31680 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
31681
31682         * modules/error (Depends-on): Remove gettext.
31683
31684 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
31685
31686         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
31687         not needed.  This removes a dependency on the gettext module.
31688         [defined _LIBC]: Do not include <libintl.h>; not needed.
31689
31690 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
31691
31692         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
31693         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
31694
31695 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
31696
31697         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
31698         HAVE_DECL_STRTOLD.
31699
31700 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31701
31702         * modules/getdate (Depends-on): Remove alloca-opt.
31703
31704 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31705
31706         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
31707
31708 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
31709
31710         * lib/argp-parse.c: Include <stddef.h>.
31711         (alignof, alignto): New macros.
31712         (parser_init): Don't assume that void * is aligned sufficiently
31713         for struct option.
31714
31715         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
31716         need to extend the stack.
31717         (YYINITDEPTH): New macro, so that the initial stack isn't overly
31718         large.
31719
31720 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31721
31722         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
31723
31724 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
31725
31726         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
31727         (2004-10-24) change.  Apparently this was a false alarm.
31728
31729         * modules/getdate: Depend on alloca-opt, not alloca.
31730
31731 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
31732
31733         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
31734         Remove now-obsolete comment about AIX.
31735         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
31736         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
31737         (YYMAXDEPTH): New macro.
31738
31739 2004-12-18  Simon Josefsson  <jas@extundo.com>
31740
31741         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
31742
31743 2004-12-18  Bruno Haible  <bruno@clisp.org>
31744
31745         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
31746
31747 2004-12-18  Bruno Haible  <bruno@clisp.org>
31748
31749         * lib/fatal-signal.c (fatal_signals): Make non-const.
31750         (init_fatal_signals): New function.
31751         (uninstall_handlers, install_handlers): Ignore signals that were set to
31752         SIG_IGN.
31753         (at_fatal_signal): Call init_fatal_signals.
31754         (init_fatal_signal_set): Likewise. Ignore signals that were set to
31755         SIG_IGN.
31756         Reported by Paul Eggert.
31757
31758 2004-12-18  Bruno Haible  <bruno@clisp.org>
31759
31760         * doc/alloca.texi: New file.
31761         * doc/alloca-opt.texi: New file.
31762
31763 2004-12-17  Jim Meyering  <jim@meyering.net>
31764
31765         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
31766         Otherwise, install-sh could exit with improper exit status when
31767         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
31768
31769 2004-12-16  Simon Josefsson  <jas@extundo.com>
31770
31771         * tests/test-base64.c: Add license.
31772
31773 2004-12-15  Stepan Kasal  <address@hidden>
31774
31775         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
31776
31777 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
31778
31779         * modules/getcwd (Files): Add m4/d-ino.m4.
31780         Suggested by Mark D. Baushke.
31781
31782 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
31783
31784         * lib/getdate.y (textint): New member "negative".
31785         (time_zone_hhmm): New function.
31786         Expect 14 shift-reduce conflicts, not 13.
31787         (o_colon_minutes): New rule.
31788         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
31789         (yylex): Set the "negative" member of signed numbers.
31790
31791 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
31792
31793         * doc/getdate.texi (Time of day items, Time zone items):
31794         Describe new formats +00:00, UTC+00:00.
31795
31796 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31797
31798         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
31799         spurious "-l"s.  Problem reported by Stepan Kasal.
31800
31801 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
31802
31803         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
31804         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
31805
31806 2004-12-04  Simon Josefsson  <jas@extundo.com>
31807
31808         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
31809         Vandoorselaere <yoann@prelude-ids.org>.
31810
31811 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31812
31813         Changes imported from coreutils.
31814         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
31815         exist.
31816         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
31817
31818 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31819
31820         Changes imported from coreutils.
31821         * lib/hard-locale.c: Assume <locale.h> exists.
31822         Include "strdup.h".
31823         (GLIBC_VERSION): New macro.
31824         (hard_locale): Assume setlocale exists.
31825         Rewrite to avoid #ifdef.
31826         Use strdup rather than malloc + strcpy.
31827         * lib/human.c: Assume <locale.h> exists.
31828         (human_readable): Assume localeconv exists.
31829
31830 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
31831
31832         * modules/hard-locale (Depends-on): Add strdup.
31833
31834 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
31835
31836         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
31837         convert T2, not T.  (Imported from libc.)
31838
31839 2004-11-30  Simon Josefsson  <jas@extundo.com>
31840
31841         * modules/restrict (License): Change to LGPL.
31842
31843 2004-11-30  Simon Josefsson  <jas@extundo.com>
31844
31845         * m4/restrict.m4: Add copyright and copying conditions.
31846
31847 2004-11-30  Simon Josefsson  <jas@extundo.com>
31848
31849         * m4/base64.m4: New file.
31850
31851 2004-11-30  Simon Josefsson  <jas@extundo.com>
31852
31853         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
31854         base64.
31855
31856         * tests/test-base64.c: New file.
31857
31858         * modules/base64: New file.
31859
31860 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
31861
31862         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
31863         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
31864
31865         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
31866
31867 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
31868
31869         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
31870         (__getcwd.c): Don't restore errno; glibc doesn't.
31871         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
31872         first, falling back to our code only if its results look suspicious.
31873         Ensure that the resulting buffer is only as large as necessary.
31874
31875         * lib/readutmp.c: Include readutmp.h first.
31876         Include <errno.h>, since readutmp.h no longer does that.
31877         * lib/readutmp.h: Don't include <errno.h>,
31878         <sys/param.h>, <time.h>; not needed to establish interface.
31879         (errno): Remove decl.
31880         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
31881         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
31882         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
31883
31884 2004-11-28  Simon Josefsson  <jas@extundo.com>
31885
31886         * lib/base64.h, base64.c: New file.
31887
31888 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
31889
31890         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
31891
31892 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
31893
31894         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
31895         (Depends-on): Remove pathmax, same.  Add mempcpy.
31896         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
31897         (Makefile.am): Append getcwd.h to lib_SOURCES.
31898         (Include): Add getcwd.h.
31899         (Maintainer): Change from Jim Meyering to "all, glibc",
31900         since getdate now uses intended-for-glibc code.
31901         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
31902         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
31903
31904 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31905
31906         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
31907         HP's ANSI C compiler.
31908         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
31909         Declaring int functions causes warnings on some modern systems and
31910         shouldn't be needed to compile on ancient ones.
31911         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
31912         defined.
31913
31914         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
31915         with the following changes.
31916         (__set_errno): Parenthesize properly.
31917         Include <stdbool.h>.
31918         (MIN, MAX, MATCHING_INO): New macros.
31919         (__getcwd): Define with prototype, not K&R form.
31920         Use heuristics to allocate default buffer on stack if possible.
31921         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
31922         behavior, and to avoid the PATH_MAX limit when computing
31923         ../../../../...
31924         Use MATCHING_INO to compare inode number to file.
31925         Check for arithmetic overflow in size calculations.
31926         Fix bug in reallocation of dot array that caused getcwd to fail
31927         on directories nested deeper than 75.
31928         Be more careful about saving errno on error.
31929         Do not use realloc; use only free+malloc, as this is a bit
31930         more flexible and avoids a needless copy operation.
31931         Do not inspect st_dev and st_ino for symbolic links; POSIX
31932         doesn't specify the latter.
31933         Check for closedir errors.
31934         Avoid needless casts.
31935         Use "#ifdef weak_alias" around weak_alias, to be like other
31936         glibc code.
31937         The following changes to getcwd.c have effect only when used in
31938         gnulib; they have no effect inside glibc proper.
31939         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
31940         as alloca isn't used.
31941         (alloca, __alloca): Likewise.
31942         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
31943         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
31944         unconditionally, as gnulib assumes C89 or better.
31945         Do not include <sys/param.h>.
31946         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
31947         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
31948         better.
31949         (NULL) [!defined NULL]: Remove; we assume C89 or better.
31950         Include <dirent.h> in a way that is compatible with modern Autoconf.
31951         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
31952         New macros, if not already defined.
31953         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
31954         Use "_LIBC", not "defined _LIBC", for consistency.
31955         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
31956         a mempcpy module.
31957         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
31958         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
31959         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
31960         credit only to Jim Meyering and adjust the copyright dates.
31961         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
31962         <stdlib.h>, <unistd.h>, "pathmax.h".
31963         Instead, include "xgetcwd.h" (first) and "getcwd.h".
31964         (INITIAL_BUFFER_SIZE): Remove.
31965         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
31966
31967 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31968
31969         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
31970         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
31971         Use the _ONCE methods, for efficiency.
31972         Check for fcntl.h.  In test program, include <errno.h>
31973         and <fcntl.h> if available.  Remove old K&R cruft from
31974         test program.  Check for common errors in GNU/Linux,
31975         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
31976         don't do AC_LIBOBJ, as that's getcwd.m4's job.
31977         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
31978         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
31979         name accordingly.
31980         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
31981         accommodate new getcwd.c.
31982         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
31983         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
31984         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
31985         that's all we need now.
31986
31987 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31988
31989         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
31990         argp-parse.c depends on getopt internals, that means we should
31991         always use our getopt, to be on the safe side.
31992         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
31993         order not to spoil the result of an eventual previous invocation
31994         of gl_GETOPT_SUBSTITUTE.
31995
31996 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31997
31998         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
31999         redefinition warnings. To avoid them, include the defines
32000         in `#if !defined __need_getopt ... #endif'. The only place
32001         where __getopt_argv_const is used is in definitions
32002         of getopt_long and getopt_long_only below, which are as well
32003         protected by `#ifndef __need_getopt'.
32004         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
32005         __need_getopt after including <stdio.h> and <unistd.h> These
32006         headers might have defined it.
32007
32008 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
32009
32010         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
32011
32012 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
32013
32014         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
32015         (futimens): New function, which uses futimes if available.
32016         (futimens, utimens): Support timespec==NULL, with same semantics
32017         as utime and utimens.
32018         * lib/utimens.h (futimens): New decl.
32019
32020 2004-11-23  Jim Meyering  <jim@meyering.net>
32021
32022         * lib/getopt_.h: Remove trailing blanks.
32023
32024 2004-11-23  Jim Meyering  <jim@meyering.net>
32025
32026         * lib/__fpending.c: Add comment.
32027
32028 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
32029
32030         * modules/canonicalize (Depends-on): Add xreadlink.
32031         Problem reported by James Youngman.
32032
32033 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
32034
32035         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
32036         New macros.
32037         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
32038         optopt): Use them instead of invoking ## directly; otherwise, the
32039         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
32040
32041 2004-11-19  Bruno Haible  <bruno@clisp.org>
32042
32043         * lib/strtok_r.c: Move comments from here...
32044         * lib/strtok_r.h: ... to here.
32045
32046 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
32047
32048         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
32049         implementations that mishandle size_t overflow.
32050
32051 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
32052
32053         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
32054         might fail.  Problem reported by Yoann Vandoorselaere.
32055         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
32056         implementations that mishandle size_t overflow.
32057
32058 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32059
32060         * modules/canon-host (Depends-on): Add strdup.
32061
32062 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32063
32064         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
32065
32066 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32067
32068         * lib/canon-host.c: Include "strdup.h".
32069         (canon_host): Use getaddrinfo if available, so that IPv6 works.
32070         Use strdup instead of malloc/strcpy to duplicate strings.
32071
32072         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
32073         (human_space_before_unit): New constant.
32074         * lib/human.c (human_readable): Support it.
32075
32076         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
32077         (xgetcwd): Set errno correctly when failing.
32078         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
32079         the failure is actually due to a PATH_MAX problem.
32080
32081         Further getopt changes to make it more likely that glibc will
32082         buy the changes back.
32083         * lib/getopt.c (POSIXLY_CORRECT): New constant.
32084         (getopt): Use it, so to preserve glibc semantic
32085         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
32086         when compiling for libc.
32087         * lib/getopt_.h (__getopt_argv_const): Bring it back.
32088         (getopt_long, getopt_long_only): Use it.
32089
32090         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
32091         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
32092         (getopt): Argv is now char * const *, as per standard.
32093         (_getopt_internal_r, _getopt_internal): Argv is now char **,
32094         not char *__getopt_argv_const *.
32095         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
32096         _getopt_long_only_r): Likewise.
32097         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
32098         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
32099         _getopt_long_r, _getopt_long_only_r): Likewise.
32100         * lib/getopt_.h (__getopt_argv_const): Remove.
32101         (getopt): Argv is now char * const *, as per standard.
32102
32103         * lib/getdate.y (tORDINAL): New token.
32104         (day, relunit): Allow it for relative times.
32105         (relative_time_table): Use tORDINAL for ordinals.
32106
32107 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
32108
32109         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
32110         Document that "second" isn't allowed as an ordinal number.
32111
32112 2004-11-16  Jim Meyering  <jim@meyering.net>
32113
32114         * modules/closeout (Depends-on): Add fpending.
32115
32116 2004-11-15  Jim Meyering  <jim@meyering.net>
32117
32118         * lib/closeout.c: Include "__fpending.h" once again.
32119         Include <stdbool.h>.
32120         (close_stdout): Don't fail just because stdout was closed initially,
32121         since some programs don't write to stdout in the normal course of
32122         operation (other than --version and --help), and we don't want this
32123         function to make e.g. `touch file >&-' fail.
32124         But do fail if it was closed and someone has tried to write to it.
32125         E.g., `printf foo >&-' must fail.
32126
32127 2004-11-13  Jim Meyering  <jim@meyering.net>
32128
32129         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
32130
32131 2004-11-12  Simon Josefsson  <jas@extundo.com>
32132
32133         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
32134         small doc fix is still pending.
32135
32136 2004-11-11  Simon Josefsson  <jas@extundo.com>
32137
32138         * modules/strtok_r: New file.
32139
32140         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
32141         strtok_r.
32142
32143 2004-11-11  Simon Josefsson  <jas@extundo.com>
32144
32145         * m4/strtok_r.m4: New file.
32146
32147         * m4/getopt.m4: Replace opterr.
32148
32149 2004-11-11  Simon Josefsson  <jas@extundo.com>
32150
32151         * lib/strtok_r.h, strtok_r.c: New file.
32152
32153 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
32154
32155         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
32156         of replacing opterr, getopt, etc.  This should handle the
32157         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
32158
32159 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
32160
32161         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
32162         we can stop lying to compilers about the constness of argv when we
32163         are compiled outside glibc.
32164         (getopt, getopt_long, getopt_long_only): Use it.
32165         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
32166         _getopt_internal, getopt): Likewise.
32167         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
32168         _getopt_long_only_r): Likewise.
32169         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
32170         _getopt_long_r, _getopt_long_only_r): Likewise.
32171
32172         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
32173         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
32174         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
32175         the other external symbols.
32176         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
32177         declaration, since the above renaming now works around collisions.
32178
32179 2004-11-11  Jim Meyering  <jim@meyering.net>
32180
32181         * lib/linebreak.c: Remove trailing blanks.
32182         * lib/alloca_.h: Likewise.
32183         * lib/acosl.c: Likewise.
32184         * lib/euidaccess.c: Likewise.
32185         * lib/allocsa.h: Likewise.
32186
32187 2004-11-10  Simon Josefsson  <jas@extundo.com>
32188
32189         * m4/getaddrinfo.m4: New file.
32190
32191 2004-11-10  Simon Josefsson  <jas@extundo.com>
32192
32193         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
32194
32195 2004-11-10  Simon Josefsson  <jas@extundo.com>
32196
32197         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
32198         getaddrinfo.
32199
32200         * modules/getaddrinfo: New file.
32201
32202 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32203
32204         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
32205
32206 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32207
32208         * lib/mktime.c (SHR): New macro, which is a portable
32209         substitute for >> that should work even on Crays.
32210         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
32211         Problem reported by Mark D. Baushke in
32212         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
32213         * lib/getdate.y (SHR): Likewise.
32214         (tm_diff): Use it.
32215         * lib/strftime.c (SHR): Likewise.
32216         (tm_diff): Use it.
32217         * lib/quotearg.c (struct quoting_options): Use unsigned int for
32218         quote_these_too, so that right shifts are well defined.  All uses
32219         changed.
32220
32221 2004-11-10  Jim Meyering  <jim@meyering.net>
32222
32223         Ensure that no close failure goes unreported.
32224         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
32225         return early when it seems there's nothing to flush.
32226         Don't include __fpending.h.
32227
32228 2004-11-10  Jim Meyering  <jim@meyering.net>
32229
32230         * modules/closeout (Depends-on): Remove fpending.
32231
32232 2004-11-10  Jim Meyering  <jim@meyering.net>
32233
32234         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
32235
32236 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
32237
32238         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
32239         gl_FUNC_STRFTIME.
32240         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
32241         and AC_REQUIRE when possible, to avoid duplicate checks.
32242         Check for <wchar.h>.
32243
32244 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
32245
32246         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
32247
32248 2004-11-09  Bruno Haible  <bruno@clisp.org>
32249
32250         * m4/sockpfaf.m4: New file.
32251
32252 2004-11-05  Bruno Haible  <bruno@clisp.org>
32253
32254         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
32255         Reported by Mark D. Baushke <mdb@cvshome.org>.
32256
32257 2004-11-04  Bruno Haible  <bruno@clisp.org>
32258
32259         2004-09-11  Bruno Haible  <bruno@clisp.org>
32260                 * allocsa.valgrind: New file.
32261         2004-02-06  Bruno Haible  <bruno@clisp.org>
32262                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
32263                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
32264                 Reported by Christopher Seip <chris.seip@hp.com>.
32265
32266 2004-11-04  Bruno Haible  <bruno@clisp.org>
32267
32268         * modules/allocsa (Files): Add lib/allocsa.valgrind.
32269         (Makefile.am): Distribute it.
32270
32271 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
32272
32273         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
32274         with errno == ERANGE if the buffer is too small.
32275         Problem reported by Mark D. Baushke.
32276
32277 2004-11-03  Albert Chin  <china@thewrittenword.com>
32278             Paul Eggert  <eggert@cs.ucla.edu>
32279
32280         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
32281         equivalent, substitute $ac_type for equivalent type rather than
32282         blindly using uint32_t *always* which won't work if uint32_t is not
32283         available.  Define _UINT32_T to work around typedef of uint32_t if
32284         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
32285         2.5.1.
32286
32287 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32288
32289         * m4/jm-macros.m4: Sync from coreutils.
32290         (gl_MACROS): Check for mbrlen, for pathchk.
32291         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
32292
32293 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32294
32295         * lib/xreadlink.c (MAXSIZE): New macro.
32296         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
32297         size does not exceed MAXSIZE.  Avoid cast.
32298         As suggested by Mark D. Baushke in
32299         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
32300         if readlink fails with buffer size just under MAXSIZE, try again
32301         with MAXSIZE.
32302
32303 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
32304
32305         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
32306
32307 2004-11-02  Derek R. Price  <derek@ximbiot.com>
32308         and  Paul Eggert  <eggert@cs.ucla.edu>
32309
32310         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
32311         (get_date): Overparenthesize to avoid GCC warning.
32312
32313 2004-11-02  Bruno Haible  <bruno@clisp.org>
32314
32315         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
32316         returns void.
32317
32318 2004-11-02  Bruno Haible  <bruno@clisp.org>
32319
32320         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
32321         function returns void.
32322
32323 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
32324
32325         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
32326         fflush_unlocked, flockfile, funlockfile, funlockfile,
32327         fputs_unlocked, putc_unlocked.
32328
32329 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
32330
32331         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
32332         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
32333         already declared.
32334
32335 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32336
32337         * modules/getdate (Files): Add doc/getdate.texi.
32338         (Depends-on): Add setenv, xalloc.
32339
32340 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32341
32342         * lib/getdate.y: Add support for TZ="foo" within a date string.
32343         Fix some bugs near time_t boundaries.  Reject dates with
32344         out-of-range components, e.g., "Sept 31".
32345         Include <stdlib.h>, "setenv.h", "xalloc.h".
32346         (ISDIGIT_LOCALE): Remove; unused.
32347         Note that the TZ and time functions used here are not reentrant.
32348         (mktime_ok, get_tz): New functions.
32349         (TZBUFSIZE): New constant.
32350         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
32351         This requires that we sometimes generate our own TZ="XXX..." setting.
32352
32353 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32354
32355         * doc/getdate.texi: New file, from coreutils with modifications for
32356         the new TZ parsing.
32357
32358 2004-10-27  Derek R. Price  <derek@ximbiot.com>
32359
32360         * lib/mktime.c (not_equal_tm): Remove redundant check.
32361
32362 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
32363
32364         * modules/regex (lib_SOURCES): Add regex.c.
32365         Reported by James Youngman in
32366         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
32367
32368 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
32369
32370         * lib/getdate.y: Use Bison 1.875 features, and some minor
32371         code cleanups.  This change does not affect semantics.
32372         Don't include <stdlib.h>; no longer needed.
32373         Don't include unlocked-io.h; only the "#if TEST" code uses
32374         stdio, and performance isn't crucial there.
32375         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
32376         Bison 1.875 features as described below.
32377         All uses of "PC." replaced by "pc->".
32378         (YYSTYPE): Add a forward declaration.
32379         (yylex, yyerror): Use full prototypes in forward decls.
32380         Use "%pure-parser" rather than obsolescent "%pure_parser".
32381         Use %parse-param and %lex-param instead of obsolescent
32382         YYPARSE_PARAM and YYLEX_PARAM.
32383         (meridian_table, month_and_day_table, time_units_table,
32384         relative_time_table, time_zone_table, military_table,
32385         lookup_zone, lookup_word, get_date):
32386         Use NULL instead of 0 where appropriate.
32387         (to_hour): Avoid abort (), to avoid a dependency on
32388         stdlib.h.
32389         (yyerror, yylex): Now accepts parser_control * arg.
32390         (main) [TEST]: Use '\0' rather than 0 for char.
32391
32392 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
32393
32394         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
32395
32396 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
32397
32398         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
32399         It's now the caller's responsibility to handle the case where
32400         !HAVE_GETPAGESIZE && !defined getpagesize.
32401
32402         * lib/mktime.c (leapyear): Arg is long int, not int.
32403
32404 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
32405
32406         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
32407
32408 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
32409
32410         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
32411         missing.  Problem reported by James Youngman.
32412
32413 2004-10-16  Simon Josefsson  <jas@extundo.com>
32414
32415         * gnulib-tool: Fix comments.  Fix parse problem.
32416         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
32417
32418 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
32419
32420         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
32421         implementation of getopt_long.  Problem reported by Alexander Taler in:
32422         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
32423
32424 2004-10-15  Bruno Haible  <bruno@clisp.org>
32425
32426         * gnulib-tool: Untabify. Initialize supplied_libname.
32427         (func_usage): More homogenous output.
32428         (func_modules_transitive_closure, func_modules_to_filelist,
32429         func_emit_lib_Makefile_am): New functions.
32430         (func_import): New function, extracted from big case statement. Use
32431         func_get_license, func_modules_transitive_closure,
32432         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
32433         opt_lgpl. Don't use test -a, as it's not portable.
32434         (func_create_testdir): Use func_modules_transitive_closure,
32435         func_modules_to_filelist, func_emit_lib_Makefile_am.
32436
32437 2004-10-15  Bruno Haible  <bruno@clisp.org>
32438
32439         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
32440
32441 2004-10-15  Bruno Haible  <bruno@clisp.org>
32442
32443         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
32444         the portions belonging to each module.
32445         Suggested by Derek Robert Price <derek@ximbiot.com>.
32446
32447 2004-10-12  Simon Josefsson  <jas@extundo.com>
32448
32449         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
32450         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
32451         to real functions.
32452
32453 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32454
32455         * modules/vsnprintf: New file.
32456
32457 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32458
32459         * m4/vsnprintf.m4: New file.
32460
32461 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32462
32463         * lib/vsnprintf.h: New file.
32464         * lib/vsnprintf.c: New file.
32465
32466 2004-10-11  Bruno Haible  <bruno@clisp.org>
32467
32468         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
32469         vsnprintf.
32470
32471 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
32472
32473         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
32474
32475 2004-10-07  Bruno Haible  <bruno@clisp.org>
32476
32477         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
32478         fits into the provided buffer.
32479
32480 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
32481
32482         * lib/diacrit.c, diacrit.h: Add GPL notice.
32483
32484         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
32485         notice.
32486         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
32487         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
32488         This avoids a potential constant-folding bug.
32489
32490 2004-10-05  Bruno Haible  <bruno@clisp.org>
32491
32492         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
32493         for the declaration of strsep.
32494
32495 2004-10-05  Bruno Haible  <bruno@clisp.org>
32496
32497         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
32498
32499 2004-10-04  Simon Josefsson  <jas@extundo.com>
32500
32501         * modules/memmem: New file.
32502         * tests/test-memmem.c: New file.
32503         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
32504
32505 2004-10-04  Simon Josefsson  <jas@extundo.com>
32506
32507         * m4/memmem.m4: New file.
32508
32509 2004-10-04  Simon Josefsson  <jas@extundo.com>
32510
32511         * lib/memmem.h: New file.
32512         * lib/memmem.c: New file, taken from glibc.
32513
32514 2004-10-04  Simon Josefsson  <jas@extundo.com>
32515
32516         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
32517         '#ifdef USE_UNLOCKED_IO'.
32518
32519 2004-10-04  Simon Josefsson  <jas@extundo.com>
32520
32521         * config/srclist.txt: Add memmem from glibc.
32522
32523 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32524
32525         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
32526
32527         * modules/argmatch, modules/argp, modules/closeout, modules/error,
32528         modules/exclude, modules/getdate, modules/getline,
32529         modules/getndelim2, modules/getpass, modules/getpass-gnu,
32530         modules/getusershell, modules/linebuffer, modules/md5,
32531         modules/mountlist, modules/posixtm, modules/readtokens,
32532         modules/readutmp, modules/regex, modules/sha1,
32533         modules/version-etc, modules/yesno:
32534         Remove dependency on unlocked-io.
32535
32536 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32537
32538         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
32539
32540         * m4/unlocked-io.m4: Add copyright notice.
32541         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
32542
32543 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32544
32545         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
32546         * lib/xmalloc.c (xmemdup): Likewise.
32547         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
32548         XFREE): Remove these long-obsolescent macros.
32549         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
32550         * lib/xstrdup.c: Remove.
32551
32552         * lib/regex.c (re_comp): Cast gettext return value to char *,
32553         Problem reported by Martin Neitzel via Mark D. Baushke.
32554
32555 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
32556
32557         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
32558         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
32559         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
32560         regex.c, sha1.c, version-etc.c, yesno.c:
32561         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
32562         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
32563         the includer's responsibility.
32564
32565         Sync from coreutils.
32566
32567         * lib/modechange.c (mode_compile): Don't decrement a pointer that
32568         points to the start of a string, as the C Standard says the
32569         resulting behavior is undefined.
32570
32571         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
32572         simple -> simple_backups, numbered_existing ->
32573         numbered_existing_backups, numbered -> numbered_backups
32574         to avoid shadowing problems.  All uses changed.
32575         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
32576         * lib/backupfile.c (check_extension, numbered_backup):
32577         Rename locals to avoid shadowing 'basename'.
32578         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
32579         once.
32580
32581         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
32582         * lib/.cvsignore: Add getopt.h.
32583
32584 2004-10-04  Bruno Haible  <bruno@clisp.org>
32585
32586         * modules/README: New file.
32587         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
32588         not a module.
32589
32590 2004-10-02  Jim Meyering  <jim@meyering.net>
32591
32592         * lib/dirfd.h, getpagesize.h: Add copyright notice.
32593
32594 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32595
32596         * modules/strsep: New file.
32597
32598 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32599
32600         * m4/strsep.m4: New file.
32601
32602 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
32603
32604         * lib/strsep.h: New file.
32605         * lib/strsep.c: New file.
32606
32607 2004-10-01  Simon Josefsson  <jas@extundo.com>
32608
32609         * lib/snprintf.c (snprintf): Handle size==0.
32610
32611 2004-10-01  Simon Josefsson  <jas@extundo.com>
32612             Bruno Haible  <bruno@clisp.org>
32613
32614         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
32615         (snprintf): Declare 'args'.
32616
32617 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
32618
32619         * lib/snprintf.c: Remove comments as to why each header is needed.
32620
32621 2004-10-01  Bruno Haible  <bruno@clisp.org>
32622
32623         * MODULES.html.sh: Add strsep.
32624
32625 2004-09-30  Simon Josefsson  <jas@extundo.com>
32626
32627         * modules/snprintf: New file.
32628
32629 2004-09-30  Simon Josefsson  <jas@extundo.com>
32630
32631         * m4/snprintf.m4: New file.
32632
32633 2004-09-30  Simon Josefsson  <jas@extundo.com>
32634
32635         * lib/snprintf.h, lib/snprintf.c: New files.
32636
32637 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
32638
32639         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
32640         (hol_entry_help): Never translate an empty string.
32641         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
32642         * lib/argp.h (OPTION_NO_TRANS): New option.
32643
32644 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32645
32646         * modules/argp (Maintainer): Replace Simon Josefsson
32647         by Sergey Poznyakoff.
32648
32649 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32650
32651         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
32652         changes merged back into glibc.
32653
32654 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
32655
32656         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
32657
32658 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
32659
32660         * lib/xvasprintf.c: Include xalloc.h.
32661         (xvasprintf): Use xalloc_die, not xmalloc_die.
32662
32663 2004-09-29  Bruno Haible  <bruno@clisp.org>
32664
32665         * modules/alloca-opt: New file, derived from modules/alloca.
32666         * modules/allocsa: Depend on alloca-opt instead of alloca.
32667         * modules/setenv: Likewise.
32668         * modules/vasnprintf: Likewise.
32669         * MODULES.html.sh: Add alloca-opt.
32670
32671 2004-09-28  Simon Josefsson  <jas@extundo.com>
32672
32673         * gnulib-tool: New parameter --lgpl, to asseert that modules are
32674         LGPL, and to replace license template from GPL to LGPL.
32675
32676 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
32677
32678         * modules/dummy: Change license to LGPL.
32679
32680 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
32681
32682         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
32683
32684 2004-09-24  Simon Josefsson  <jas@extundo.com>
32685
32686         * modules/minmax (License): Change from GPL to LGPL.
32687
32688 2004-09-23  Simon Josefsson  <jas@extundo.com>
32689
32690         * gnulib-tool (--import): Typo.
32691
32692 2004-09-23  Simon Josefsson  <jas@extundo.com>
32693
32694         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
32695
32696 2004-09-22  Bruno Haible  <bruno@clisp.org>
32697
32698         * modules/*: Add 'License' field.
32699         * gnulib-tool: Accept --extract-license option.
32700         (func_get_license): New function.
32701
32702 2004-09-21  Bruno Haible  <bruno@clisp.org>
32703
32704         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
32705         Reported by Simon Josefsson.
32706
32707 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32708
32709         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
32710         gl_AC_TYPE_LONG_LONG.
32711
32712 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
32713
32714         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
32715
32716 2004-09-18  Simon Josefsson  <jas@extundo.com>
32717         and  Paul Eggert  <eggert@cs.ucla.edu>
32718
32719         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
32720         calls with autoreconf.  Define GL_LIB.
32721
32722 2004-09-14  Karl Berry  <karl@gnu.org>
32723
32724         * config/srclist.txt: unsync setenv.c, sigh.
32725
32726 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32727
32728         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
32729         Problem reported by Bruno Haible in:
32730         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
32731
32732 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32733
32734         * config/srclist.txt: Comment out argp-pvh.c.
32735
32736 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
32737
32738         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
32739         in case some system header has #define'd it.  Problem reported by
32740         Soeren D. Schulze in
32741         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
32742
32743 2004-09-09  Karl Berry  <karl@gnu.org>
32744
32745         * regex.[ch]: delete from the root.  These were supposed to be
32746                 synced with emacs cvs, but this has not happened for about
32747                 a year, and anyway nothing else uses emacs regex.[ch].
32748                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
32749                 lib/regex[.ch] is untouched.
32750
32751 2004-09-09  Bruno Haible  <bruno@clisp.org>
32752
32753         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
32754
32755 2004-09-09  Bruno Haible  <bruno@clisp.org>
32756
32757         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
32758         modifications.
32759         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
32760
32761 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
32762
32763         * modules/xvasprintf: New file.
32764         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
32765
32766 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
32767
32768         * lib/xvasprintf.h: New file.
32769         * lib/xvasprintf.c: New file.
32770         * lib/xasprintf.c: New file.
32771
32772 2004-09-08  Bruno Haible  <bruno@clisp.org>
32773
32774         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
32775
32776 2004-09-08  Bruno Haible  <bruno@clisp.org>
32777
32778         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
32779         length is > INT_MAX.
32780         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
32781         more.
32782
32783 2004-09-08  Bruno Haible  <bruno@clisp.org>
32784
32785         * lib/stdint_.h: New file, taken from GNU clisp.
32786
32787 2004-09-08  Bruno Haible  <bruno@clisp.org>
32788             Oskar Liljeblad  <oskar@osk.mine.nu>
32789
32790         * modules/stdint: New file.
32791         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
32792
32793 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32794
32795         Import from coreutils.
32796         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
32797         strings on unbounded length.  alloca's performance benefits aren't
32798         that important here.
32799         (V_STRDUP): Remove.
32800         (parse_with_separator): New function, with most of the internals
32801         of the old parse_user_spec.  Allow user to omit both user and group,
32802         for compatibility with FreeBSD.
32803         Clone only the user name, not the entire spec.
32804         Do not set *uid, *gid unless entirely successful.
32805         Avoid memory leak in some failing cases.
32806         Fix regression for USER.GROUP reported by Dmitry V. Levin in
32807         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
32808         (parse_user_spec): Rewrite to use parse_with_separator.
32809
32810 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32811
32812         * modules/userspec: Don't depend on alloca.
32813
32814 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32815
32816         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
32817
32818 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
32819
32820         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
32821         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
32822         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
32823
32824 2004-08-16  Simon Josefsson  <jas@extundo.com>
32825
32826         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
32827         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
32828         Add --dry-run for --import.
32829         Let user provided command line parameters override configure.ac
32830         settings.
32831
32832 2004-08-12  Simon Josefsson  <jas@extundo.com>
32833
32834         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
32835         as discussed with Paul Eggert in threads rooted at
32836         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
32837         and
32838         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
32839         Before, the test was empty, and relied on ELIDE_CODE in source
32840         code.)
32841         (gl_PREREQ_GETOPT): New macro.
32842         (gl_GETOPT): Use them.
32843
32844 2004-08-12  Simon Josefsson  <jas@extundo.com>
32845
32846         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
32847         * lib/getopt_.h: Renamed from getopt.h.
32848
32849 2004-08-12  Simon Josefsson  <jas@extundo.com>
32850
32851         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
32852         Change default library name from libfoo to libgnu.
32853         Now, if you have a configure.ac that says:
32854                 gl_SOURCE_BASE(gl)
32855                 gl_M4_BASE(gl/m4)
32856                 gl_MODULES(error getopt etcetera)
32857                 gl_INIT
32858         you can import all you need by running:
32859                 ../gnulib/gnulib-tool --import
32860
32861         * modules/getopt (Files): Rename getopt.h to getopt_.h.
32862         (Makefile.am): Rewrite, use logic from argz.
32863         (Include): Use <getopt.h> instead of "getopt.h".
32864
32865 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32866
32867         * modules/argp (Files): Add m4/unlocked-io.m4.
32868         (Depends-on): Add extensions.
32869
32870 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32871
32872         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
32873         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
32874         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
32875         Check for program_invocation_name, program_invocation_short_name,
32876         flockfile, funlockfile, features.h, _getopt_long_only_r.
32877
32878 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32879
32880         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
32881         its complicated substitute.
32882         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
32883         and program_invocation_name.
32884         (__argp_basename) [!_LIBC]: Remove; the only use was
32885         replaced by its body.
32886         (__argp_short_program_name): Change condition from
32887         !defined __argp_short_program_name to
32888         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
32889         to match argp-namefrob.h.
32890         (__argp_failure): Don't assume strerror_r returns char *.
32891         * lib/argp-parse.c (N_): Define unconditionally.
32892         (argp_default_options): Fill out initializers with 0 to avoid
32893         gcc warnings.
32894
32895 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
32896
32897         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
32898         getopt1.c.
32899
32900 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32901
32902         Merge from coreutils.
32903
32904         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
32905
32906         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
32907         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
32908
32909 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32910
32911         Merge from coreutils.
32912
32913         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
32914         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
32915         for Reliant Unix 5.43.
32916
32917         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
32918         (union fooround): Use uintmax_t, not long int.
32919         The rest is a merge from libc:
32920         [defined _LIBC]: Include <shlib-compat.h>.
32921         (_obstack) [defined _LIBC]: Remove after 2.3.4.
32922
32923         * lib/settime.c (settime): Recode to avoid warning with
32924         Sun Forte C 6U2.
32925
32926         * lib/strverscmp.c: Convert to UTF-8.
32927
32928 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32929
32930         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
32931         m4/uintmax_t.m4.
32932
32933 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32934
32935         * modules/xalloc-die: New file.
32936         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
32937
32938         * modules/md5 (Files): Add m4/uint32_t.m4.
32939         * modules/sha1: Renamed from modules/sha.
32940         (Files):
32941         Rename lib/sha.h to lib/sha1.h.
32942         Rename lib/sha.c to lib/sha1.c.
32943         Rename m4/sha.m4 to m4/sha1.m4.
32944         (lib_SOURCES): Likewise.
32945         (configure.ac): Rename gl_SHA to gl_SHA1.
32946         (Include): sha.h -> sha1.h.
32947
32948 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32949
32950         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
32951         * m4/sha1.m4: Renamed from sha.m4.
32952         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
32953
32954 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32955
32956         * lib/obstack.h (obstack_empty_p):
32957         Don't assume that chunk->contents is suitably aligned.
32958         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
32959         Likewise. Problem reported by Benno in
32960         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
32961
32962         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
32963         readable.  This could be improved further but it'd take some work.
32964
32965 2004-08-08  Simon Josefsson  <jas@extundo.com>
32966
32967         * modules/xgethostname (Depends-on): Remove exit and error (not
32968         used).
32969
32970         * modules/getpass-gnu: Add getpass.h.
32971         (Depends-on): Add stdbool.
32972         * modules/getpass: Add getpass.h.
32973
32974 2004-08-08  Simon Josefsson  <jas@extundo.com>
32975
32976         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
32977         Check getpass declaration.
32978
32979 2004-08-08  Simon Josefsson  <jas@extundo.com>
32980
32981         * lib/xgethostname.c: Don't include error.h (not used).
32982
32983         * lib/getpass.h: Add.
32984         * lib/getpass.c: Include getpass.h first.
32985
32986 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
32987
32988         * lib/xalloc-die.c: New file.
32989         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
32990         All uses removed.
32991         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
32992         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
32993         xalloc-die.c.
32994         (_, N_, xalloc_die): Move to xalloc-die.c.
32995         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
32996         so that we needn't mess with xalloc_msg_memory_exhausted.
32997
32998         * lib/sha1.h: Renamed from sha.h.
32999         (SHA1_H): Renamed from _SHA_H.
33000         (sha1_ctx): Renamed from sha_ctx.
33001         (sha1_init_ctx): Renamed from sha_init_ctx.
33002         (sha1_process_block): Renamed from sha_process_block.
33003         (sha1_process_bytes): Renamed from sha_process_bytes.
33004         (sha1_finish_ctx): Renamed from sha_finish_ctx.
33005         (sha1_read_ctx): Renamed from sha_read_ctx.
33006         (sha1_stream): Renamed from sha_stream.
33007         (sha1_buffer): Renamed from sha_buffer.
33008         * lib/sha1.c: Likewise; renamed from sha.c.
33009         Do not include <sys/types.h>.
33010         Include <stddef.h> rather than <stdlib.h>.
33011
33012 2004-08-08  Bruno Haible  <bruno@clisp.org>
33013
33014         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
33015         FILESYSTEM_PREFIX_LEN.
33016         * lib/progreloc.c: Likewise.
33017         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
33018
33019 2004-08-06  Simon Josefsson  <jas@extundo.com>
33020
33021         * modules/progname (Depends-on): Don't depend on stdbool.
33022
33023 2004-08-06  Simon Josefsson  <jas@extundo.com>
33024
33025         * modules/getsubopt: New file.
33026         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
33027         getsubopt.
33028
33029 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33030
33031         More merge from coreutils.
33032
33033         * m4/utimens.m4, m4/utimecmp.m4: New files.
33034         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
33035         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
33036         prereq.m4, sha.m4: Import changes from coreutils.
33037
33038 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33039
33040         More merge from coreutils.
33041         * modules/raise, modules/readtokens0, modules/utimens:
33042         * modules/utimecmp, module/xnanosleep: New files.
33043         * modules/strftime: Add lib/strftime.h.
33044         Change include from <time.h> to "strftime.h".
33045         * modules/yesno: Add lib/yesno.h.
33046         * modules/backupfile: Remove lib/addext.c.
33047         * modules/euidaccess: Add stat-macros.h.
33048         * modules/canonicalize, modules/euidaccess,
33049         modules/filemode, modules/lchown, modules/makepath,
33050         modules/rmdir, modules/stat: Likewise.
33051
33052 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33053
33054         Merge from tar.
33055         * lib/argp-help.c (make_hol, hol_append): Don't assume that
33056         SIZE_MAX is a valid preprocessor constant.
33057         (__argp_basename): Change from "#ifndef _LIBC"
33058         to "#ifndef __argp_short_program_name", so that
33059         we don't compile these functions for tar.
33060
33061         More merges from coreutils.
33062         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
33063         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
33064         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
33065         * lib/addext.c: Remove; no longer needed.
33066         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
33067         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
33068         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
33069         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
33070         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
33071         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
33072         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
33073         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
33074         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
33075         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
33076         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
33077         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
33078         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
33079         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
33080         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
33081         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
33082         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
33083         Import changes from coreutils.
33084
33085 2004-08-05  Simon Josefsson  <jas@extundo.com>
33086
33087         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
33088
33089 2004-08-05  Simon Josefsson  <jas@extundo.com>
33090
33091         * m4/getsubopt.m4: New file.
33092
33093 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33094
33095         Merge from coreutils.
33096
33097         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
33098         * m4/getcwd-path-max.m4: New files.
33099
33100         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
33101         FILESYSTEM_PREFIX_LEN ->
33102         FILE_SYSTEM_PREFIX_LEN.
33103         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
33104         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
33105         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
33106         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
33107
33108         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
33109         prerequisite modules now handle the DOS stuff.
33110         Don't check for unistd.h.
33111
33112 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33113
33114         Merge from coreutils.
33115
33116         * lib/.gdb-history: Remove; this doesn't belong here.
33117
33118         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
33119         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
33120         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
33121         * lib/getcwd.c: New files.
33122
33123         * lib/dirname.h: Include <stdbool.h>.
33124         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
33125         for consistency with POSIX terminology.  All uses changed.
33126         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
33127         (strip_trailing_slashes): Use bool for booleans.
33128         * lib/stripslash.c (strip_trailing_slashes): Likewise.
33129
33130         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
33131         sometimes returns a positive errno value even when it succeeds.
33132         (print_errno_message) [!LIBC]: Fall back on strerror if
33133         __strerror_r fails.
33134
33135         * lib/path-concat.c (mempcpy): Don't define if a system header defines
33136         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
33137         (longest_relative_suffix): New function.
33138         (path_concat): Use it.  Assume first argument is not NULL.
33139         Port to DOS.  Omit redundant separators.
33140         Report an error instead of returning NULL.
33141         Use mempcpy instead of memcpy.
33142         (xpath_concat): Remove: not declared or used.
33143
33144         * lib/same.h: Include <stdbool.h>
33145         (same_name): Return bool, not int.
33146         * lib/same.c (same_name): Likewise.
33147         (errno): Don't declare; we assume C89 or better now.
33148
33149         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
33150         if not already defined.
33151
33152         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
33153         * lib/dup-safer.c (errno): Likewise.
33154
33155 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
33156
33157         Merge from coreutils.
33158         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
33159         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
33160         * modules/path-concat: Don't depend on strdup.
33161
33162 2004-08-03  Simon Josefsson  <jas@extundo.com>
33163
33164         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
33165         * lib/progname.h: Don't include stdbool.h.
33166
33167 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33168
33169         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
33170         * MODULES.html.sh (func_all_modules): Remove fatal.
33171
33172 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33173
33174         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
33175
33176 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
33177
33178         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
33179         working.
33180
33181 2004-08-02  Simon Josefsson  <jas@extundo.com>
33182
33183         * lib/getsubopt.h: New file, with comments from Bruno Haible.
33184         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
33185         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
33186
33187 2004-08-01  Simon Josefsson  <jas@extundo.com>
33188
33189         * lib/xgetdomainname.c: Include stdlib.h, for free().
33190
33191 2004-07-19  Bruno Haible  <bruno@clisp.org>
33192
33193         * MODULES.html.sh (func_all_modules): Add dummy.
33194
33195 2004-07-16  Simon Josefsson  <jas@extundo.com>
33196
33197         * modules/dummy: New file.
33198
33199 2004-07-16  Simon Josefsson  <jas@extundo.com>
33200
33201         * lib/dummy.c: New file.
33202
33203 2004-07-16  Bruno Haible  <bruno@clisp.org>
33204
33205         * lib/backupfile.h: Add extern "C" for C++.
33206         * lib/closeout.h: Likewise.
33207         * lib/copy-file.h: Likewise.
33208         * lib/findprog.h: Likewise.
33209         * lib/full-write.h: Likewise.
33210         * lib/pathname.h: Likewise.
33211         * lib/progname.h: Likewise.
33212         * lib/stpcpy.h: Likewise.
33213         * lib/stpncpy.h: Likewise.
33214         * lib/strcase.h: Likewise.
33215         * lib/strstr.h: Likewise.
33216         * lib/xalloc.h: Likewise.
33217
33218         * lib/mbswidth.h: Add extern "C" for C++.
33219         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
33220
33221 2004-07-13  Robert Millan  <robertmh@gnu.org>
33222
33223         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
33224
33225 2004-07-09  Simon Josefsson  <jas@extundo.com>
33226
33227         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
33228         failed without this.)
33229
33230 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33231
33232         * modules/chown (Files): Add lib/fchown-stub.c, since
33233         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
33234
33235 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33236
33237         * lib/fchown-stub.c: New file.
33238
33239 2004-06-24  Jim Meyering  <jim@meyering.net>
33240
33241         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
33242
33243 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33244
33245         * modules/argz: Omit "#include".
33246
33247         * MODULES.html.sh (func_all_modules): Add calloc, to match
33248         2004-06-01 addition of calloc module.
33249
33250 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33251
33252         * m4/argz.m4: New file, which is autoupdated from libtool.
33253
33254 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33255
33256         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
33257         libtool.
33258
33259 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33260
33261         * config/srclist-update: Don't insist on "USA." before the
33262         close-comment, as libtool omits the period and puts the */ on a
33263         separate line.
33264         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
33265         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
33266
33267 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
33268
33269         * modules/argz: New file.
33270         * MODULES.html.sh (func_all_modules): Add argz.
33271
33272 2004-06-12  Jim Meyering  <jim@meyering.net>
33273         and  Paul Eggert  <eggert@cs.ucla.edu>
33274
33275         * modules/hash (Files): Add lib/xalloc.h.
33276         * modules/pipe (Depends-on): Add wait-process.
33277         * modules/stat (Depends-on): Add xalloc.
33278         * modules/userspec (Files): Add lib/userspec.h.
33279         * modules/xstrto
33280
33281         Upgrade from gettext-0.13.
33282         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
33283         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
33284         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
33285
33286 2004-06-10  Jim Meyering  <jim@meyering.net>
33287
33288         * lib/calloc.c: New file.
33289
33290 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
33291
33292         * lib/getdate.y (yylex): Allow space between sign and number.
33293         Problem reported by Dan Jacobson.
33294
33295 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
33296
33297         Merge from coreutils CVS.
33298
33299         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
33300         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
33301         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
33302         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
33303         xstrtol.m4: Fix copyright date and/or serial number.
33304
33305         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
33306         See if we need an fchown replacement.
33307         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
33308         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
33309         and use the replacement function if we detect either defect.
33310
33311         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
33312         gl_UTIMECMP.
33313
33314 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
33315         and  Jim Meyering  <jim@meyering.net>
33316
33317         Merge from coreutils CVS.
33318
33319         * lib/stat-macros.h: New file, with contents from file-type.h
33320         and coreutils' system.h.
33321         * lib/file-type.c: Include "stat-macros.h".
33322         * lib/file-type.h (file_type): Move all macro definitions to new file,
33323         stat-macros.h.
33324
33325         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
33326         Wrap old code with this conditional.
33327         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
33328         function that does not dereference symlinks.
33329         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
33330
33331         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
33332         dependency problems.
33333         (xreadlink): Accept new arg SIZE, for efficiency.
33334         All decls and uses changed.
33335         * lib/xreadlink.h: Include <stddef.h>, for size_t.
33336
33337         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
33338         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
33339
33340         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
33341         sysexits.h.
33342
33343 2004-06-01  Jim Meyering  <jim@meyering.net>
33344
33345         * m4/calloc.m4: New file.
33346
33347 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
33348
33349         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
33350         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
33351         Also, fix a typo in a diagnostic.
33352
33353 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
33354
33355         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
33356         or AC_FUNC_REALLOC.
33357
33358 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
33359
33360         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
33361         macros to be defined.
33362         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
33363         the allocator returns NULL because the requested size is zero.
33364
33365 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
33366
33367         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
33368         var.  Add comment explaining why libc still defines it.  This
33369         merges the following patch from glibc:
33370         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
33371
33372 2004-05-20  Andreas Schwab  <schwab@suse.de>
33373
33374         * m4/free.m4: Replace free if it not known to work, not the other
33375         way round.
33376
33377 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
33378
33379         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
33380         present in glibc since revision 1.1 of this file.
33381         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
33382         obstack_alignment_mask, obstack_alloc, obstack_base,
33383         obstack_blank, obstack_blank_fast, obstack_chunk_size,
33384         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
33385         obstack_grow0, obstack_init, obstack_int_grow,
33386         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
33387         obstack_next_free, obstack_object_size, obstack_ptr_grow,
33388         obstack_ptr_grow_fast, obstack_room): Remove declarations of
33389         nonexistent functions.
33390
33391 2004-05-18  Karl Berry  <karl@gnu.org>
33392
33393         * config/srclist.txt: break link for vasnprintf.c.
33394
33395 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33396
33397         Port obstack to the AS/400, where pointers are 16 bytes wide and
33398         you cannot cast an integer to a valid pointer.  This patch is
33399         currently waiting to be integrated into glibc; see
33400         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
33401
33402         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
33403         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
33404         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
33405         (struct obstack): temp member is now a union of a pointer and
33406         an integer, instead of an integer.  All integer uses changed.
33407         This does not affect the physical layout of struct obstack,
33408         except on hosts (like the AS/400) where the size or alignment of
33409         void * is greater than that of ptrdiff_t.
33410         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
33411         __STDC__)]: Store temporary in pointer member of union, not
33412         integer member.
33413         * lib/obstack.c: Include <stddef.h>, for offsetof.
33414         (struct fooalign): Remove; it doesn't need a name.
33415         (union fooround): Change double to long double, and add void *.
33416         (DEFAULT_ALIGNMENT): Use offsetof to compute.
33417         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
33418         not a macro.  Hence the values are always int; so remove all
33419         casts-to-int in uses.
33420
33421 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33422
33423         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
33424         we can get this patch merged into glibc.
33425
33426 2004-05-17  Derek R. Price  <derek@ximbiot.com>
33427             Paul Eggert  <eggert@cs.ucla.edu>
33428
33429         * m4/argp: Depend on alloca.
33430
33431 2004-05-17  Derek R. Price  <derek@ximbiot.com>
33432             Paul Eggert  <eggert@cs.ucla.edu>
33433
33434         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
33435         freecoding.
33436
33437 2004-05-17  Bruno Haible  <bruno@clisp.org>
33438
33439         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
33440         precision that consists of a '.' followed by an empty digit string.
33441         Patch by Tor Lillqvist <tml@iki.fi>.
33442
33443 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
33444
33445         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
33446         for backward compatibility with older code.  We need our own
33447         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
33448         it under some other name, and our alloca.h will define it.
33449
33450 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
33451             Derek Price  <derek@ximbiot.com>
33452
33453         * lib/alloca.c: Include <alloca.h>, to get our interface.
33454         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
33455         include <alloca.h> first.  Use C89 prototype for alloca; this
33456         requires including <stddef.h> for size_t.  Use extern "C" if C++.
33457         Use #elif for simplicity, since we can assume C89 now.
33458         Don't try to source the system alloca.h since it will not be found
33459         and to prevent recursively including its replacement.
33460         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
33461         * lib/regex.c: Likewise.
33462
33463 2004-05-16  Derek Price  <derek@ximbiot.com>
33464             Paul Eggert  <eggert@cs.ucla.edu>
33465
33466         getline cleanup.  This changes the getndelim2 API: both order of
33467         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
33468         no delimiter).
33469
33470         * lib/getline.c: Don't include stddef.h or stdio.h, since our
33471         interface does that.
33472         (getline): Always use getdelim, so that we don't have two
33473         copies of this code.
33474         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
33475         if available.
33476         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
33477         (GETNDELIM2_MAXIMUM): New macro.
33478         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
33479         instead of the old practice of delim2==0.  All callers changed.
33480         Return -1 on overflow, instead of returning junk.
33481         Do not set *linesize unless allocation succeeds.
33482         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
33483         that we include sys/types.h.
33484         * lib/getnline.h: Likewise.
33485         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
33486         (getndelim2): Reorder arguments.
33487         * lib/getnline.c (getnline, getndelim):
33488         Don't discard the NMAX argument.
33489         (getnline): Invoke getndelim, to avoid code duplication.
33490         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
33491         of (size_t) -1 by callers of the getnline family.
33492
33493 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
33494
33495         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
33496         Check for gettimeofday.
33497         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
33498         Check for settimeofday, stime.
33499
33500 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
33501
33502         * lib/nanosleep.c (suspended): Change its type from int to
33503         sig_atomic_t volatile.
33504         (first_call): Make it private to rpl_nanosleep, and have it
33505         be zero initially as that's a bit faster.
33506         (my_usleep): Round up fractional times instead of truncating them,
33507         as this is the usual meaning for 'sleep'.
33508
33509         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
33510         doesn't work.
33511         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
33512         (ENOSYS): Define if not defined.
33513         (settime): Fall back on stime if it exists and settimeofday fails.
33514         But don't bother with fallbacks if a method fails with errno == EPERM.
33515
33516 2004-05-11  Jim Meyering  <jim@meyering.net>
33517
33518         Prior to this change, the save_cwd caller required read access to the
33519         current directory on most systems (ones with the fchdir function).
33520
33521         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
33522         fails, try write-only, and finally, resort to using xgetcwd.
33523
33524 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
33525
33526         * lib/obstack.c, obstack.h: Import changes from libc.
33527
33528 2004-04-28  Bruno Haible  <bruno@clisp.org>
33529
33530         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
33531         also implicitly appends .exe to executables.
33532         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
33533         accepts Windows pathnames.
33534         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
33535         Treat Cygwin like Windows, since it now accepts Windows pathnames.
33536         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
33537         Treat Cygwin like Windows, since it now accepts Windows pathnames.
33538         Reported by Derek Robert Price <derek@ximbiot.com>.
33539
33540 2004-04-21  Karl Berry  <karl@gnu.org>
33541
33542         * config/srclist.txt (localcharset.c): break sync.
33543
33544 2004-04-20  Paul Eggert  <eggert@twinsun.com>
33545
33546         * m4/host-os.m4: Add a copyright notice.
33547
33548 2004-04-20  Jim Meyering  <jim@meyering.net>
33549
33550         Change UTILS_ to gl_ in AC_DEFINE'd names.
33551         Change utils_- and jm_-prefixed variables, too.
33552         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
33553         UTILS_FUNC_MKDIR_TRAILING_SLASH.
33554         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
33555
33556         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
33557         Don't emit trailing blanks.
33558         Also rename jm_-prefixed variables to have gl_ prefix.
33559
33560         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
33561         Also rename jm_-prefixed variables to have gl_ prefix.
33562
33563         * m4/jm-macros.m4: Reflect the renamings.
33564         * m4/prereq.m4: Likewise.
33565
33566 2004-04-20  Jim Meyering  <jim@meyering.net>
33567
33568         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
33569         memory.
33570
33571 2004-04-20  Jim Meyering  <jim@meyering.net>
33572             Bruno Haible  <bruno@clisp.org>
33573
33574         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
33575         memory when realloc fails.
33576
33577 2004-04-19  Jim Meyering  <jim@meyering.net>
33578
33579         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
33580         now that readutmp.c may call `free (0)'.
33581
33582 2004-04-19  Bruno Haible  <bruno@clisp.org>
33583
33584         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
33585         * m4/inttypes_h.m4: Likewise.
33586         * m4/stdint_h.m4: Likewise.
33587         * m4/intmax_t.m4: Likewise.
33588         * m4/uintmax_t.m4: Likewise.
33589
33590 2004-04-18  Jim Meyering  <jim@meyering.net>
33591
33592         * m4/prereq.m4: Don't forbid jm_ prefix.
33593
33594         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
33595         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
33596         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
33597         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
33598         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
33599         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
33600         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
33601         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
33602         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
33603         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
33604         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
33605         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
33606         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
33607         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
33608         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
33609         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
33610         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
33611         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
33612         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
33613
33614 2004-04-18  Jim Meyering  <jim@meyering.net>
33615
33616         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
33617         failure, don't leak memory and do call END_UTMP_ENT.
33618
33619 2004-04-16  Jim Meyering  <jim@meyering.net>
33620
33621         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
33622         coreutils' stat program.
33623         (gl_PREREQ): Don't require jm_PREREQ_STAT.
33624
33625 2004-04-11  Paul Eggert  <eggert@twinsun.com>
33626
33627         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
33628         C89.
33629         (CHAR_BIT): Remove, since we assume C89.
33630         Include <stdint.h> if available, as per current Autoconf CVS advice.
33631
33632 2004-03-31  Jim Meyering  <jim@meyering.net>
33633
33634         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
33635         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
33636         * m4/xalloc.m4: Likewise.
33637
33638 2004-03-30  Paul Eggert  <eggert@twinsun.com>
33639
33640         Merge from coreutils.
33641
33642         * m4/inttostr.m4: New file.
33643         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
33644         Require AM_STDBOOL_H and gl_TIMESPEC instead.
33645         Require gl_CLOCK_TIME.
33646         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
33647
33648 2004-03-30  Paul Eggert  <eggert@twinsun.com>
33649
33650         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
33651         not bool, to be more consistent with Unix conventions.
33652         Suggested by Bruno Haible.
33653
33654         Merge from coreutils.
33655
33656         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
33657         * lib/umaxtostr.c: New files.
33658
33659         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
33660         the usual <time.h> dance.
33661         (get_date): Change signature to support fractional time stamps.
33662         All callers changed.
33663         * lib/getdate.y: Include "getdate.h" first, as we can now
33664         assume C89 and don't need to worry about 'const'.
33665         Similarly, include "unlocked-io.h" near start, not in middle.
33666         Include <limits.h>.
33667         (textint.value): Use long int rather than int.
33668         (textint.digits): Use size_t rather than int.
33669         (BILLION, LOG10_BILLION): New constants.
33670         (parser_control): New member rel_ns.  Members day_ordinal,
33671         time_zone, month, day, hour, minutes, rel_year, rel_month,
33672         rel_day, rel_hour, rel_minutes, rel_seconds
33673         are now long int, not int.  Member seconds is now struct timespec,
33674         not int.  New member timespec_seen.  Members dates_seen, days_seen,
33675         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
33676         not int.
33677         (%union.intval): Now long int, not int.
33678         New member timespec.
33679         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
33680         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
33681         (spec): Now is a timespec or an item list.
33682         (timespec, items): New nonterminals.
33683         (time, rel, relunit, number, get_date):
33684         Add support for fractional seconds.
33685         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
33686         (gmtime, localtime, mktime): Remove decls; not needed with C89.
33687         (to_hour): First arg is now long int, not int.
33688         (to_year): Returns long int, not int.
33689         Don't treat year -70 like 70.
33690         (tm_diff): Returns long int, not int.
33691         (lookup_word): Use bool instead of int when appropriate.
33692         (yylex): Use size_t for count, not int.
33693         Detect overflow when parsing large integer constants.
33694         Add support for fractions.
33695         (get_date): Make pointers 'const' if possible.
33696         Use more-portable code to detect integer overflow.
33697         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
33698         Don't use ctime; it's not reliable if the year has >4 digits.
33699
33700         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
33701         This is for compatibility with BSD.
33702
33703         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
33704         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
33705         From coreutils' system.h.
33706
33707         * lib/userspec.c: Don't include "posixver.h".
33708         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
33709         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
33710         compatible extension.  Simplify code by removing a boolean int
33711         that was always nonzero if a string was nonnull.
33712
33713 2004-03-30  Jim Meyering  <jim@meyering.net>
33714
33715         Merge from coreutils.
33716
33717         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
33718         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
33719         on some systems one must include <grp.h> before it.
33720         Reported by Christian Krackowizer.
33721
33722 2004-03-30  Jim Meyering  <jim@meyering.net>
33723
33724         Merge from coreutils.
33725
33726         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
33727
33728         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
33729         an empty input stream.
33730
33731         * lib/readtokens.c: Include <stdbool.h>.
33732         (readtoken): Use `size_t' rather than int/long.
33733         All callers adjusted.
33734         Use `bool' rather than `int' where appropriate.
33735         Use memset rather than an explicit loop.
33736         Use x2nrealloc rather than xrealloc.
33737         Allow the use of `\0' as a delimiter.
33738         (readtokens): Likewise.
33739         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
33740
33741 2004-03-30  Jim Meyering  <jim@meyering.net>
33742
33743         * m4/realloc.m4: Remove file, since now it does no more than
33744         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
33745         the `configure.ac' section of module/realloc.
33746         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
33747
33748 2004-03-30  Bruno Haible  <bruno@clisp.org>
33749
33750         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
33751         nonnull.
33752
33753 2004-03-29  Paul Eggert  <eggert@twinsun.com>
33754
33755         Merge changes to getloadavg.c from coreutils and Emacs.
33756
33757         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
33758         Define to an expression, not to the empty string.
33759         Include cloexec.h and xalloc.h.
33760         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
33761         Use set_cloexec_flag rather than rolling our own.
33762         * lib/cloexec.c, lib/cloexec.h: New files.
33763
33764 2004-03-29  Paul Eggert  <eggert@twinsun.com>
33765
33766         * m4/cloexec.m4: New file.
33767
33768 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33769
33770         * lib/getopt.h: Sync with libc CVS.
33771
33772 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33773             Bruno Haible  <bruno@clisp.org>
33774
33775         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
33776         mbswidth.
33777
33778 2004-03-18  Paul Eggert  <eggert@twinsun.com>
33779             Bruno Haible  <bruno@clisp.org>
33780
33781         * lib/mbswidth.h: Include <wchar.h> only if
33782         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
33783         <wchar.h>.
33784         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
33785
33786 2004-03-09  Paul Eggert  <eggert@twinsun.com>
33787
33788         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
33789         Sync with libc CVS.
33790         * lib/getopt_int.h: New file, also synced from libc.
33791
33792 2004-03-09  Paul Eggert  <eggert@twinsun.com>
33793
33794         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
33795         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
33796         Bring back getopt.c, getopt.h, getopt1.c.
33797
33798 2004-03-07  Paul Eggert  <eggert@twinsun.com>
33799
33800         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
33801         All uses changed.  Check for sa_sigaction member; this fixes
33802         a bug first reported by Jason Andrade in
33803         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
33804
33805 2004-03-07  Paul Eggert  <eggert@twinsun.com>
33806
33807         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
33808         '#if' expressions.  Unlike the code it replaces, it does not
33809         depend on (defined _SC_PAGESIZE).  However, it does depend on
33810         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
33811         first reported by Jason Andrade in
33812         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
33813
33814 2004-02-25  Simon Josefsson  <jas@extundo.com>
33815
33816         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
33817
33818 2004-02-25  Simon Josefsson  <jas@extundo.com>
33819
33820         * lib/strdup.h: New file.
33821         * lib/strdup.c: Include it.
33822         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
33823         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
33824
33825 2004-02-23  Karl Berry  <karl@gnu.org>
33826
33827         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
33828         (from fencepost.gnu.org:/gd/gnuorg).
33829
33830 2004-02-23  Karl Berry  <karl@gnu.org>
33831
33832         * config/srclistvars.sh (GNUORG) [karl]: redefine.
33833         * config/srclist.txt: add maintain/standards documents.
33834
33835 2004-02-18  Bruno Haible  <bruno@clisp.org>
33836
33837         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
33838         Reported by Derek Robert Price <derek@ximbiot.com>.
33839
33840 2004-02-16  Karl Berry  <karl@gnu.org>
33841
33842         * config/mkinstalldirs, install-sh: update from automake.
33843
33844 2004-02-06  Karl Berry  <karl@gnu.org>
33845
33846         * m4/po.m4: update from gettext 0.14.1.
33847
33848 2004-02-06  Karl Berry  <karl@gnu.org>
33849
33850         * lib/config.charset: update from gettext 0.14.1.
33851
33852 2004-02-05  Paul Eggert  <eggert@twinsun.com>
33853
33854         Add comments and code, prompted by suggestions from Bruno Haible
33855         for sh-quote.
33856         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
33857         describing the enum quoting_style values.
33858         * lib/quotearg.c (quotearg_alloc): New function.
33859         (quotearg_buffer_restyled): Treat lone { and } as special.
33860         Treat = as special.  Work around bug with older shells
33861         that "see" a '\' that is really the 2nd byte of a multibyte char.
33862         Quote empty string with shell_quoting_style.
33863
33864 2004-02-03  Bruno Haible  <bruno@clisp.org>
33865
33866         * m4/pipe.m4: New file, from GNU gettext.
33867
33868 2004-02-03  Bruno Haible  <bruno@clisp.org>
33869
33870         * lib/pipe.h: New file, from GNU gettext.
33871         * lib/pipe.c: New file, from GNU gettext.
33872
33873 2004-01-27  Bruno Haible  <bruno@clisp.org>
33874
33875         * m4/execute.m4: New file, from GNU gettext.
33876
33877 2004-01-27  Bruno Haible  <bruno@clisp.org>
33878
33879         * lib/execute.h: New file, from GNU gettext.
33880         * lib/execute.c: New file, from GNU gettext.
33881         * lib/w32spawn.h: New file, from GNU gettext.
33882
33883 2004-01-24  Paul Eggert  <eggert@twinsun.com>
33884
33885         Merge from diffutils.
33886
33887         * lib/file-type.c (file_type): Add typed memory objects.
33888         * lib/file-type.h (S_TYPEISTMO): New macro.
33889
33890         * lib/c-stack.h (c_stack_action): Remove argv argument.
33891         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
33892         (die): Don't calculate message unless segv_action returns.
33893         (get_stack_location, min_address_from_argv, max_address_from_argv,
33894         volatile stack_base, volatile_stack_size): Remove.
33895         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
33896         that every segmentation violation is a stack overflow.  (Ouch!)
33897         See Debian bug 136249 (still outstanding) for more info about why
33898         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
33899
33900 2004-01-24  Paul Eggert  <eggert@twinsun.com>
33901
33902         Exit-status fix from coreutils.
33903
33904         Use exit_failure consistently in place of EXIT_FAILURE,
33905         so that program exit statuses are consistent on failure.
33906
33907         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
33908         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
33909         * lib/argmatch.h: Comment fix to match the above.
33910         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
33911         Now a macro referring to exit_failure, instead of a separate
33912         variable.  Include "exitfail.h" to get it.
33913         * lib/xstrtol.h: Include "exitfail.h".
33914         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
33915
33916         * lib/long-options.c (parse_long_options): Use prototype
33917         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
33918         for clarity.
33919
33920 2004-01-21  Jim Meyering  <jim@meyering.net>
33921
33922         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
33923         so as not to conflict with a different-sized __mktime_internal
33924         function in GNU libc.
33925         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
33926         Problem building statically-linked `ls' reported by Michael Brunnbauer.
33927
33928 2004-01-20  Karl Berry  <karl@gnu.org>
33929
33930         * config/config.guess: update from config.
33931
33932         * config/srclistvars.sh: GNUWWWLICENSES for karl.
33933
33934 2004-01-20  Bruno Haible  <bruno@clisp.org>
33935
33936         Safer stack allocation.
33937         * lib/setenv.c: Include allocsa.h.
33938         (alloca): Remove fallback definition.
33939         (freea): Remove macro.
33940         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
33941         instead of freea.
33942
33943 2004-01-20  Bruno Haible  <bruno@clisp.org>
33944
33945         * m4/eealloc.m4: New file, from GNU gettext.
33946
33947 2004-01-20  Bruno Haible  <bruno@clisp.org>
33948
33949         * m4/allocsa.m4: New file, from GNU gettext.
33950
33951 2004-01-20  Bruno Haible  <bruno@clisp.org>
33952
33953         * lib/xallocsa.h: New file, from GNU gettext.
33954         * lib/xallocsa.c: New file, from GNU gettext.
33955
33956 2004-01-20  Bruno Haible  <bruno@clisp.org>
33957
33958         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
33959
33960 2004-01-20  Bruno Haible  <bruno@clisp.org>
33961
33962         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
33963         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
33964         specially.
33965
33966 2004-01-20  Bruno Haible  <bruno@clisp.org>
33967
33968         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
33969         patch.
33970
33971 2004-01-20  Bruno Haible  <bruno@clisp.org>
33972
33973         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
33974
33975 2004-01-20  Bruno Haible  <bruno@clisp.org>
33976
33977         * lib/eealloc.h: New file.
33978
33979 2004-01-20  Bruno Haible  <bruno@clisp.org>
33980
33981         * lib/binary-io.h: Avoid warnings on Cygwin.
33982
33983 2004-01-20  Bruno Haible  <bruno@clisp.org>
33984
33985         * lib/allocsa.h: New file, from GNU gettext.
33986         * lib/allocsa.c: New file, from GNU gettext.
33987
33988 2004-01-18  Karl Berry  <karl@gnu.org>
33989
33990         * doc/gpl.texi, doc/lgpl.texi: new files.
33991
33992 2004-01-18  Karl Berry  <karl@gnu.org>
33993
33994         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
33995         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
33996
33997 2004-01-15  Paul Eggert  <eggert@twinsun.com>
33998
33999         Merge from coreutils.
34000
34001         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
34002         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
34003         (gl_DEFAULT_POSIX2_VERSION): Move
34004         the documentation from 'configure' into 'config.hin',
34005         so that 'configure --help' isn't burdened by it and
34006         we don't have to worry about its formatting there.
34007         Reword the documentation so that it's more succinct
34008         and can be run together into a single paragraph.
34009         * m4/same.m4 (gl_SAME): Check for pathconf.
34010
34011 2004-01-15  Paul Eggert  <eggert@twinsun.com>
34012
34013         Merge from coreutils.
34014
34015         * lib/posixver.c: Include posixver.h.
34016
34017         * lib/same.c: Include <stdbool.h>, <limits.h>.
34018         (_POSIX_NAME_MAX): Define if not defined.
34019         (MIN): New macro.
34020         (same_name): If file names are silently truncated, report
34021         that the file names are the same if they are the same after
34022         the silent truncation.
34023
34024         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
34025         conversion function.
34026         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
34027         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
34028         longer needed.
34029
34030 2004-01-15  Jim Meyering  <jim@meyering.net>
34031
34032         Merge from coreutils.
34033
34034         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
34035         if no library is required.
34036         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
34037         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
34038         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
34039         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
34040         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
34041         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
34042         value, $ac_cv_search_crypt, if it's "none required".
34043         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
34044         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
34045         not gl_FUNC_GETLOADAVG.
34046         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
34047         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
34048
34049 2004-01-15  Jim Meyering  <jim@meyering.net>
34050
34051         Merge from coreutils.
34052
34053         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
34054         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
34055         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
34056
34057         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
34058         optional configure-time default.
34059
34060         * lib/version-etc.c (version_etc_copyright): Update copyright date.
34061
34062         * lib/xreadlink.c (xreadlink): Correct outdated comment.
34063
34064 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
34065
34066         Merge from coreutils.
34067
34068         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
34069         value, $ac_cv_search_nanosleep, if it's "none required".
34070
34071 2004-01-14  Paul Eggert  <eggert@twinsun.com>
34072
34073         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
34074         with like-named macro in fnmatch.c.
34075         (EXT): Use an internal constant instead.
34076
34077         Merge fnmatch patches from glibc.
34078         * lib/fnmatch.c (mbsinit): Remove define.
34079         Add libc_hidden_ver (__fnmatch, fnmatch).
34080         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
34081         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
34082
34083 2004-01-14  Karl Berry  <karl@gnu.org>
34084
34085         * config/install-sh: update from automake.
34086
34087 2004-01-13  Karl Berry  <karl@gnu.org>
34088
34089         * config/install-sh: update from automake.
34090
34091 2004-01-09  Karl Berry  <karl@gnu.org>
34092
34093         * config/install-sh: update from automake.
34094
34095 2004-01-05  Karl Berry  <karl@gnu.org>
34096
34097         * config/config.{sub,guess}: update from config.
34098
34099 2003-12-31  Karl Berry  <karl@gnu.org>
34100
34101         * config/depcomp: update from automake.
34102
34103 2003-12-14  Karl Berry  <karl@gnu.org>
34104
34105         * lib/config.charset: update from gettext-runtime.
34106
34107 2003-12-03  Paul Eggert  <eggert@twinsun.com>
34108
34109         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
34110         Bug reported by Alfred M. Szmidt.
34111
34112 2003-12-03  Bruno Haible  <bruno@clisp.org>
34113
34114         * m4/gettext.m4: Upgrade from gettext-0.13.
34115         * m4/po.m4: Upgrade from gettext-0.13.
34116         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
34117         * m4/intmax.m4: New file, from gettext-0.13.
34118         * m4/printf-posix.m4: New file, from gettext-0.13.
34119
34120 2003-11-29  Karl Berry  <karl@gnu.org>
34121
34122         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
34123
34124 2003-11-25  Paul Eggert  <eggert@twinsun.com>
34125             Bruno Haible  <bruno@clisp.org>
34126
34127         * lib/printf-parse.h: Don't include sys/types.h.
34128         (ARG_NONE): New macro.
34129         (char_directive): Change type of *arg_index fields to size_t.
34130         * lib/printf-parse.c: Don't include sys/types.h.
34131         (SSIZE_MAX): Remove macro.
34132         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
34133         Remove unnecessary overflow check.
34134         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
34135         fields.
34136
34137 2003-11-25  Bruno Haible  <bruno@clisp.org>
34138
34139         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
34140
34141 2003-11-25  Bruno Haible  <bruno@clisp.org>
34142
34143         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
34144         gt_TYPE_SSIZE_T.
34145
34146 2003-11-24  Paul Eggert  <eggert@twinsun.com>
34147
34148         * modules/alloca: Remove dependency on xalloc.
34149
34150 2003-11-24  Paul Eggert  <eggert@twinsun.com>
34151
34152         * lib/alloca.c: Remove dependency on xalloc module.
34153         (xalloc_die): Remove.
34154         (memory_full) [!defined emacs]: New macro.
34155         [!defined emacs]: Don't include xalloc.h.
34156         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
34157         address arithmetic overflows.  Change datatypes a bit to avoid
34158         unnecessary casts.
34159
34160 2003-11-22  Jim Meyering  <jim@meyering.net>
34161
34162         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
34163         s/size/size_t/.
34164
34165 2003-11-21  Karl Berry  <karl@gnu.org>
34166
34167         * config/config.{sub,guess}: update from config.
34168
34169 2003-11-18  Karl Berry  <karl@gnu.org>
34170
34171         * config/config.{sub,guess}: update from config.
34172
34173         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
34174
34175 2003-11-17  Paul Eggert  <eggert@twinsun.com>
34176
34177         * README: Mention that S+T cannot overflow if S is the size of
34178         an existing object and T is sufficiently small.
34179
34180 2003-11-17  Jim Meyering  <jim@meyering.net>
34181
34182         On systems without utime and without a utimes function capable of
34183         dealing with a NULL struct utimbuf* argument, this utime replacement
34184         could -- in unusual circumstances -- leak a file descriptor.
34185         * lib/utime.c: Include <unistd.h> and <errno.h>.
34186         (utime_null): Be sure to close `fd' and to preserve errno.
34187         Reported by Geoff Collyer via Arnold Robbins.
34188
34189 2003-11-17  Bruno Haible  <bruno@clisp.org>
34190
34191         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
34192         (Depends-on): Add xsize.
34193
34194 2003-11-17  Bruno Haible  <bruno@clisp.org>
34195
34196         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
34197
34198 2003-11-17  Bruno Haible  <bruno@clisp.org>
34199
34200         * lib/vasnprintf.c (alloca): Remove fallback definition.
34201         (freea): Remove definition.
34202         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
34203         Reported by Paul Eggert.
34204
34205 2003-11-16  Paul Eggert  <eggert@twinsun.com>
34206             Bruno Haible  <bruno@clisp.org>
34207
34208         Protect against address arithmetic overflow.
34209         * lib/printf-args.h: Include stddef.h.
34210         (arguments): Change type of field 'count' to size_t.
34211         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
34212         'unsigned int' where appropriate.
34213         * lib/printf-parse.h: Include sys/types.h.
34214         (char_directive): Change type of *arg_index fields to ssize_t.
34215         (char_directives): Change type of fields 'count', max_*_length to
34216         size_t.
34217         * lib/printf-parse.c: Include sys/types.h and xsize.h.
34218         (SSIZE_MAX): Define fallback value.
34219         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
34220         instead of 'int' where appropriate. Check a_allocated, d_allocated
34221         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
34222         * lib/vasnprintf.c: Include xsize.h.
34223         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
34224         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
34225         overflow. Avoid wraparound when converting a width or precision from
34226         decimal to binary.
34227
34228 2003-11-16  Bruno Haible  <bruno@clisp.org>
34229
34230         Update from GNU gettext.
34231         * lib/printf-parse.c: Generalize to it can be compiled for wide
34232         strings.
34233         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
34234         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
34235         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
34236         SNPRINTF): New macros.
34237         Don't include <alloca.h> if the file is used inside libintl.
34238         (local_wcslen): New function, for Solaris 2.5.1.
34239         (VASNPRINTF): Use it instead of wcslen.
34240
34241 2003-11-16  Bruno Haible  <bruno@clisp.org>
34242
34243         * lib/xsize.h (xmax): New function.
34244         (xsum, xsum3, xsum4): Declare as "pure" functions.
34245
34246 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34247
34248         * modules/xalloc (Files): Undo latest change, since xalloc.h
34249         no longer needs SIZE_MAX or PTRDIFF_MAX.
34250
34251 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34252
34253         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
34254         gl_PTRDIFF_MAX.
34255
34256 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34257
34258         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
34259         "return", to pacify some unknown compiler.  Problem reported
34260         by Joerg Schilling.
34261
34262 2003-11-12  Paul Eggert  <eggert@twinsun.com>
34263
34264         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
34265         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
34266         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
34267         heuristic is just as accurate as far as we know, and it removes a
34268         dependency on size_max.m4 and ptrdiff_max.m4.
34269
34270 2003-11-11  Bruno Haible  <bruno@clisp.org>
34271
34272         * modules/xsize (Files): Add m4/size_max.m4.
34273         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
34274
34275 2003-11-11  Bruno Haible  <bruno@clisp.org>
34276
34277         * m4/size_max.m4: New file.
34278         * m4/ptrdiff_max.m4: New file.
34279         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
34280         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
34281         (gl_XALLOC): Invoke it.
34282
34283 2003-11-11  Bruno Haible  <bruno@clisp.org>
34284
34285         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
34286         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
34287         defined.
34288
34289 2003-11-10  Paul Eggert  <eggert@twinsun.com>
34290
34291         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
34292         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
34293         rejected some allocations of exactly SIZE_MAX - 2 bytes.
34294         From Bruno Haible.
34295         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
34296         not (size_t) -1, since it's defined here.
34297
34298 2003-11-09  Karl Berry  <karl@gnu.org>
34299
34300         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
34301
34302 2003-11-06  Paul Eggert  <eggert@twinsun.com>
34303
34304         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
34305         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
34306         Reject sizes of exactly SIZE_MAX bytes.
34307         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
34308         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
34309
34310 2003-11-05  Bruno Haible  <bruno@clisp.org>
34311
34312         * lib/xsize.h: Include limits.h, to avoid a possible collision with
34313         SIZE_MAX defined in <limits.h> on Solaris.
34314
34315 2003-11-04  Jim Meyering  <jim@meyering.net>
34316
34317         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
34318         variable names, rather than @VAR@.
34319         * modules/poll: Likewise.
34320
34321 2003-11-04  Bruno Haible  <bruno@clisp.org>
34322
34323         * modules/xsize: New file.
34324         * modules/linebreak: Depend on xsize.
34325         * MODULES.html.sh (func_all_modules): Add xsize.
34326
34327 2003-11-04  Bruno Haible  <bruno@clisp.org>
34328
34329         * m4/xsize.m4: New file.
34330
34331 2003-11-04  Bruno Haible  <bruno@clisp.org>
34332
34333         * lib/xsize.h: New file.
34334         * lib/linebreak.c: Include xsize.h.
34335         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
34336         argument for overflow.
34337         Suggested by Paul Eggert.
34338
34339 2003-11-03  Karl Berry  <karl@gnu.org>
34340
34341         * config/config.{guess,sub}: update from config.
34342
34343 2003-11-03  Jim Meyering  <jim@meyering.net>
34344
34345         * modules/userspec (lib_SOURCES): Add userspec.h.
34346         (Include): Add "userspec.h".
34347         Improve description.
34348
34349 2003-11-03  Jim Meyering  <jim@meyering.net>
34350
34351         * lib/userspec.c: Include "userspec.h".
34352         * lib/userspec.h: New file.
34353
34354 2003-11-03  Bruno Haible  <bruno@clisp.org>
34355
34356         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
34357
34358 2003-11-03  Bruno Haible  <bruno@clisp.org>
34359
34360         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
34361         available, to avoid (extremely rare) race condition.
34362         Suggested by Paul Eggert.
34363
34364 2003-11-02  Karl Berry  <karl@gnu.org>
34365
34366         * config/srclist.txt (vasprintf.c): sync broken, sigh.
34367
34368 2003-10-31  Paul Eggert  <eggert@twinsun.com>
34369
34370         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
34371         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
34372         (read_filesystem_list): Set and use me_type_malloced.
34373         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
34374         whatever the type happens to be), for brevity and consistency.
34375         Check for size calculation overflow on Alphas running OSF/1.
34376
34377 2003-10-31  Jim Meyering  <jim@meyering.net>
34378
34379         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
34380
34381         * lib/linebuffer.c: Include <string.h> for declaration of memset.
34382
34383 2003-10-30  Paul Eggert  <eggert@twinsun.com>
34384             Bruno Haible  <bruno@clisp.org>
34385
34386         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
34387         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
34388
34389 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
34390
34391         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
34392         netbsd*-gnu*.  Suggested by Robert Millan.
34393
34394 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34395
34396         * modules/group-member: Depend on stdbool.
34397
34398 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34399
34400         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
34401
34402 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34403
34404         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
34405         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
34406         after the 'gnu' in these cases.  This fixes some bugs in the
34407         previous change, and is based on suggestions by Robert Millan.
34408
34409 2003-10-29  Paul Eggert  <eggert@twinsun.com>
34410
34411         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
34412         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
34413         no longer needed.
34414         * lib/quotearg.c (quotearg_n_options): Use it.
34415         * lib/group-member.c: Include <stdbool.h>.
34416         (free_group_info): Arg is now const *; don't free arg.
34417         (get_group_info): Now returns bool and accepts struct group_info *,
34418         rather than returning a malloc'ed struct group_info *.
34419         All uses changed.  Check for overflow in internal size calculation.
34420
34421         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
34422         rather than xmalloc/xrealloc.
34423         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
34424         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
34425         conformance bug: the old code used a pointer after freeing the
34426         storage that it addressed.
34427         * lib/hash.c (hash_initialize): Simplify the code by using
34428         xalloc_oversized rather than doing it by hand.
34429         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
34430         the buffer preserved.  Use free and xmalloc instead.
34431         * lib/quotearg.c (quotearg_n_options): Likewise.
34432         Use a simpler test for size overflow.  Don't use xalloc_oversized
34433         because unsigned int might be wider than size_t (!); this suggests
34434         that we should switch from unsigned int to size_t for slot numbers.
34435
34436 2003-10-28  Paul Eggert  <eggert@twinsun.com>
34437
34438         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
34439         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
34440         NetBSD kernels.  Requested by Richard Stallman.
34441
34442 2003-10-27  Paul Eggert  <eggert@twinsun.com>
34443
34444         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
34445         to allocate the returned structure.  Do not allocate a subarray,
34446         as x2nrealloc will do that.
34447         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
34448         instead of xnrealloc.
34449         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
34450
34451 2003-10-27  Bruno Haible  <bruno@clisp.org>
34452
34453         * lib/stdbool_.h: Better support for BeOS.
34454
34455 2003-10-26  Paul Eggert  <eggert@twinsun.com>
34456
34457         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
34458         now uses inline.
34459
34460 2003-10-26  Paul Eggert  <eggert@twinsun.com>
34461
34462         * lib/xalloc.h (xalloc_oversized): New static inline function, for
34463         callers that want to do their own size-overflow checking.  Include
34464         <stdbool.h>, since xalloc_oversized returns bool.
34465         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
34466         to use xalloc_oversized.
34467
34468         Add two functions x2realloc, x2nrealloc, for programs that grow
34469         arrays dynamically by doubling their sizes.
34470         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
34471         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
34472         New functions.
34473
34474         Port to C99 semantics for 'inline' of external functions.
34475         Bug reported by Bruno Haible.
34476         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
34477         with the old contents of xnmalloc.
34478         (xnmalloc, xmalloc): Use it.
34479         (xnrealloc_inline): New static inline function,
34480         with the old contents of xnrealloc.
34481         (xnrealloc, xrealloc): Use it.
34482
34483         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
34484         that.
34485
34486 2003-10-26  Karl Berry  <karl@gnu.org>
34487
34488         * config/srclist.txt (COPYING.DOC): no longer available from
34489         /gd/gnuorg; don't know where the ultimate source is.
34490
34491 2003-10-25  Paul Eggert  <eggert@twinsun.com>
34492
34493         Fix several address-calculation bugs in the hash modules,
34494         plus some minor code cleanup.
34495
34496         * lib/hash.h: Include <stdbool.h>, for bool.
34497         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
34498         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
34499         hash_get_n_entries, hash_get_max_bucket_length,
34500         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
34501         hash_rehash): Use size_t rather than unsigned.
34502         * lib/hash.c (struct hash_table, hash_get_n_buckets,
34503         hash_get_n_buckets_used, hash_get_n_entries,
34504         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
34505         hash_get_entries, hash_do_for_each, hash_string, is_prime,
34506         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
34507         Likewise.
34508         (SIZE_MAX): Define if not defined.
34509         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
34510         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
34511         hash_print):
34512         Use const * when possible.
34513         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
34514         (check_tuning): Fix bug: if tuning parameters were very close to
34515         0 or 1, rounding errors could have caused subscript violations.
34516         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
34517         (hash_initialize): Add 'fail:' label
34518         to free table and return NULL, and use it to simplify code.
34519         Use calloc rather than clearing the storage ourself.
34520         (hash_initialize, hash_rehash): Check for arithmetic overflow in
34521         buffer size calculations.
34522         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
34523         Include <stddef.h>, for size_t.
34524         * lib/hash-pjw.c (hash_pjw): Likewise.
34525         Switch to method described by Bruno Haible.
34526         Include <limits.h>, for CHAR_BIT.
34527         (SIZE_BITS): New macro.
34528
34529 2003-10-23  Paul Eggert  <eggert@twinsun.com>
34530
34531         * m4/getline.m4 (AM_FUNC_GETLINE):
34532         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
34533         hosts.  Problem reported by Derek Robert Price in
34534         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
34535         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
34536         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
34537
34538 2003-10-21  Paul Eggert  <eggert@twinsun.com>
34539
34540         * lib/getndelim2.c (getndelim2): When size calculation overflows,
34541         ceiling the allocation at NMAX bytes rather than silently
34542         discarding input bytes before NMAX is reached.  This makes
34543         a difference only if NMAX exceeds SIZE_MAX / 2.
34544
34545         * lib/obstack.c: Merge from glibc.
34546         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
34547         Add libc_hidden_def (_obstack_newchunk).
34548         (_obstack_free) [! defined _LIBC]: Remove.
34549         [defined _LIBC]: Make a strong alias from obstack_free, rather than
34550         a clone of the function body.
34551         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
34552         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
34553
34554         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
34555         glibc.
34556         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
34557         arg to memcpy.
34558
34559         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
34560         (obstack_ptr_grow_fast, obstack_int_grow_fast):
34561         Don't use lvalue casts, as GCC plans to remove support for them
34562         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
34563         was also present in the non-GCC version, indicating that this
34564         code had always been buggy and had never been widely used.
34565         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
34566         Use the fast variant of each macro, rather than copying the
34567         definiens of the fast variant; that way, we'll be more likely to
34568         catch future bugs in the fast variants.
34569
34570 2003-10-20  Bruno Haible  <bruno@clisp.org>
34571
34572         * modules/wait-process: New file.
34573         * MODULES.html.sh (func_all_modules): Add wait-process.
34574
34575 2003-10-20  Bruno Haible  <bruno@clisp.org>
34576
34577         * m4/wait-process.m4: New file.
34578
34579 2003-10-20  Bruno Haible  <bruno@clisp.org>
34580
34581         * lib/wait-process.h: New file, from GNU gettext.
34582         * lib/wait-process.c: New file, from GNU gettext.
34583
34584 2003-10-19  Jim Meyering  <jim@meyering.net>
34585
34586         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
34587         HPUX 10.20.
34588
34589 2003-10-18  Karl Berry  <karl@gnu.org>
34590
34591         * config/config.guess: update from config.
34592
34593 2003-10-16  Paul Eggert  <eggert@twinsun.com>
34594
34595         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
34596         (getgroups): First arg is int, not size_t.
34597         Don't let 'free' mangle errno.
34598
34599 2003-10-16  Paul Eggert  <eggert@twinsun.com>
34600
34601         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
34602
34603 2003-10-16  Karl Berry  <karl@gnu.org>
34604
34605         * config/config.{guess,sub}: update from config.
34606
34607 2003-10-16  Jim Meyering  <jim@meyering.net>
34608
34609         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
34610         memcpy.
34611
34612 2003-10-15  Paul Eggert  <eggert@twinsun.com>
34613
34614         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
34615         (SIZE_MAX): Remove.
34616         (new_exclude, add_exclude_file): Initial size no longer needs to
34617         be a power of 2.
34618         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
34619         our own address arithmetic overflow checking.
34620
34621         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
34622         (fnmatch): Do not alloca more than 2000 wide characters;
34623         instead, use malloc for large buffers.
34624         Check for address arithmetic overflow, and return -1
34625         with errno set to ENOMEM in that case.
34626         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
34627         (NEW_PATTERN): Do not alloca more than 8000 bytes;
34628         instead, return -1.  Check for address arithmetic overflow.
34629
34630 2003-10-14  Paul Eggert  <eggert@twinsun.com>
34631
34632         Handle invalid suffixes and overflow independently, so that
34633         callers can treat them independently as needed.  Fix some bugs in
34634         suffix handling, e.g., "100k@" was not diagnosed as an invalid
34635         suffix for a human-readable blocksize.  The major caller-visible
34636         change is the addition of a new
34637         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
34638         that both overflow and suffix chars were found.
34639
34640         * lib/human.c (humblock): Don't check separately for invalid suffix
34641         char; that is xstrtoumax's job (now that its bug is fixed).
34642         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
34643         INTMAX_MAX]: New macros.
34644         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
34645         TYPE_MAXIMUM): New macros.
34646         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
34647         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
34648         if overflow occurs, as it's what __strtol does and it's more useful
34649         in practice.
34650         (__xstrtol): If __strtol reports some error other than ERANGE,
34651         reflect it to the caller as LONGINT_INVALID.  If it reports
34652         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
34653         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
34654         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
34655         value.
34656         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
34657         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
34658         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
34659         [defined UINTMAX_MAX]: New macros.
34660
34661 2003-10-14  Bruno Haible  <bruno@clisp.org>
34662
34663         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
34664
34665 2003-10-14  Bruno Haible  <bruno@clisp.org>
34666
34667         * m4/sig_atomic_t: New file, from GNU gettext.
34668         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
34669
34670 2003-10-14  Bruno Haible  <bruno@clisp.org>
34671
34672         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
34673         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
34674         Also use volatile where needed.
34675
34676 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34677
34678         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
34679         Change maintainer from Bruno Haible to 'all'.
34680
34681 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34682
34683         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
34684
34685 2003-10-12  Paul Eggert  <eggert@twinsun.com>
34686
34687         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
34688         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
34689         and define in terms of the other primitives.
34690         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
34691         (SIZE_MAX): Define if not already defined.
34692         (array_size_overflow): New function.
34693         (xalloc_die): Abort instead of exiting if 'error' returns.
34694         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
34695         (xmalloc, xrealloc): Use them.
34696         (xcalloc): Check for address arithmetic overflow.
34697         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
34698         a bit faster than strcpy.
34699
34700 2003-10-10  Simon Josefsson  <jas@extundo.com>
34701
34702         * modules/argp (Depends-on): Add restrict and strcase.
34703
34704 2003-10-10  Simon Josefsson  <jas@extundo.com>
34705
34706         * m4/argp.m4: Add AC_C_INLINE.
34707
34708 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34709
34710         Merge getpass from libc, plus a few fixes.
34711
34712         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
34713         Include <stdbool.h>.
34714         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
34715         __fsetlocking to empty.
34716         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
34717         do include <bits/libc-lock.h>.
34718         Do not include <fcntl.h>; not needed.
34719         [_LIBC]: Include <wchar.h>.
34720         (NOTCANCEL_MODE): New macro.
34721         (flockfile, funlockfile) [_LIBC]: New macros.
34722         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
34723         [!_LIBC]: New macros.
34724         (call_fclose): New function.
34725         (getpass): Use it.  Save tty stream separately; this simplifies the
34726         code and makes it more reliable if stdin happens to equal stdout.
34727         Invoke __fsetlocking on tty.
34728         Handle thread cancellation if needed.
34729         Namespace cleanup (use __tcgetattr, __getline).
34730         Use bool for Booleans.
34731         [USE_IN_LIBIO]: Handle wide streams.
34732         [!_LIBC]: Unconditionally do the fseek, since we don't know what
34733         stream might go where.
34734
34735         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
34736         doesn't have to include <stdio.h> before us.
34737         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
34738         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
34739         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
34740         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
34741         if not declared, so that we can use getpass.c code from libc without
34742         rewriting it.
34743         (flockfile, ftrylockfile, funlockfile): New macros.
34744
34745 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34746
34747         * modules/getpass: Depend on stdbool.
34748
34749 2003-10-08  Paul Eggert  <eggert@twinsun.com>
34750
34751         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
34752
34753 2003-10-07  Karl Berry  <karl@gnu.org>
34754
34755         * config/config.{guess,sub}: update from config.
34756
34757 2003-10-06  Jim Meyering  <jim@meyering.net>
34758             Bruno Haible  <bruno@clisp.org>
34759
34760         This lets translators provide better translations for the
34761         "Written by ..." part of --version output.
34762         * lib/version-etc.h: Include stdarg.h.
34763         (version_etc_copyright): Declare as readonly.
34764         (version_etc): Make this function variadic with a NULL-terminated list
34765         of author name strings.
34766         (version_etc_va): New declaration.
34767         * lib/version-etc.c: Include stdarg.h, stdlib.h.
34768         (version_etc_copyright): Declare as readonly.
34769         (version_etc_va): New function. Provide a different translatable string
34770         for each possible number of authors < 10. Abbreviate when there are 10
34771         authors or more.
34772         (version_etc): Make this function variadic. Call version_etc_va.
34773         Suggestion from Gary V. Vaughan.
34774
34775         * lib/long-options.h (parse_long_options): Change prototype: the
34776         authors string is moved to the end and becomes variadic.
34777         * lib/long-options.c: Include stdarg.h.
34778         (parse_long_options): Make this function variadic, too.
34779         Call version_etc_va, not version_etc.
34780
34781 2003-10-06  Bruno Haible  <bruno@clisp.org>
34782
34783         * modules/version-etc-2: Remove file.
34784         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
34785
34786 2003-10-06  Bruno Haible  <bruno@clisp.org>
34787
34788         * modules/fatal-signal: New file.
34789         * MODULES.html.sh (func_all_modules): Add fatal-signal.
34790
34791 2003-10-06  Bruno Haible  <bruno@clisp.org>
34792
34793         * m4/fatal-signal.m4: New file.
34794         * m4/signalblocking.m4: New file, from GNU gettext.
34795
34796 2003-10-06  Bruno Haible  <bruno@clisp.org>
34797
34798         * lib/version-etc-2.h: Remove file.
34799         * lib/version-etc-2.c: Remove file.
34800
34801 2003-10-06  Bruno Haible  <bruno@clisp.org>
34802
34803         * lib/fatal-signal.h: New file, from GNU gettext.
34804         * lib/fatal-signal.c: New file, from GNU gettext.
34805
34806 2003-10-05  Paul Eggert  <eggert@twinsun.com>
34807
34808         * README: Rework advice for preventing empty .o files.
34809         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
34810         not <sys/types.h>.
34811
34812 2003-10-04  Karl Berry  <karl@gnu.org>
34813
34814         * lib/argp*: update from libc.
34815
34816 2003-10-04  Karl Berry  <karl@gnu.org>
34817
34818         * config/config.{guess,sub}: update from config.
34819
34820 2003-10-02  Bruno Haible  <bruno@clisp.org>
34821
34822         * modules/lchown (Include): Add lchown.h.
34823         * modules/time_r (Include): Use "..." syntax.
34824         * modules/xgetdomainname (Include): Add xgetdomainname.h.
34825
34826 2003-10-01  Simon Josefsson  <jas@extundo.com>
34827
34828         * MODULES.html.sh (func_all_modules): Move gethostname from section
34829         'based on' to section 'lacking' POSIX:2001.
34830
34831 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
34832
34833         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
34834         to output mode on the same stream.
34835
34836 2003-09-29  Paul Eggert  <eggert@twinsun.com>
34837
34838         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
34839         Fix arg typo in previous patch.
34840
34841 2003-09-28  Jim Meyering  <jim@meyering.net>
34842
34843         * lib/error.c: Correct cpp indentation.
34844
34845 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34846
34847         * modules/free: New file.
34848
34849 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34850
34851         * m4/free.m4: New file.
34852
34853 2003-09-27  Paul Eggert  <eggert@twinsun.com>
34854
34855         * lib/minmax.h (MIN, MAX)
34856         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
34857         Omit the special code that used __typeof__, since we worry that
34858         it could be more trouble than it's worth.  See:
34859         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
34860         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
34861
34862         * lib/free.c: New file.
34863
34864 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
34865
34866         Trivial fixes to Makefile.am parts of module listings.
34867         * modules/strstr: Append strstr.h to lib_SOURCES.
34868         * modules/strcase: Likewise, for strcase.h.
34869
34870 2003-09-27  Karl Berry  <karl@gnu.org>
34871
34872         * config/mkinstalldirs: update from automake.
34873
34874 2003-09-26  Paul Eggert  <eggert@twinsun.com>
34875
34876         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
34877         (error_tail): Do not loop, reallocating temporary buffer, since
34878         the output cannot contain more wide characters than the input
34879         contains bytes, the size must be big enough already.  This avoids
34880         one potential size overflow calculation.  Check for size overflow
34881         when calculating temporary buffer size.  Free temporary buffer
34882         when done, if it was allocated with malloc; this plugs a memory
34883         leak.  Remove casts from void * to pointers, that are no longer
34884         needed now that we're assuming C89 or better.
34885
34886         Merge error changes from glibc.
34887
34888         * lib/error.c, error.h: Update copyright notice header to match glibc.
34889         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
34890         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
34891         Disable cancellation while printing error.
34892         * lib/error.h: Prepend __ to parameter names.
34893
34894 2003-09-26  Jim Meyering  <jim@meyering.net>
34895
34896         * lib/error.c (error_tail): Move some declarations
34897         into inner scope where the local variables are used.
34898
34899 2003-09-26  Bruno Haible  <bruno@clisp.org>
34900
34901         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
34902         stpncpy().
34903         Don't define stpncpy through config.h; it's now done through stpncpy.h.
34904
34905 2003-09-26  Bruno Haible  <bruno@clisp.org>
34906
34907         * lib/stpncpy.h (gnu_stpncpy): New declaration.
34908         (stpncpy): Define as alias for gnu_stpncpy.
34909         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
34910
34911 2003-09-25  Simon Josefsson  <jas@extundo.com>
34912
34913         * lib/xgetdomainname.h: New file.
34914         * lib/xgetdomainname.c: New file.
34915
34916 2003-09-25  Simon Josefsson  <jas@extundo.com>
34917             Bruno Haible  <bruno@clisp.org>
34918
34919         * modules/getdomainname: New file.
34920         * modules/xgetdomainname: New file.
34921         * MODULES.html.sh (func_all_modules): Add getdomainname,
34922         xgetdomainname.
34923
34924 2003-09-25  Simon Josefsson  <jas@extundo.com>
34925             Bruno Haible  <bruno@clisp.org>
34926
34927         * m4/getdomainname.m4: New file.
34928
34929 2003-09-25  Simon Josefsson  <jas@extundo.com>
34930             Bruno Haible  <bruno@clisp.org>
34931
34932         * lib/getdomainname.h: New file.
34933         * lib/getdomainname.c: New file.
34934
34935 2003-09-25  Karl Berry  <karl@gnu.org>
34936
34937         * lib/argp-fmtstream.c, argp-help.c: update from libc.
34938
34939 2003-09-25  Karl Berry  <karl@gnu.org>
34940
34941         * config/install-sh: update from automake.
34942
34943 2003-09-25  Bruno Haible  <bruno@clisp.org>
34944
34945         * modules/version-etc-2: New file, from modules/version-etc with
34946         modifications.
34947         * MODULES.html.sh (func_all_modules): Add version-etc-2.
34948
34949 2003-09-25  Bruno Haible  <bruno@clisp.org>
34950
34951         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
34952         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
34953
34954 2003-09-24  Simon Josefsson  <jas@extundo.com>
34955
34956         * modules/xgethostname: Add xgethostname.h.
34957
34958 2003-09-24  Paul Eggert  <eggert@twinsun.com>
34959
34960         * lib/linebuffer.c (freebuffer): Don't free the argument, just
34961         the buffer associated with the argument.  Bug reported by
34962         Simon Josefsson.
34963
34964 2003-09-24  Paul Eggert  <eggert@twinsun.com>
34965
34966         * README: Document assumptions that 'int' is at least 32 bits
34967         wide, that integer arithmetic is 2's complement without overflow,
34968         that there are no holes in integer values, that adding sizes of
34969         two nonoverlapping objects can't overflow, and that all-bits-zero
34970         yields scalar zero.  Fix spelling and capitalization typos.
34971
34972 2003-09-19  Karl Berry  <karl@gnu.org>
34973
34974         * lib/argp.h: update from libc.
34975
34976 2003-09-17  Paul Eggert  <eggert@twinsun.com>
34977
34978         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
34979         to avoid spurious warnings like "AC_RUN_IFELSE was called before
34980         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
34981
34982 2003-09-17  Paul Eggert  <eggert@twinsun.com>
34983
34984         * gnulib-tool: Use "test -h", not "test -L", for portability
34985         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
34986         (tags_regexp): Remove, since \| doesn't conform to POSIX.
34987         (sed_extract_prog): Issue s commands one-by-one, rather than
34988         using \| in one s command.
34989
34990 2003-09-16  Paul Eggert  <eggert@twinsun.com>
34991
34992         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
34993         input error, instead of returning NULL the next time we are called
34994         (and therefore losing track of errno).
34995
34996 2003-09-16  Bruno Haible  <bruno@clisp.org>
34997
34998         * gnulib-tool (func_create_testdir): Warn about duplicated
34999         dependencies.
35000
35001 2003-09-15  Paul Eggert  <eggert@twinsun.com>
35002
35003         * modules/argmatch, modules/fatal, modules/obstack,
35004         modules/xalloc, modules/xgethostname: Sort dependencies by
35005         importance, not alphabetically.
35006
35007 2003-09-15  Paul Eggert  <eggert@twinsun.com>
35008
35009         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
35010         fails, so that the caller gets the proper errno.
35011
35012         * lib/readutmp.c (read_utmp): Likewise.
35013         Check for fstat error.  Close stream and free storage
35014         when failing.
35015
35016 2003-09-14  Karl Berry  <karl@gnu.org>
35017
35018         * config/srclist.txt (strdup.c): disable for c89 changes.
35019
35020 2003-09-14  Jim Meyering  <jim@meyering.net>
35021
35022         * lib/getloadavg.c: Correct cpp indentation.
35023         * lib/strdup.c: Likewise.
35024         * lib/vasnprintf.c: Likewise.
35025
35026 2003-09-14  Bruno Haible  <bruno@clisp.org>
35027
35028         * modules/fwriteerror: New file.
35029         * MODULES.html.sh (func_all_modules): Add fwriteerror.
35030
35031 2003-09-14  Bruno Haible  <bruno@clisp.org>
35032
35033         * lib/fwriteerror.h: New file.
35034         * lib/fwriteerror.c: New file.
35035
35036 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35037
35038         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
35039         modules/xgethostname, modules/xalloc: Depend on exit.
35040
35041 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35042
35043         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
35044
35045         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
35046         and AC_MINIX, too, so that their extensions are available.
35047
35048         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
35049         This macro has been superseded by gl_BACKUPFILE.
35050
35051         More patches to assume C89 or better.
35052
35053         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
35054
35055         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
35056         unconditionally.
35057         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
35058         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
35059         Include <string.h>, <stdlib.h> unconditionally.
35060         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
35061         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
35062         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
35063         headers or for string.h.
35064         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
35065         or strtoul.
35066
35067         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
35068         headers.
35069         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
35070         * m4/userspec.m4 (gl_USERSPEC): Likewise.
35071         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
35072         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
35073         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35074         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
35075         memcpy, memset.
35076         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
35077         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
35078         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
35079         strtol.
35080         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
35081         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
35082         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
35083         strtoul.
35084
35085 2003-09-12  Paul Eggert  <eggert@twinsun.com>
35086
35087         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
35088         * lib/obstack.c [!defined _LIBC]: Likewise.
35089         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
35090         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
35091         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
35092
35093         More changes to assume C89 or better.
35094
35095         * lib/error.c (error_tail): Assume vprintf.
35096
35097         * lib/argmatch.c (getenv): Remove decl.
35098         * lib/progreloc.c (get_full_program_name): Define via prototype.
35099         * lib/setenv.c (clearenv): Likewise.
35100         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
35101         needed.
35102         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
35103         (malloc, memcpy): Remove decls.
35104         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
35105         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
35106         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
35107         (memcpy): Remove macro.
35108         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
35109         (__P): Remove.  All uses removed.
35110         (PTR): Remove.  All uses changed to void *.
35111         (CHAR_BIT, NULL): Remove.
35112         (spaces, zeros, memset_space, memset_zero)
35113         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
35114         Remove.
35115         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
35116         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
35117         Define with prototype.
35118         Remove now-unnecessary prototype decl.
35119         (extra_args_spec): Assume ANSI C.  All uses changed.
35120         (extra_args_spec_iso): Remove.
35121         (my_strftime, emacs_strftimeu): Define via prototype.
35122         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
35123         unconditionally.
35124         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
35125         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
35126         (strtoul, strtol): Remove decls.
35127         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
35128         LONG_MAX): Remove.
35129         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
35130         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
35131         (LOCALE_PARAM_PROTO): New macro.
35132         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
35133         (INTERNAL (strtol), strtol): Define with a prototype.
35134         (PARAMS): Remove.  All uses removed.
35135         * lib/tempname.c: Include <string.h> unconditionally.
35136         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
35137         * lib/xgethostname.c (main): Define with a prototype.
35138         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
35139         Include <stdlib.h> unconditionally.
35140         (calloc, malloc, realloc, free): Remove decls.
35141         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
35142         Include <stdlib.h> unconditionally.  Sort include file names.
35143         (strtod): Remove.
35144         (xstrtod): Define with a prototype.
35145         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
35146         (strtol, strtoul): Remove decls.
35147
35148 2003-09-11  Paul Eggert  <eggert@twinsun.com>
35149
35150         More patches to assume C89 or better.
35151         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
35152         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
35153         string.h, memchr, STDC_HEADERS.
35154
35155 2003-09-11  Paul Eggert  <eggert@twinsun.com>
35156
35157         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
35158         Include <stdlib.h>, <string.h> unconditionally.
35159         Remove now-unnecessary cast to char *.
35160         * lib/strnlen.c: Include <string.h> unconditionally.
35161         * lib/yesno.c (yesno): Define with a prototype.
35162
35163 2003-09-11  Bruno Haible  <bruno@clisp.org>
35164
35165         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
35166
35167 2003-09-10  Jim Meyering  <jim@meyering.net>
35168
35169         * lib/error.c: Correct indentation of cpp directives.
35170
35171 2003-09-10  Bruno Haible  <bruno@clisp.org>
35172
35173         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
35174         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
35175         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
35176         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
35177         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
35178         <stdlib.h> and <string.h> checks.
35179         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
35180         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
35181
35182 2003-09-10  Bruno Haible  <bruno@clisp.org>
35183
35184         * lib/strcspn.c: Include <string.h> unconditionally.
35185         * lib/strpbrk.c: Include <string.h> unconditionally.
35186         * lib/strstr.c: Include <string.h> unconditionally.
35187         * lib/unicodeio.c: Include <string.h> unconditionally.
35188         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
35189         * lib/unsetenv.c: Likewise.
35190         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
35191         * lib/yesno.c: Include <stdlib.h> unconditionally.
35192         (rpmatch): Add prototype.
35193
35194 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35195
35196         More patches to assume C89 or better.
35197         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
35198         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
35199         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
35200         or for string.h.
35201         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
35202         stdlib.h.
35203         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
35204         C headers.
35205         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
35206         string.h.
35207         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
35208         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
35209         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
35210         or for string.h.
35211         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
35212         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
35213         C headers.
35214         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
35215         memcpy.
35216         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
35217         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
35218         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
35219         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
35220         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
35221         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
35222         string.h, free.
35223         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
35224         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
35225         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
35226         C headers, or for string.h.
35227         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
35228         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
35229         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
35230         headers, memory.h, stdlib.h, string.h, strings.h.
35231         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
35232         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
35233         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
35234         strchr.
35235         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
35236         headers, memory.h, string.h.
35237         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
35238         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
35239         free.
35240         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
35241         headers.
35242         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
35243         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
35244         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
35245         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
35246         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
35247
35248 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35249
35250         More K&R removal.
35251
35252         * lib/acosl.c (main): Use a prototype.
35253         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
35254         tanl.c: Likewise.
35255
35256         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
35257
35258         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
35259         (getopt, etopt_long, getopt_long_only, _getopt_internal)
35260         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
35261         with a prototype.
35262         * lib/getopt.c (const): Remove macro.
35263         Include <string.h> unconditionally.
35264         (my_index): Remove; all uses changed to strchr.
35265         (strlen): Remove decl.
35266         (exchange): Remove forward decl; no longer needed.
35267         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
35268         Define with prototype.
35269         * lib/getopt1.c (const): Remove macro.
35270         (getopt_long, getopt_long_only, main): Define with prototype.
35271
35272         * lib/getugroups.c: Include <string.h> unconditionally.
35273
35274         * lib/getusershell.c: Include <stdlib.h> unconditionally.
35275         (getusershell, setusershell, endusershell, readname, main):
35276         Define with prototypes.
35277
35278         * lib/group-member.c: Include group-member.h first.
35279         Include <stdlib.h> unconditionally.
35280
35281         * lib/hard-locale.c: Include hard-locale.h first.
35282         Include <stdlib.h>, <string.h> unconditionally.
35283
35284         * lib/hash.c (free, malloc): Remove decls.
35285         Include <stdlib.h> unconditionally.
35286
35287         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
35288         (getenv): Do not declare.
35289
35290         * lib/idcache.c: Include <string.h> unconditionally.
35291
35292         * lib/long-options.c: Include long-options.h first, to test interface.
35293         Include <stdlib.h> unconditionally.
35294
35295         * lib/makepath.c: Include makepath.h first, to test interface.
35296         Include <stdlib.h> and <string.h> unconditionally.
35297
35298         * lib/linebuffer.c: Include <stdlib.h>.
35299         (free): Remove decl.
35300
35301         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
35302         stddef.h. rpl_malloc returns void *, not char *.
35303         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
35304         prototype.
35305
35306         * lib/md5.h: Include <limits.h> unconditionally.
35307         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
35308         (__P): Remove; all uses removed.
35309         * lib/md5.c: Include "md5.h" first.
35310         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
35311         md5_buffer, md5_process_bytes, md5_process_block):
35312         Define with prototypes.
35313         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
35314         * lib/sha.c: Include "sha.h" first.
35315         Include <stdlib.h>, <string.h> unconditionally.
35316
35317         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
35318         * lib/memcmp.c (__ptr_t): Likewise.
35319         * lib/memrchr.c (__ptr_t): Likewise.
35320         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
35321         Include <string.h> unconditionally.
35322         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
35323         * lib/memchr.c: Include <stdlib.h> unconditionally.
35324         * lib/memchr.c (LONG_MAX): Remove.
35325         * lib/memrchr.c (LONG_MAX): Likewise.
35326         * lib/memchr.c (__memchr): Define via a prototype.
35327         * lib/memrchr.c (__memrchr): Likewise.
35328         * lib/memcmp.c (__P): Remove, and remove all uses.
35329         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
35330         Remove forward decls; no longer needed.
35331         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
35332         Use types required by C89 in prototype.
35333
35334         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
35335         * lib/savedir.c: Likewise.
35336         * lib/mkdir.c (free): Remove decl.
35337         * lib/rmdir.c (rmdir): Define with a prototype.
35338         * lib/savedir.c: Include savedir.h first, to test interface.
35339
35340         * lib/mktime.c (STDC_HEADERS): Remove.
35341         Include <stdlib.h>, <string.h> unconditionally.
35342
35343         * lib/modechange.c: Include <stdlib.h> unconditionally.
35344         (malloc): Remove decl.
35345
35346         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
35347         (free): Remove decl.
35348
35349         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
35350         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
35351         (This type really should be intptr_t, but that's a C99ism.)
35352         (_obstack_memcpy): Remove: all uses changed to memcpy.
35353         Include <string.h> unconditionally.
35354         (struct obstack): Assume __STDC__ for types of members
35355         chunkfun, freefun, extra_arg.
35356         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
35357         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
35358         obstack_begin, obstack_specify_allocation,
35359         obstack_specify_allocation_with_arg, obstack_chunkfun,
35360         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
35361         Remove unprototyped decls and the macros that use them.
35362         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
35363         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
35364         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
35365         (defined __STDC__ && __STDC__)]:
35366         Remove nonprototyped code.
35367         Include <stdlib.h> unconditionally.
35368         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
35369         _obstack_allocated_p, _obstack_free, obstack_free,
35370         _obstack_memory_used, print_and_abort):
35371         Define using prototypes.
35372         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
35373         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
35374         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
35375         obstack_next_free, obstack_object_size, obstack_room) [0]:
35376         Remove unused, unprototyped code.
35377
35378         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
35379
35380         * lib/physmem.c (physmem_total, physmem_available, main): Define
35381         with prototypes.
35382
35383         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
35384         (main): Define with a prototype.
35385
35386         * lib/posixver.c (getenv): Remove decl.
35387
35388         * lib/putenv.c (malloc): Returns void *, not char *.
35389         Include <string.h> unconditionally.
35390         (strchr, memcpy, NULL): Do not define.
35391
35392         * lib/readtokens.c: Include readtokens.h first, to test interface.
35393         Include <stdlib.h>, <string.h> unconditionally.
35394         (init_tokenbuffer): Define with a prototype.
35395
35396         * lib/regex.c (PARAMS): Remove.  All uses removed.
35397         All uses of _RE_ARGS removed, too.
35398         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
35399         unconditionally.
35400         (bzero): Assume memset exists.
35401         (memcmp, memcpy, NULL): Remove.
35402         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
35403         char, or assignments to local vars of type signed char.
35404         (init_syntax_once, PREFIX(extract_number_and_incr),
35405         PREFIX(print_partial_compiled_pattern),
35406         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
35407         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
35408         PREFIX(regex_grow_registers), PREFIX(regex_compile),
35409         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
35410         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
35411         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
35412         wcs_compile_range, byte_compile_range, truncate_wchar,
35413         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
35414         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
35415         count_mbs_length, wcs_re_match_2_internal,
35416         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
35417         PREFIX(alt_match_null_string_p),
35418         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
35419         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
35420         regfree, PREFIX(extract_number)): Define with prototype.  Remove
35421         now-unnecessary declaration, if any.
35422         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
35423         regcomp, regexec):
35424         Remove now-unnecessary casts among pointer types.
35425         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
35426
35427         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
35428         (free): Remove decl.
35429
35430         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
35431
35432         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
35433         (free): Remove decl.
35434
35435         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
35436         * lib/xgetcwd.c: Likewise.
35437
35438         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
35439         (free): Remove decl.
35440
35441         * lib/strchrnul.c (strchrnul): Define with a prototype.
35442         Fix bug: c_in was not converted to char before searching.
35443
35444         The following changes are not K&R related:
35445
35446         * lib/group-member.h: Include <sys/types.h>, so that this file is
35447         self-contained.
35448         * lib/makepath.h: Likewise.
35449
35450         * lib/getusershell.c (readname, default_index, line_size, readname):
35451         Use size_t, not int, for sizes.
35452         (readname): If the size overflows, report an error instead of
35453         looping forever.
35454
35455 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35456
35457         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
35458         libc.
35459
35460 2003-09-09  Paul Eggert  <eggert@twinsun.com>
35461
35462         * README: New section: portability guidelines.
35463
35464 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
35465
35466         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
35467         C89 spec.
35468
35469 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
35470
35471         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
35472
35473 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35474
35475         Assume C89 or better; remove K&R cruft.
35476         A few of these changes were first proposed by Derek Robert Price
35477         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
35478
35479         * lib/addext.c: Include <string.h> unconditionally.
35480         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
35481         Don't declare getenv or malloc.
35482
35483         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
35484         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
35485         (NULL): Remove.
35486         (find_stack_direction, alloca): Use prototypes.
35487
35488         * lib/atexit.c (atexit): Define using a prototype.
35489
35490         * lib/basename.c, dirname.c, stripslash.c:
35491         Include <string.h> unconditionally.
35492
35493         * lib/bcopy.c: Include <stddef.h>.
35494         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
35495
35496         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
35497
35498         * lib/error.h (error, error_at_line, error_print_progname)
35499         [! (defined (__STDC__) && __STDC__)]: Remove decls.
35500         * lib/error.c: Include error.h first, to check interface.
35501         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
35502         (VA_START): Remove; all uses changeed to va_start.
35503         (exit, strerror): Remove decls.
35504         (error_print_progname): Prototype uncondionally.
35505         Don't include <errno.h>; no longer needed.
35506         (private_strerror): Remove.
35507         (error_tail): Always define.
35508         (error, error_at_line): Assume C89 or better; always use prototypes.
35509         * lib/fatal.c: Include "fatal.h" first, to test interface.
35510         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
35511         (VA_START): Remove; all uses changed to va_start.
35512         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
35513         this case.
35514         (exit): Remove decl.
35515         (fatal): Prototype unconditionally.  Assume va_start works.
35516         Abort at end, to pacify gcc.
35517
35518         * lib/euidaccess.c (main): Define with a prototype.
35519
35520         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
35521
35522         * lib/exitfail.c: Include <stdlib.h> unconditionally.
35523
35524         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
35525         prototypes.
35526         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
35527         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
35528         (getenv): Remove decl.
35529         (fnmatch): Define using a prototype.
35530         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
35531         (FCT): Define using a prototype.
35532
35533         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
35534
35535         * lib/gethostname.c: Include <stddef.h>.
35536         (gethostname): Define with prototype.  Length is size_t, not int.
35537
35538 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35539
35540         Assume C89 or better; remove K&R cruft.
35541         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
35542         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
35543         string.h, getenv, malloc.
35544         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
35545         headers.
35546         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
35547         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
35548         do not check for strerror.
35549         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
35550         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
35551         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
35552         do not check for doprnt or vprintf.
35553         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
35554         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
35555
35556 2003-09-08  Paul Eggert  <eggert@twinsun.com>
35557
35558         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
35559         getversion.c should have been removed then, but was accidentally
35560         preserved.
35561
35562         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
35563         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
35564
35565 2003-09-08  Karl Berry  <karl@gnu.org>
35566
35567         * config/config.sub, config.guess, srclistvars.sh: update from savannah
35568                 config, forget about prep.
35569
35570         * config/depcomp, missing: update from automake.
35571
35572 2003-09-07  Paul Eggert  <eggert@twinsun.com>
35573
35574         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
35575         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
35576
35577 2003-09-07  Paul Eggert  <eggert@twinsun.com>
35578
35579         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
35580         copy_tm_result.  Bug reported by Simon Josefsson in
35581         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
35582
35583 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35584
35585         * m4/time_r.m4: New file.
35586         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
35587         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
35588         is. Check for timegm declaration.
35589         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
35590         Do not check for gmtime_r.
35591         Replace mktime if __mktime_internal does not exist and if mktime
35592         hasn't been replaced already.
35593
35594 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35595
35596         * lib/time_r.c, lib/time_r.h: New files.
35597
35598         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
35599         __localtime_r.
35600         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
35601         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
35602
35603         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
35604         __gmtime_r.
35605         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
35606         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
35607         Include <time_r.h>.
35608
35609         * lib/timegm.c: Switch to glibc implementation, with the following
35610         changes:
35611         [defined HAVE_CONFIG_H]: Include <config.h>.
35612         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
35613         (__mktime_internal) [!defined _LIBC]: New decl.
35614         (__gmtime_r) [!defined _LIBC]: New macro and function.
35615         (timegm): Use a prototype, since gnulib assumes C89.
35616         Do not bother declaring tmp to be const, as it's not really usefu.
35617         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
35618         (timegm): Declare only if HAVE_DECL_TIMEGM.
35619
35620 2003-09-06  Paul Eggert  <eggert@twinsun.com>
35621
35622         * MODULES.html.sh (func_all_modules): Add time_r.
35623         * modules/time_r: New file.
35624         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
35625         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
35626
35627 2003-09-03  Paul Eggert  <eggert@twinsun.com>
35628
35629         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
35630         Bug reported by Lute Kamstra in
35631         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
35632
35633         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
35634         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
35635         course with correspondingly smaller numbers for tomorrow and
35636         yesterday.  From Tadayoshi Funaba.  Originally installed into
35637         sh-utils on 1999-08-07, but the patch got lost (I guess during the
35638         coreutils merge?).
35639
35640 2003-08-31  Simon Josefsson  <jas@extundo.com>
35641
35642         * modules/timegm: New file.
35643         * MODULES.html.sh (func_all_modules): Add timegm.
35644
35645 2003-08-31  Simon Josefsson  <jas@extundo.com>
35646
35647         * m4/timegm.m4: New file.
35648
35649 2003-08-31  Simon Josefsson  <jas@extundo.com>
35650
35651         * lib/timegm.h: New file.
35652         * lib/timegm.c: New file.  Based on
35653         wget-1.8.2/src/http.c:mktime_from_utc.
35654
35655 2003-08-31  Karl Berry  <karl@gnu.org>
35656
35657         * lib/argp.h: update from libc.
35658
35659 2003-08-28  Bruno Haible  <bruno@clisp.org>
35660
35661         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
35662         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
35663         followed by '#define fnmatch fnmatch_posix' gives an error.
35664
35665 2003-08-28  Bruno Haible  <bruno@clisp.org>
35666
35667         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
35668         warning on QNX, which defines O_BINARY to 000000.
35669
35670 2003-08-27  Jim Meyering  <jim@meyering.net>
35671
35672         * m4/mkstemp.m4: Require that the system mkstemp be able to create
35673         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
35674         would fail after 32.  Reported by Danny Levinson.  Details here:
35675         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
35676
35677 2003-08-24  Bruno Haible  <bruno@clisp.org>
35678
35679         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
35680         MSVC7 <stdio.h> is included later.
35681
35682 2003-08-22  Simon Josefsson  <jas@extundo.com>
35683
35684         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
35685
35686 2003-08-20  Karl Berry  <karl@gnu.org>
35687
35688         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
35689
35690 2003-08-20  Bruno Haible  <bruno@clisp.org>
35691
35692         * modules/progname: New file.
35693         * MODULES.html.sh (func_all_modules): Add progname.
35694
35695 2003-08-20  Bruno Haible  <bruno@clisp.org>
35696
35697         * lib/progname.h: New file, from GNU gettext.
35698         * lib/progname.c: New file, from GNU gettext.
35699         * lib/progreloc.c: New file, from GNU gettext.
35700
35701 2003-08-19  Jim Meyering  <jim@meyering.net>
35702
35703         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
35704         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
35705
35706 2003-08-19  Bruno Haible  <bruno@clisp.org>
35707
35708         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
35709         more.
35710
35711 2003-08-19  Bruno Haible  <bruno@clisp.org>
35712
35713         * lib/xstrdup.c: Assume <string.h> exists.
35714
35715 2003-08-18  Paul Eggert  <eggert@twinsun.com>
35716
35717         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
35718         in makefile rules.
35719
35720 2003-08-18  Jim Meyering  <jim@meyering.net>
35721
35722         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
35723         * m4/lib-ld.m4: Likewise.
35724
35725 2003-08-18  Jim Meyering  <jim@meyering.net>
35726
35727         * lib/setenv.h: Indent nested cpp directive.
35728         * lib/vasnprintf.c: Remove trailing blanks.
35729
35730 2003-08-17  Simon Josefsson  <jas@extundo.com>
35731
35732         * modules/xstrndup: New file.
35733         * MODULES.html.sh (func_all_modules): Add xstrndup.
35734
35735 2003-08-17  Simon Josefsson  <jas@extundo.com>
35736
35737         * modules/argp: Fix autoconf macro name. Add more dependencies.
35738
35739 2003-08-17  Simon Josefsson  <jas@extundo.com>
35740
35741         * m4/xstrndup.m4: New file.
35742
35743 2003-08-17  Simon Josefsson  <jas@extundo.com>
35744
35745         * m4/argp.m4: New file.
35746
35747 2003-08-17  Simon Josefsson  <jas@extundo.com>
35748             Bruno Haible  <bruno@clisp.org>
35749
35750         * lib/xstrndup.h: New file.
35751         * lib/xstrndup.c: New file.
35752
35753 2003-08-17  Bruno Haible  <bruno@clisp.org>
35754
35755         * modules/strndup (Files, Include): Add lib/strndup.h.
35756
35757 2003-08-17  Bruno Haible  <bruno@clisp.org>
35758
35759         * modules/euidaccess (Files): Add lib/euidaccess.h.
35760
35761 2003-08-17  Bruno Haible  <bruno@clisp.org>
35762
35763         * lib/strndup.h: New file.
35764
35765 2003-08-17  Bruno Haible  <bruno@clisp.org>
35766
35767         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
35768         like AC_GNU_SOURCE.
35769         * modules/extensions (configure.ac): Comment out the invocation of
35770         gl_USE_SYSTEM_EXTENSIONS.
35771
35772 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35773
35774         Merges from coreutils, etc.
35775         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
35776         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
35777         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
35778         fixing a typo.
35779         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
35780         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
35781
35782 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35783
35784         Document merge from coreutils.
35785         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
35786         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
35787         * modules/utime: Add m4/utimes-null.m4.
35788
35789 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35790
35791         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
35792         space, undoing this 2003-08-12 change:
35793         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
35794
35795 2003-08-16  Paul Eggert  <eggert@twinsun.com>
35796
35797         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
35798         strtoul.c from libc, undoing this 2003-08-12 change:
35799         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
35800
35801 2003-08-16  Jim Meyering  <jim@meyering.net>
35802
35803         Merges from coreutils.
35804         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
35805         prefix.  Adjust cache variables similarly.  Create 500 rather than
35806         just 300 files, to exercise bug on Darwin6.5, too.
35807         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
35808         $missing_dir.
35809         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
35810         AM_SYS_POSIX_TERMIOS.
35811         Reported by mkc@mathdogs.com.
35812         Also change use of $am_cv_sys_posix_termios
35813         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
35814         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
35815         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
35816         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
35817         in /proc/mounts until it finds one with matching device number.  This
35818         is unnecessary when the FILE argument *is* a mount point.  No stat call
35819         is necessary in that case.  So, disable the statvfs-testing code on
35820         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
35821         as RedHat bug# 84846.
35822         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
35823         to 1MB, so as not to render systems with no stack size limit (e.g.,
35824         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
35825         Include <unistd.h>.  On some systems,
35826         it is required for the definition of _SC_PAGESIZE.
35827
35828 2003-08-16  Jim Meyering  <jim@meyering.net>
35829
35830         Merge from coreutils.
35831         * lib/xstrtoimax.c: #else #if -> #elif.
35832         * lib/xstrtoumax.c: Likewise.
35833
35834 2003-08-16  Jim Meyering  <jim@meyering.net>
35835
35836         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
35837         * m4/utimes.m4: Removed.
35838         * m4/utimes-null.m4: Renamed from utimes.m4.
35839
35840         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
35841         to 1MB, so as not to render systems with no stack size limit (e.g.,
35842         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
35843         Include <unistd.h>.  On some systems,
35844         it is required for the definition of _SC_PAGESIZE.
35845
35846 2003-08-16  Jim Meyering  <jim@meyering.net>
35847         and Paul Eggert  <eggert@cs.ucla.edu>
35848
35849         Merges from coreutils, etc.
35850
35851         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
35852         using the latest version from cvs.  This avoids problems with #line
35853         directives using a vendor (Sun) compiler.
35854         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
35855         Don't set GETGROUPS_LIB here; now it's
35856         done via getgroups.m4's wrapper function.
35857         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
35858         rather than just in sh-util/configure.in, so that the
35859         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
35860         same.
35861         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
35862         AC_FUNC_GETLOADAVG where to find getloadavg.c.
35863         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
35864         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
35865         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
35866         Remove code that is now done by the newly-required macros.
35867         Append $(EXEEXT) to DF_PROG.
35868         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
35869         Do not invoke or require the following here,
35870         since prereq.m4 or some gnulib .m4 now does this for us:
35871         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
35872         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
35873         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
35874         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
35875         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
35876         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
35877         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
35878         AC_FUNC_OBSTACK.
35879         Do not replace the following functions, as this is now the job
35880         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
35881         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
35882         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
35883         atexit getpass, strdup, getpagesize.
35884         Replace 'raise'.
35885         Do not check for the following functions, as this is now the job
35886         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
35887         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
35888         setregid.
35889         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
35890         Check for sys/sysctl.h.
35891         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
35892         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
35893         of checking for ssize_t ourselves.
35894
35895         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
35896         Require every macro that gnulib/modules/* suggests for us.
35897         (jm_PREREQ_ADDEXT): New macro.
35898         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
35899         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
35900
35901         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
35902         (gl_PHYSMEM): Use it.
35903         Also check for `table' function.
35904         Check for new headers and functions.
35905         Add check for sys/sysmp.h.
35906         With suggestions from Kaveh Ghazi.
35907         Ignore headers that are present but cannot be compiled.  This
35908         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
35909         C 5.4.
35910
35911 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35912
35913         Document merge from coreutils.
35914         * modules/userspec: Depend on posixver.
35915         * modules/strftime: Depend on tzset.
35916
35917 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35918
35919         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
35920         rather than tab, after '#' in shell-script copyright notices.
35921         Suggested by Bruno Haible.
35922
35923 2003-08-15  Paul Eggert  <eggert@twinsun.com>
35924
35925         * config/srclist-update: Use three spaces, rather than tab, after '#'
35926         in shell-script copyright notices.  Suggested by Bruno Haible.
35927         Remove unnecessary parenthesization in regular expression.
35928
35929 2003-08-15  Jim Meyering  <jim@meyering.net>
35930
35931         Merge from coreutils.
35932         * lib/xgethostname.c: Include <stdlib.h>.
35933         (xghostname): Don't exit for anything other than memory-related
35934         failure; just return NULL.
35935         * lib/userspec.c: Include "posixver.h".
35936         (parse_user_spec): Accept `.' as a separator only
35937         in pre-POSIX-200112 mode.
35938         * lib/strtoimax.c: Use #elif rather than #else #if.
35939         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
35940         Remove function, now that we can rely on a working tzset function.
35941         [!_LIBC]: Ensure that the required autoconf test has been run.
35942         [!defined _NL_CURRENT && HAVE_STRFTIME]:
35943         Use underlying_strftime for %r.
35944         * lib/sha.c: Merge in some clean-up and optimization changes from
35945         glibc.
35946         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
35947         Ensure that it is a multiple of 64.
35948         Rearrange loop exit tests so as to avoid performing an
35949         additional fread after encountering an error or EOF.
35950         * lib/realloc.c: Update copyright date.
35951
35952 2003-08-15  Jim Meyering  <jim@meyering.net>
35953         and Paul Eggert  <eggert@twinsun.com>
35954
35955         Merge from coreutils.
35956         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
35957         member but strut utmpx does not.  Needed for AIX 4.3.3.
35958         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
35959
35960 2003-08-15  Jim Meyering  <jim@meyering.net>
35961         and Paul Eggert  <eggert@cs.ucla.edu>
35962
35963         Merges from coreutils, etc.
35964         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
35965         Require gl_FUNC_TZSET_CLOBBER.
35966         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
35967         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
35968         members.
35969
35970 2003-08-14  Paul Eggert  <eggert@twinsun.com>
35971
35972         Help the merge from coreutils.
35973         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
35974         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
35975         * m4/tzset.m4: Use it too.
35976
35977 2003-08-14  Paul Eggert  <eggert@twinsun.com>
35978
35979         * modules/tzset: New file.
35980
35981 2003-08-14  Jim Meyering  <jim@meyering.net>
35982
35983         Merges from coreutils.
35984         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
35985         variable names, rather than @FNMATCH_H@.
35986         * modules/alloca: Likewise for $(ALLOCA_H).
35987
35988         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
35989         the three copies of the literal target, `fnmatch.h'.
35990         * modules/alloca (alloca.h): Likewise.
35991
35992 2003-08-14  Jim Meyering  <jim@meyering.net>
35993
35994         Merge from coreutils.
35995         * m4/tzset.m4: New file.
35996         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
35997         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
35998         otherwise, AIX 5.1 systems would end up using the latter.
35999         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
36000         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
36001         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
36002         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
36003
36004 2003-08-14  Jim Meyering  <jim@meyering.net>
36005
36006         Merge from coreutils.
36007         * lib/obstack.h: Whitespace changes.
36008         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
36009         and xcalloc return values.
36010         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
36011         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
36012         hang on OSF/1 5.1 for DIR on both local and remote file systems.
36013         Reported by (and fix confirmed by) Nelson H. F. Beebe.
36014         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
36015         error from mntctl.
36016         Use mntctl's return value to drive the entry-processing loop, since
36017         we can't rely on the value of the vmt_length member in the last
36018         entry.  On some systems doing so could result in exhausting
36019         virtual memory.  Based in part on a patch from Mike Jetzer.
36020
36021 2003-08-14  Jim Meyering  <jim@meyering.net>
36022         and Paul Eggert  <eggert@twinsun.com>
36023
36024         Merges from coreutils, plus other fixes.
36025         * lib/physmem.c: Merge in portability changes from gcc/libiberty
36026         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
36027         for credits and details.  Thanks to Kaveh Ghazi for helping
36028         to keep these files in sync.
36029         (ARRAY_SIZE): Define it.
36030         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
36031         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
36032         (memcasecmp): Don't assume size_t fits in unsigned int.
36033         Remove casts and duplicate code.
36034         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
36035         (memcpy): Remove definition.
36036         Merge in some clean-up and optimization changes from glibc.
36037         [BLOCKSIZE]: Move definition to top of file.
36038         Ensure that it is a multiple of 64.
36039         Rearrange loop exit tests so as to avoid performing an
36040         additional fread after encountering an error or EOF.
36041         * lib/md5.h (md5_uintptr): Define.
36042         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
36043         return to the initial working directory.  Preserve errno
36044         for caller.
36045         * lib/idcache.c: Include "xalloc.h".
36046         (xmalloc, xrealloc): Remove decls.
36047         (getuser): Remove casts no longer required in C89.
36048         * lib/human.c: Include stdio.h, for sprintf.
36049         * lib/group-member.c: Include "xalloc.h".
36050         (xmalloc, xrealloc): Remove decls.
36051         (get_group_info): Remove casts no longer required in C89.
36052         * lib/getusershell.c (readname): Remove casts no longer required in
36053         C89.
36054         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
36055         * lib/getline.c: Whitespace fix, from coreutils.
36056
36057 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36058
36059         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
36060         Check for isascii.
36061
36062         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
36063         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
36064         Undo previous (whitespace-only) change.
36065
36066 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36067
36068         * lib/exclude.c: Include <ctype.h>
36069         (IN_CTYPE_DOMAIN): New macro.
36070         (is_space): New fn.
36071         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
36072         and empty lines.
36073
36074         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
36075         Undo previous (whitespace-only) change.
36076
36077 2003-08-13  Paul Eggert  <eggert@twinsun.com>
36078
36079         * config/srclist-update: Change update back to the old behavior,
36080         leaving whitespace alone.  Use one 'sed' command rather than a
36081         pipeline.
36082         (fixlicense): Now a variable, not a function.
36083         (remove_trailing_blanks): Remove.
36084         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
36085         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
36086         Undo previous (whitespace-only) change.
36087
36088 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36089
36090         Merge from coreutils.
36091         * modules/euidaccess: Add lib_SOURCES, include for new
36092         file euidaccess.h
36093
36094 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36095
36096         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
36097         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
36098         Normalize leading white space and remove trailing white space.
36099
36100         Merge from coreutils
36101         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
36102
36103         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
36104         0.12.1.  These files are now being upgraded automatically by
36105         ../config/srclist-update.
36106
36107 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36108
36109         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
36110         Normalize leading white space and remove trailing white space.
36111         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
36112         notice, as per ../config/srclist-update.
36113
36114         Merge from coreutils.
36115         * lib/euidaccess.h: New file.
36116         * lib/euidaccess.c: Include it.
36117         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
36118         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
36119         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
36120
36121 2003-08-12  Paul Eggert  <eggert@twinsun.com>
36122
36123         * config/srclist-update: Add copyright notice.
36124         (remove_id_lines, remove_trailing_blanks): New constants.
36125         (fixfile): Use them to normalize spacing a bit in copied files.
36126         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
36127         Normalize leading white space and remove trailing white space.
36128
36129         * config/texinfo.tex: Sync with texinfo.
36130
36131         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
36132         strtoul.c from libc, to merge coreutils whitespace changes.
36133
36134         * config/srclist.txt: Get the following m4 files from gettext:
36135         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
36136         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
36137         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
36138         wint_t.m4.
36139
36140 2003-08-12  Karl Berry  <karl@gnu.org>
36141
36142         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
36143         been made.
36144
36145 2003-08-11  Paul Eggert  <eggert@twinsun.com>
36146
36147         * modules/gnu-source, m4/gnu-source.m4:
36148         Remove; we're assuming Autoconf 2.54 or later now.
36149         Suggested by Bruno Haible.
36150         * MODULES.html.sh (func_all_modules): Remove gnu-source.
36151
36152 2003-08-11  Bruno Haible  <bruno@clisp.org>
36153
36154         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
36155
36156 2003-08-11  Bruno Haible  <bruno@clisp.org>
36157
36158         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
36159         (vasnprintf): Use it instead of wcslen.
36160
36161 2003-08-11  Bruno Haible  <bruno@clisp.org>
36162
36163         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
36164         value to ensure that _Bool promotes to int. Use #define for _Bool when
36165         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
36166
36167 2003-08-10  Karl Berry  <karl@gnu.org>
36168
36169         * lib/regex.h: update from libc (whitespace fix).
36170
36171 2003-08-09  Paul Eggert  <eggert@twinsun.com>
36172
36173         Merge some files from coreutils.  These changes were
36174         originally made by Jim Meyering.
36175         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
36176         many older Unixes require this.
36177         * lib/alloca.c (alloca): Remove cast to argument of free;
36178         no longer needed in C89.
36179         * lib/alloca_.h, regex.h: Fix white space to match
36180         what GNU indent does.
36181
36182 2003-08-09  Paul Eggert  <eggert@twinsun.com>
36183
36184         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
36185         apparently Emacs's Unicode mode got confused before my 2003-08-05
36186         checkin.
36187
36188 2003-08-08  Paul Eggert  <eggert@twinsun.com>
36189
36190         * m4/extensions.m4: New file.
36191         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
36192         Require gl_USE_SYSTEM_EXTENSIONS.
36193         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
36194         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
36195
36196 2003-08-08  Paul Eggert  <eggert@twinsun.com>
36197
36198         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
36199         * modules/extensions, modules/gnu-source: New files.
36200         * modules/timespec, modules/unlocked-io: Depend on extensions.
36201
36202 2003-08-07  Paul Eggert  <eggert@twinsun.com>
36203
36204         * modules/restrict: New file.
36205         * MODULES.html.sh (func_all_modules): Add restrict.
36206         * modules/regex: Depend on restrict.
36207
36208 2003-08-07  Paul Eggert  <eggert@twinsun.com>
36209
36210         * m4/restrict.m4: New file.
36211         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
36212
36213 2003-08-07  Bruno Haible  <bruno@clisp.org>
36214
36215         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
36216         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
36217
36218 2003-08-07  Bruno Haible  <bruno@clisp.org>
36219
36220         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
36221         makes the module 'getndelim2' compatible with the module 'getline'.
36222
36223 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36224
36225         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
36226         byte with "\201" to avoid glitches when editing that source file
36227         with multi-gnome-terminal.
36228
36229 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36230
36231         * lib/bumpalloc.h: Remove.
36232
36233 2003-08-05  Paul Eggert  <eggert@twinsun.com>
36234
36235         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
36236         * modules/bumpalloc: Remove.
36237
36238 2003-08-04  Paul Eggert  <eggert@twinsun.com>
36239
36240         * lib/getloadavg.c: Change copyright notice and spacing to conform to
36241         GNU coding style.
36242
36243         Merge from coreutils.
36244         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
36245         1. From glibc.
36246         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
36247         from Karl Berry, implemented by Jim Meyering.
36248         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
36249         from Dmitry V. Levin.
36250         Remove anachronistic cast of xrealloc.
36251         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
36252         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
36253         type. Otherwise, it wouldn't compile with at least /bin/cc on
36254         ymp-cray-unicos9.0.2.X.
36255         Combine two mostly-identical uses of alloca into one.
36256         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
36257
36258 2003-08-04  Dave Love  <d.love@dl.ac.uk>
36259
36260         [From Emacs.]
36261
36262         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
36263         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
36264         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
36265         obsolete NLIST_NAME_UNION.
36266         [__GNU__]: Undef BSD and FSCALE.
36267         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
36268
36269 2003-08-03  Paul Eggert  <eggert@twinsun.com>
36270
36271         * lib/stdbool_.h (_Bool): Make it signed char, instead of
36272         an enum type, so that it's guaranteed to promote to int.  See:
36273         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
36274
36275 2003-08-03  Karl Berry  <karl@gnu.org>
36276
36277         * config/depcomp: update from automake.
36278
36279 2003-07-31  Paul Eggert  <eggert@twinsun.com>
36280
36281         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
36282         (strerror): Don't assume that a printable int fits in 14 bytes.
36283
36284 2003-07-31  Bruno Haible  <bruno@clisp.org>
36285
36286         * modules/getpass-gnu: New file.
36287         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
36288
36289 2003-07-31  Bruno Haible  <bruno@clisp.org>
36290
36291         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
36292
36293 2003-07-24  Karl Berry  <karl@gnu.org>
36294
36295         * config/missing: update from automake.
36296
36297 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
36298             Bruno Haible  <bruno@clisp.org>
36299
36300         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
36301         * lib/getline.c (getline, getdelim): Likewise.
36302         Remove _GNU_SOURCE define; now it's defined in config.h through
36303         m4/getline.m4.
36304
36305 2003-07-23  Karl Berry  <karl@gnu.org>
36306
36307         * config/config.sub: update from prep.
36308
36309 2003-07-22  Paul Eggert  <eggert@twinsun.com>
36310
36311         * modules/xalloc (Depends-on): Add exitfail.
36312         * modules/xmemcoll: Likewise.
36313
36314 2003-07-22  Paul Eggert  <eggert@twinsun.com>
36315
36316         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
36317         over-parenthesization in macros.
36318
36319         Sync with coreutils.
36320
36321         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
36322         required by C99.
36323
36324         Use `exit_failure' for xalloc and xmemcoll instead of their own
36325         private exit-failure variables.
36326         * lib/xalloc.h (xalloc_exit_failure): Remove.
36327         * lib/xmalloc.c: Likewise.  Include exitfail.h.
36328         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
36329         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
36330         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
36331         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
36332
36333 2003-07-20  Jim Meyering  <jim@meyering.net>
36334
36335         * modules/closeout (Depends-on): Add exitfail.
36336         Suggestion from Bruno Haible.
36337
36338 2003-07-19  Karl Berry  <karl@gnu.org>
36339
36340         * config/config.sub: update from prep.
36341
36342 2003-07-18  Paul Eggert  <eggert@twinsun.com>
36343
36344         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
36345         Remove.
36346         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
36347         to test that it can stand by itself.  Include "exitfail.h".
36348         Clients should set exit_failure instead.
36349         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
36350
36351 2003-07-18  Bruno Haible  <bruno@clisp.org>
36352
36353         * modules/getndelim2: New file.
36354         * modules/getline: Share files with module getndelim2.
36355         * modules/getnline: Depend on getndelim2 instead of sharing files with
36356         it. Add getnline.c to lib_SOURCES.
36357         * MODULES.html.sh (func_all_modules): Add getndelim2.
36358
36359 2003-07-18  Bruno Haible  <bruno@clisp.org>
36360
36361         * m4/getndelim2.m4: New file.
36362         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
36363         invoke gl_PREREQ_GETNDELIM2.
36364         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
36365         gl_PREREQ_GETNDELIM2.
36366         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
36367         gl_GETNDELIM2.
36368
36369 2003-07-18  Bruno Haible  <bruno@clisp.org>
36370
36371         * lib/getndelim2.h: New file.
36372         * lib/getndelim2.c: Make into a module of its own. Include config.h,
36373         getndelim2.h.
36374         (getndelim2): Make non-static. Change return type to ssize_t.
36375         * lib/getline.h: Change argument names.
36376         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
36377         * lib/getnline.c: Include getndelim2.h.
36378
36379 2003-07-18  Andreas Schwab  <schwab@suse.de>
36380
36381         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
36382
36383 2003-07-17  Karl Berry  <karl@gnu.org>
36384
36385         * config/config.sub: update from prep.
36386
36387 2003-07-17  Bruno Haible  <bruno@clisp.org>
36388
36389         * modules/getnline: New file.
36390         * modules/getline: Add lib/getndelim2.c to source file list.
36391         * MODULES.html.sh (func_all_modules): Add getnline.
36392
36393 2003-07-17  Bruno Haible  <bruno@clisp.org>
36394
36395         * m4/getnline.m4: New file.
36396
36397 2003-07-17  Bruno Haible  <bruno@clisp.org>
36398
36399         * m4/Makefile.am.in: Remove file.
36400         * m4/Makefile.am: Remove file.
36401         * m4/Makefile.in: Remove file.
36402
36403 2003-07-17  Bruno Haible  <bruno@clisp.org>
36404
36405         * lib/getnline.h: New file.
36406         * lib/getnline.c: New file.
36407         * lib/getndelim2.c: New file, extracted from getline.c.
36408         (getndelim2): Renamed from getdelim2, with added nmax argument.
36409         * lib/getline.c: Include getndelim2.c.
36410         (getdelim2): Moved out to getndelim2.c.
36411         (getline, getdelim): Update.
36412
36413 2003-07-17  Bruno Haible  <bruno@clisp.org>
36414
36415         * lib/Makefile.am: Remove file.
36416         * lib/Makefile.in: Remove file.
36417
36418 2003-07-17  Bruno Haible  <bruno@clisp.org>
36419
36420         * configure.in: Remove file.
36421         * Makefile.in: Remove file.
36422
36423 2003-07-17  Bruno Haible  <bruno@clisp.org>
36424
36425         * MODULES.html.sh: Put the </BODY> right before </HTML>.
36426
36427 2003-07-16  Karl Berry  <karl@gnu.org>
36428
36429         * config/srclist-update: was running fixlicense twice, which caused
36430                 texinfo.tex to be nullified for some reason.  Simplify,
36431                 $gplsrc is no longer needed as far as I can see?
36432
36433 2003-07-16  Jim Meyering  <jim@meyering.net>
36434
36435         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
36436
36437 2003-07-15  Paul Eggert  <eggert@twinsun.com>
36438
36439         * config/srclist.txt: Get the following files from gettext-runtime/intl
36440         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
36441         ref-del.sin.  From Bruno Haible.
36442         * config/srclist-update (fixfile): Change grep pattern again, since the
36443         previous fix didn't work (there was another trailing $).  Use
36444         '[$]' to escape the $s.
36445
36446 2003-07-15  Karl Berry  <karl@gnu.org>
36447
36448         * lib/vasnprintf.c: update from gettext.
36449
36450 2003-07-15  Karl Berry  <karl@gnu.org>
36451
36452         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
36453         gets expanded when surrounded by '$'.
36454
36455 2003-07-15  Jim Meyering  <jim@meyering.net>
36456
36457         * modules/save-cwd: Don't depend on error.  From Derek Price.
36458
36459 2003-07-15  Jim Meyering  <jim@meyering.net>
36460
36461         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
36462
36463 2003-07-14  Simon Josefsson  <jas@extundo.com>
36464
36465         * modules/mempcpy: New file.
36466         * MODULES.html.sh (func_all_modules): Add mempcpy.
36467
36468 2003-07-14  Simon Josefsson  <jas@extundo.com>
36469
36470         * m4/mempcpy.m4: New file.
36471
36472 2003-07-14  Simon Josefsson  <jas@extundo.com>
36473
36474         * lib/mempcpy.h: New file.
36475         * lib/mempcpy.c: New file.
36476
36477 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36478
36479         * modules/getdate, modules/posixtm: Depend on mktime.
36480
36481 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36482
36483         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
36484         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
36485         unicodeio.c, unicodeio.h, unlocked-io.h:
36486         Switch from LGPL to GPL.
36487
36488 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36489
36490         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
36491         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
36492         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
36493         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
36494         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
36495         updated automatically by ../config/srclist-update.  This changes
36496         their license from LPGL to GPL.
36497
36498 2003-07-14  Paul Eggert  <eggert@twinsun.com>
36499
36500         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
36501         assumed to refer to the root of the most recent stable gettext version.
36502         * config/srclistvars.sh: Add defaults for eggert.
36503         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
36504         Match "This program" as well as "The program".  This is needed
36505         for gettext.
36506
36507 2003-07-14  Jim Meyering  <jim@meyering.net>
36508
36509         Don't emit diagnostics.  Let callers do that.
36510         * lib/save-cwd.c: Don't include "error.h".
36511         (save_cwd): Don't call error.  Ensure that errno is valid
36512         when returning nonzero.
36513
36514         * lib/save-cwd.h (restore_cwd): Update prototype.
36515         * lib/save-cwd.c (restore_cwd): Remove two parameters.
36516         Simplify.  Don't call error upon failure.  Let callers do that.
36517         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
36518         when auditing is enabled.  But don't bother updating the #if.
36519
36520 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
36521
36522         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
36523         it breaks C++ compilation.
36524         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
36525
36526 2003-07-10  Simon Josefsson  <jas@extundo.com>
36527
36528         * modules/strchrnul (Makefile.am): Add strchrnul.h.
36529
36530 2003-07-10  Jim Meyering  <jim@meyering.net>
36531
36532         * m4/clock_time.m4: Remove trailing blank.
36533         * m4/intmax_t.m4: Likewise.
36534
36535 2003-07-10  Jim Meyering  <jim@meyering.net>
36536
36537         * lib/vasnprintf.c: Remove trailing blanks.
36538         Make cpp indentation consistent.
36539
36540 2003-07-09  Paul Eggert  <eggert@twinsun.com>
36541
36542         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
36543         posixver.c, strftime.c, strnlen.c, strverscmp.c:
36544         Switch from LGPL to GPL.
36545
36546 2003-07-09  Paul Eggert  <eggert@twinsun.com>
36547
36548         * config/srclist.txt: Sort sublists.  Add
36549         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
36550         that differ from gnulib for one reason or another; we'd like this list
36551         to be smaller but for now let's document what we have.
36552
36553 2003-07-08  Paul Eggert  <eggert@twinsun.com>
36554
36555         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
36556         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
36557         and sweeter "eval x=$x".
36558         * config/srclist.txt: Get lib/argp* from glibc.
36559
36560 2003-07-07  Paul Eggert  <eggert@twinsun.com>
36561
36562         * lib/mktime.c: Fix some boundary cases and remove need for floating
36563         point.
36564
36565         Issue a compile-time diagnostic if time_t is floating point, or if
36566         two's complement arithmetic is not in effect, or if arithmetic
36567         right shift does not propagate the sign.  These assumptions were
36568         all in the original code but they weren't checked.
36569
36570         (TIME_T_MIDPOINT, verify): New macros.
36571         (__isleap): Remove; it has integer overflow problems.
36572         (leapyear): New function, without those problems.
36573         (ydhms_tm_diff): Remove; splitting into two parts.
36574         (ydhms_diff): New function, containing the arithmetic part of
36575         the old ydhms_tm_diff function.  Issue a compile-time
36576         diagnostic if we are not using C99 integer division.
36577         Avoid casts when possible.
36578         (guess_time_tm): New function, containing the checking part of
36579         the old ydhms_tm_diff function.  Return the new value, rather than
36580         the difference between it and the old.  Accept a new argument T
36581         so that *T specifies the old value.  Check for overflow in the result.
36582
36583         (__mktime_internal): Use a time_t offset, not a long int offset.
36584         This undoes the 2003-06-04 change, which is no longer needed now
36585         that we have better overflow checking.
36586         (localtime_offset): Likewise.
36587
36588         (__mktime_internal): Avoid harmful overflow on hosts where time_t
36589         and long are 64-bit but int is only 32-bit.
36590         (ydhms_diff): Use long int to store year1 and yday1.
36591         Issue a compile-time diagnostic if long int is not wide enough.
36592
36593         (__mktime_internal): Use long int to store adjusted year and yday.
36594         Use plain C rather than preprocessor commands, if that doesn't
36595         affect efficiency.
36596         Check for overflow (and try to repair) after each probe
36597         rather than checking only at the very end.  This avoids some bugs
36598         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
36599         does not equal GMT offset at maximum time).
36600         Use integer to check for overflow rather than floating point; this
36601         is more portable to non-IEEE hosts, and is a tad faster.
36602         When we detect that we are oscillating between two values,
36603         don't check whether tm_isdst has the requested value, since
36604         we already know the answer.  When tm_isdst has the wrong value,
36605         use a different heuristic to find the right one, based on the
36606         extreme values actually observed in practice in tz2003a,
36607         rather than the (overly optimistic) "previous 3 calendar quarters".
36608
36609         (not_equal_tm, print_tm, check_result): Use "const T" rather than
36610         "T const" to accommodate glibc style.
36611         (check_result): Use less-confusing report format.  "long" -> "long int.
36612         (main): Likewise.
36613         Don't loop if the iteration overflows time_t.
36614         Allow a negative step in the iteration.
36615
36616 2003-07-06  Karl Berry  <karl@gnu.org>
36617
36618         * config/depcomp: update from automake.
36619         * config/config.sub: update from prep.
36620
36621 2003-07-03  Karl Berry  <karl@gnu.org>
36622
36623         * config/config.guess: update from prep.
36624
36625 2003-07-01  Paul Eggert  <eggert@twinsun.com>
36626
36627         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
36628         xreadlink.c now includes it unconditionally.
36629
36630 2003-07-01  Paul Eggert  <eggert@twinsun.com>
36631
36632         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
36633         having it depend on HAVE_SYS_TYPES_H.
36634
36635 2003-07-01  Bruno Haible  <bruno@clisp.org>
36636
36637         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
36638         <sys/types.h> should be sufficient.
36639         Reported by Paul Eggert.
36640
36641 2003-06-26  Karl Berry  <karl@gnu.org>
36642
36643         * config/depcomp: update from automake.
36644
36645 2003-06-26  Bruno Haible  <bruno@clisp.org>
36646
36647         * modules/human: Depend on module stdbool.
36648
36649 2003-06-25  Bruno Haible  <bruno@clisp.org>
36650
36651         * modules/readlink: New file.
36652         * modules/xreadlink: Depend on it.
36653         * MODULES.html.sh (func_all_modules): Add readlink.
36654
36655 2003-06-25  Bruno Haible  <bruno@clisp.org>
36656
36657         * m4/readlink.m4: New file.
36658
36659 2003-06-25  Bruno Haible  <bruno@clisp.org>
36660
36661         * lib/readlink.c: New file.
36662
36663 2003-06-22  Karl Berry  <karl@gnu.org>
36664
36665         * config/srclist.txt: update mkinstalldirs from automake.
36666         * config/mkinstalldirs: update.
36667
36668 2003-06-22  Bruno Haible  <bruno@clisp.org>
36669
36670         Portability to mingw32.
36671         * m4/ssize_t.m4: New file, from GNU gettext.
36672         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
36673         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
36674
36675 2003-06-22  Bruno Haible  <bruno@clisp.org>
36676
36677         * modules/safe-read: Add m4/ssize_t.m4.
36678         * modules/xreadlink: Add m4/ssize_t.m4.
36679
36680 2003-06-20  Bruno Haible  <bruno@clisp.org>
36681
36682         Assume C89, so PARAMS isn't needed.
36683         * lib/unicodeio.h (PARAMS): Remove.
36684         * lib/unicodeio.c: Don't use PARAMS.
36685
36686 2003-06-18  Karl Berry  <karl@gnu.org>
36687
36688         * config/config.{guess,sub}: update from prep.
36689
36690 2003-06-18  Jim Meyering  <jim@meyering.net>
36691
36692         Merge changes from coreutils.
36693         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
36694         Remove explicit declarations of xmalloc and realloc.
36695         Include xalloc.h.
36696         (read_utmp): Remove anachronistic cast of xmalloc.
36697
36698 2003-06-17  Paul Eggert  <eggert@twinsun.com>
36699
36700         Assume C89, so PARAMS isn't needed.
36701         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
36702         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
36703         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
36704         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
36705         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
36706         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
36707         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
36708         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
36709         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
36710         lib/xstrtod.h, lib/xstrtol.h: Likewise.
36711         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
36712         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
36713         no longer needed. Anyway, config.h should always be included before any
36714         other file.
36715
36716 2003-06-11  Simon Josefsson  <jas@extundo.com>
36717
36718         * modules/sysexits: New file.
36719         * MODULES.html.sh (func_all_modules): Add sysexits.
36720
36721 2003-06-11  Simon Josefsson  <jas@extundo.com>
36722
36723         * lib/sysexit_.h: New file.
36724
36725 2003-06-11  Derek Price  <derek@ximbiot.com>
36726
36727         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
36728         necessary.
36729
36730 2003-06-11  Bruno Haible  <bruno@clisp.org>
36731
36732         * m4/sysexits.m4: New file.
36733
36734 2003-06-10  Simon Josefsson  <jas@extundo.com>
36735
36736         * lib/argp.h: New file, from glibc.
36737         * lib/argp-ba.c: New file, from glibc.
36738         * lib/argp-eexst.c: New file, from glibc.
36739         * lib/argp-fmtstream.c: New file, from glibc.
36740         * lib/argp-fmtstream.h: New file, from glibc.
36741         * lib/argp-fs-xinl.c: New file, from glibc.
36742         * lib/argp-help.c: New file, from glibc.
36743         * lib/argp-namefrob.h: New file, from glibc.
36744         * lib/argp-parse.c: New file, from glibc.
36745         * lib/argp-pv.c: New file, from glibc.
36746         * lib/argp-pvh.c: New file, from glibc.
36747         * lib/argp-xinl.c: New file, from glibc.
36748
36749 2003-06-10  Simon Josefsson  <jas@extundo.com>
36750
36751         * modules/strchrnul: New file.
36752
36753 2003-06-10  Simon Josefsson  <jas@extundo.com>
36754
36755         * modules/argp: New file.
36756
36757 2003-06-10  Simon Josefsson  <jas@extundo.com>
36758
36759         * m4/strchrnul.m4: New file.
36760
36761 2003-06-10  Simon Josefsson  <jas@extundo.com>
36762
36763         * lib/strchrnul.h: New file.
36764         * lib/strchrnul.c: New file.
36765
36766 2003-06-10  Bruno Haible  <bruno@clisp.org>
36767
36768         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
36769
36770 2003-06-07  Karl Berry  <karl@gnu.org>
36771
36772         * config/config.{guess,sub}: update from prep.
36773
36774 2003-06-07  Jim Meyering  <jim@meyering.net>
36775
36776         * modules/strtod: Use $(...) notation, not @...@ for
36777         AC_REPLACE'd variables.
36778         * modules/localcharset: Likewise.
36779
36780 2003-06-07  Jim Meyering  <jim@meyering.net>
36781
36782         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
36783         in place of my name in the copyright comment.
36784         Remove definition and uses of __P.
36785
36786         From coreutils.
36787         * lib/stat.c: Don't declare xmalloc explicitly.
36788         Instead, include "xalloc.h".
36789         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
36790         xrealloc, and xcalloc return values.
36791         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
36792         Improve comment.
36793         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
36794
36795 2003-06-07  Bruno Haible  <bruno@clisp.org>
36796
36797         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
36798         avoid AC_CONFIG_LINKS.
36799         * modules/fnmatch (Makefile.am): Use explicit creation rule for
36800         fnmatch.h, to avoid AC_CONFIG_LINKS.
36801         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
36802
36803 2003-06-07  Bruno Haible  <bruno@clisp.org>
36804
36805         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
36806         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
36807         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
36808         directory.
36809         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
36810         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
36811         directory.
36812
36813 2003-06-06  Jim Meyering  <jim@meyering.net>
36814
36815         Merge from coreutils.
36816         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
36817         Consolidate declarations and initializations of *_base* locals.
36818
36819         Merge from coreutils.
36820         This avoids a core dump on systems without GNU putenv,
36821         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
36822         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
36823         (unsetenv): New static function, from GNU libc.
36824         (rpl_putenv): Use it.
36825
36826         * lib/modechange.c: Remove trailing blanks.
36827
36828         Merge from coreutils.
36829         * lib/fsusage.c: Remove declaration of statfs.
36830         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
36831
36832         * lib/posixtm.c: Include <stdbool.h> unconditionally.
36833
36834 2003-06-06  Jim Meyering  <jim@meyering.net>
36835
36836         * lib/stdbool_.h: Renamed from stdbool.h.in.
36837
36838 2003-06-06  Jim Meyering  <jim@meyering.net>
36839             Bruno Haible  <bruno@clisp.org>
36840
36841         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
36842         Adjust Makefile.am snippet not to redirect directly to target.
36843         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
36844
36845 2003-06-05  Paul Eggert  <eggert@twinsun.com>
36846
36847         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
36848         mismatch, look in future quarters as well as past.  This fixes a
36849         bug when processing fall-backwards gaps immediately after a long
36850         period of daylight-saving time.
36851
36852         * lib/mktime.c: Assume freestanding C89 or better.
36853         (HAVE_LIMITS_H): Remove.  Assume it's 1.
36854         (__P): Remove; not used.
36855         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
36856         (mktime, not_equal_tm, print_tm, check_result,
36857         main): Use prototypes.  Use const * where appropriate.
36858         (main): Fix typo in testing code that uncovered by above changes.
36859         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
36860
36861 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36862
36863         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
36864         locale.h, localeconv.  This merges changes from coreutils.
36865
36866         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
36867         It can be removed after the next Autoconf is released.
36868         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
36869         needed.
36870
36871 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36872
36873         * lib/mktime.c: Fix Debian bug 177940
36874         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
36875         (localtime_offset): Now long int, not time_t, because we want it
36876         to be guaranteed to be signed.  All uses changed.
36877         (__mktime_internal): If overflow would occur when adding offset,
36878         don't add it.
36879
36880         Merge 'human' changes from coreutils.  Rewrite to support
36881         locale-specific notations like thousands separators.
36882         * lib/human.c: Simplify authorship notice.
36883         Include human.h immediately after config.h.
36884         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
36885         <limits.h>: Do not include, since human.h does.
36886         (SIZE_MAX, UINTMAX_MAX): New macros.
36887         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
36888         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
36889         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
36890         (power_letter): Renamed from suffixes.
36891         (generate_suffix_backwards): Remove.
36892         (adjust_value): Now takes int style (because of human.h changes)
36893         and long double value (for greater precision on some platforms).
36894         (group_number): New function.
36895         (human_readable): Use it.  Use integer options, not enum.
36896         Put the options before the sizes in the arg list.
36897         Support all the new options.
36898         The old human_readable function has been removed;
36899         use inttostr.h instead.
36900         (human_readable, default_block_size, humblock):
36901         Use uintmax_t, not int, for block sizes.
36902         (human_readable_inexact, block_size_types): Remove.
36903         (block_size_opts): New constant.
36904         (human_options): Renamed from human_block_size, with new signature
36905         that allows block sizes up to UINTMAX_MAX.  All callers changed.
36906         * lib/human.h: Add copyright and authorship notice.
36907         Include <limits.h> and <stdbool.h> unconditionally.
36908         (PARAMS): Remove.  All uses removed.
36909         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
36910         (enum human_inexact_style): Remove tag; now a nameless enum.
36911         (human_floor, human_ceiling, human_round_to_even): Now have
36912         values 2, 0, 1 rather than -1, 1, 0.
36913         (human_group_digits, human_suppress_point_zero, human_autoscale,
36914         human_base_1024, human_SI, human_B): New constants.
36915         (human_readable_inexact, human_block_size): Remove.
36916         (human_readable): Size args are now uintmax_t, not int.
36917         (human_options): New decl.
36918
36919         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
36920         unnecessary now that we assume C89 or better.  This change
36921         imported from coreutils.
36922
36923         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
36924         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
36925         in the 2003-05-30 sync from glibc.
36926
36927         .h files should stand alone, but we shouldn't include <sys/types.h>
36928         if we can get away with just <stddef.h>.
36929
36930         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
36931         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
36932         rather than <sys/types.h>, as we merely need size_t.
36933         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
36934         to get size_t.
36935         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
36936         Include <stdio.h>, to get FILE.
36937         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
36938         memcasecmp.h has included <stddef.h> and all we need is size_t.
36939         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
36940         our interface, instead of including <sys/types.h>
36941
36942 2003-06-04  Paul Eggert  <eggert@twinsun.com>
36943
36944         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
36945         now, as glibc mktime is buggy on non-glibc systems.
36946
36947 2003-06-03  Karl Berry  <karl@gnu.org>
36948
36949         * config/config.sub: update from prep.
36950
36951 2003-06-02  Paul Eggert  <eggert@twinsun.com>
36952
36953         [from coreutils]
36954         Fix some minor time-related bugs with POSIX time arguments.
36955         Some valid time stamps were being rejected (notably -1, and
36956         time stamps before 1900 on 64-bit hosts).  And some invalid
36957         time stamps were being accepted, e.g. September 31.
36958
36959         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
36960         that we can return (time_t) -1 successfully.
36961         * lib/posixtm.c: Likewise.
36962         [HAVE_STDBOOL_H]: Include <stdbool.h>.
36963         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
36964         (t): Remove static var.
36965         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
36966         of static var.  All uses changed.
36967         (year): Do not reject years before 1900; they can occur with
36968         64-bit time_t.
36969         (posix_time_parse): Do not check for out-of-range components;
36970         that is now the caller's responsibility, since our checks were
36971         only approximations.
36972         (posixtime): Use mktime to check for out-of-range components,
36973         since it knows them exactly.
36974         If mktime returns (time_t) -1, check whether an error actually occurred
36975         by invoking localtime on -1.
36976         (main) [TEST_POSIXTIME]: Check for input data errors, and report
36977         posixtime failures better.
36978         Improve the test data (in comments only).
36979
36980 2003-06-02  Karl Berry  <karl@gnu.org>
36981
36982         * config/mkinstalldirs (version): new variable.
36983         (--version): new option.
36984         (usage): improve message.
36985
36986 2003-05-30  Karl Berry  <karl@gnu.org>
36987
36988         * lib/mktime.c: update from libc.
36989
36990 2003-05-30  Bruno Haible  <bruno@clisp.org>
36991
36992         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
36993         * config/config.rpath: Upgrade to gettext-0.12.1.
36994
36995 2003-05-30  Bruno Haible  <bruno@clisp.org>
36996
36997         * m4/gettext.m4: Upgrade to gettext-0.12.1.
36998         * m4/nls.m4: New file, from gettext-0.12.1.
36999         * m4/po.m4: New file, from gettext-0.12.1.
37000         * m4/progtest.m4: Upgrade to gettext-0.12.1.
37001
37002 2003-05-30  Bruno Haible  <bruno@clisp.org>
37003
37004         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
37005         * lib/localcharset.h: Likewise.
37006         * lib/localcharset.c: Likewise.
37007
37008 2003-05-29  Karl Berry  <karl@gnu.org>
37009
37010         * config/config.rpath: update from gettext.
37011
37012 2003-05-28  Paul Eggert  <eggert@twinsun.com>
37013
37014         Assume the headers required for C89 freestanding compilers.
37015         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
37016         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
37017         * m4/human.m4 (gl_HUMAN): Likewise.
37018         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
37019         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
37020         * m4/userspec.m4 (gl_USERSPEC): Likewise.
37021         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
37022         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
37023         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
37024
37025 2003-05-28  Paul Eggert  <eggert@twinsun.com>
37026
37027         Assume the headers required for C89 freestanding compilers.
37028         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
37029         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
37030         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
37031         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
37032         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
37033         define, since <limits.h> is guaranteed to do that.
37034         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
37035         * lib/exclude.c: Include <stdbool.h> unconditionally.
37036         * lib/tempname.c: Include <stddef.h> unconditionally.
37037         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
37038         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
37039         <stddef.h> does that.
37040         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
37041         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
37042         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
37043         needed.
37044         * lib/xstrtol.c: Likewise.
37045         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
37046         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
37047
37048         * lib/addext.c (addext): Use assignment rather than cast, to avoid
37049         warnings on some platforms.
37050
37051         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
37052         arbitrarily.
37053
37054 2003-05-26  Jim Meyering  <jim@meyering.net>
37055
37056         Merge in a change from coreutils:
37057         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
37058         that is guaranteed to be `no'.  Use `no_such_member' to indicate
37059         that condition, rather than `-1' which is slightly misleading.
37060         Change the name of the cache variable to have the gl_ prefix.
37061         Prompted by a patch from Richard Dawe for DJGPP.
37062
37063 2003-05-24  Karl Berry  <karl@gnu.org>
37064
37065         * config/config.guess: update from prep.
37066
37067 2003-05-22  Karl Berry  <karl@gnu.org>
37068
37069         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
37070
37071 2003-05-20  Karl Berry  <karl@gnu.org>
37072
37073         * config/config.guess: update from prep.
37074
37075 2003-05-18  Karl Berry  <karl@gnu.org>
37076
37077         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
37078         might actually be set by the user.
37079
37080         * config/depcomp, install-sh, mdate-sh: update from automake.
37081
37082 2003-05-17  Bruno Haible  <bruno@clisp.org>
37083
37084         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
37085         invalid expansion for AC_EGREP_CPP.
37086         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
37087         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
37088         Suggested by Akim Demaille <akim@epita.fr> in
37089         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
37090
37091 2003-05-12  Jim Meyering  <jim@meyering.net>
37092
37093         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
37094         the space-padded-by-default conversion specifiers, %e, %k, %l.
37095
37096 2003-05-12  Bruno Haible  <bruno@clisp.org>
37097
37098         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
37099         the string is longer than 4 KB.
37100
37101 2003-05-11  Karl Berry  <karl@gnu.org>
37102
37103         * config/config.{guess,sub}: update from prep.
37104
37105 2003-05-09  Bruno Haible  <bruno@clisp.org>
37106
37107         * modules/error: Add m4/strerror_r.m4 to file list.
37108
37109 2003-05-03  Bruno Haible  <bruno@clisp.org>
37110
37111         Upgrade to Unicode-4.0.
37112         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
37113         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
37114         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
37115         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
37116         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
37117         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
37118         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
37119         Change width of U+E0100..U+E01EF from 1 to 0.
37120
37121 2003-04-25  Jim Meyering  <jim@meyering.net>
37122
37123         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
37124         of type size_t, not int.
37125
37126 2003-04-25  Bruno Haible  <bruno@clisp.org>
37127
37128         * lib/copy-file.c: Include <stddef.h>, for size_t.
37129
37130 2003-04-21  Paul Eggert  <eggert@twinsun.com>
37131
37132         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
37133         code which expansion is under static control.  Patch imported from
37134         Akim Demaille's patch to Bison; see
37135         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
37136
37137 2003-04-14  Bruno Haible  <bruno@clisp.org>
37138
37139         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
37140
37141 2003-04-11  Jim Meyering  <jim@meyering.net>
37142
37143         Merge changes from Coreutils.
37144
37145         2003-03-22  Jim Meyering  <jim@meyering.net>
37146
37147         * lib/strftime.c (widen): Cast alloca return value to proper type.
37148
37149         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
37150
37151         From GNU libc.
37152         * lib/strftime.c (my_strftime): Handle very large width
37153         specifications for numeric values correctly.  Improve checks for
37154         overflow.
37155
37156         2003-01-19  Jim Meyering  <jim@meyering.net>
37157
37158         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
37159         definitions.
37160         (nl_get_alt_digit) [! defined my_strftime]: Define.
37161         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
37162         _nl_get_alt_digit and _nl_get_walt_digit.
37163
37164         * lib/strftime.c (my_strftime): Merge in locale-related changes from
37165         libc. These changes have no effect outside of _LIBC.
37166
37167 2003-04-10  Bruno Haible  <bruno@clisp.org>
37168
37169         * modules/findprog: New file.
37170         * MODULES.html.sh (func_all_modules): Add it.
37171
37172 2003-04-10  Bruno Haible  <bruno@clisp.org>
37173
37174         * m4/findprog.m4: New file.
37175         * m4/eaccess.m4: New file.
37176
37177 2003-04-10  Bruno Haible  <bruno@clisp.org>
37178
37179         * lib/findprog.h: New file, from GNU gettext.
37180         * lib/findprog.c: New file, from GNU gettext.
37181
37182 2003-04-05  Jim Meyering  <jim@meyering.net>
37183
37184         Merge changes from Coreutils.
37185
37186         * lib/exclude.h (PARAMS): Remove definition and uses.
37187         * lib/exclude.c: Remove uses of `PARAMS'.
37188
37189         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
37190         Add test-cases for DOS filenames. Declare program_name.
37191         (main): Set up program_name.  Patch by Rich Dawe.
37192
37193         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
37194         error from mntctl.
37195         Use mntctl's return value to drive the entry-processing loop, since
37196         we can't rely on the value of the vmt_length member in the last
37197         entry.  On some systems doing so could result in exhausting
37198         virtual memory.  Based in part on a patch from Mike Jetzer.
37199
37200 2003-04-04  Bruno Haible  <bruno@clisp.org>
37201
37202         * modules/linebreak: New file.
37203         * MODULES.html.sh (func_all_modules): Add it.
37204
37205 2003-04-04  Bruno Haible  <bruno@clisp.org>
37206
37207         * m4/linebreak.m4: New file.
37208
37209 2003-04-04  Bruno Haible  <bruno@clisp.org>
37210
37211         * lib/linebreak.h: New file, from GNU gettext.
37212         * lib/linebreak.c: New file, from GNU gettext with slight
37213         modifications.
37214         * lib/lbrkprop.h: New file, from GNU gettext.
37215
37216 2003-04-03  Bruno Haible  <bruno@clisp.org>
37217
37218         * modules/utf8-ucs4: New file.
37219         * modules/utf16-ucs4: New file.
37220         * modules/ucs4-utf8: New file.
37221         * modules/ucs4-utf16: New file.
37222         * MODULES.html.sh (func_all_modules): Add them.
37223
37224 2003-04-03  Bruno Haible  <bruno@clisp.org>
37225
37226         * m4/utf-ucs4.m4: New file.
37227         * m4/ucs4-utf.m4: New file.
37228
37229 2003-04-03  Bruno Haible  <bruno@clisp.org>
37230
37231         * lib/utf8-ucs4.h: New file, from GNU gettext.
37232         * lib/utf16-ucs4.h: New file, from GNU gettext.
37233         * lib/ucs4-utf8.h: New file, from GNU gettext.
37234         * lib/ucs4-utf16.h: New file, from GNU gettext.
37235
37236 2003-04-02  Bruno Haible  <bruno@clisp.org>
37237
37238         * modules/binary-io: New file.
37239         * MODULES.html.sh (func_all_modules): Add it.
37240
37241 2003-04-02  Bruno Haible  <bruno@clisp.org>
37242
37243         * lib/binary-io.h: New file, from GNU gettext.
37244
37245 2003-04-01  Bruno Haible  <bruno@clisp.org>
37246
37247         * modules/pathname: New file.
37248         * MODULES.html.sh (func_all_modules): Add it.
37249
37250 2003-04-01  Bruno Haible  <bruno@clisp.org>
37251
37252         * lib/pathname.h: New file, from GNU gettext.
37253         * lib/concatpath.c: New file, from GNU gettext.
37254
37255 2003-03-30  Bruno Haible  <bruno@clisp.org>
37256
37257         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
37258
37259 2003-03-30  Bruno Haible  <bruno@clisp.org>
37260
37261         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
37262         function chown() doesn't exist.
37263
37264 2003-03-28  Bruno Haible  <bruno@clisp.org>
37265
37266         * modules/copy-file: New file.
37267         * MODULES.html.sh (func_all_modules): Add it.
37268
37269 2003-03-28  Bruno Haible  <bruno@clisp.org>
37270
37271         * m4/copy-file.m4: New file.
37272
37273 2003-03-28  Bruno Haible  <bruno@clisp.org>
37274
37275         * lib/copy-file.h: New file, from GNU gettext.
37276         * lib/copy-file.c: New file, from GNU gettext.
37277
37278 2003-03-18  Jim Meyering  <jim@meyering.net>
37279
37280         * lib/quote.c (quote_n): Fix typo in comment.
37281
37282 2003-03-18  Bruno Haible  <bruno@clisp.org>
37283
37284         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
37285         checking.
37286         * m4/onceonly_2_57.m4: Likewise.
37287
37288 2003-03-17  Bruno Haible  <bruno@clisp.org>
37289
37290         * m4/onceonly.m4: Require autoconf 2.54 or newer.
37291         (m4_quote): Remove macro.
37292         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
37293
37294 2003-03-14  Jim Meyering  <jim@meyering.net>
37295
37296         Merge changes from Coreutils.
37297         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
37298         to be const, in order to avoid warnings.
37299         (obstack_room): Likewise.
37300         (obstack_empty_p): Likewise.
37301
37302 2003-03-14  Bruno Haible  <bruno@clisp.org>
37303
37304         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
37305         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
37306
37307 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37308
37309         Merge changes from Bison.
37310         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
37311         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
37312         when compiling Bison 1.875's `bitset bset = obstack_alloc
37313         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
37314         * lib/hash.c: Include <stdbool.h> unconditionally.
37315
37316 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37317
37318         * m4/onceonly.m4 (m4_quote): New macro.
37319         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
37320         Quote AC_FOREACH variable-expansions properly.
37321
37322 2003-03-13  Paul Eggert  <eggert@twinsun.com>
37323
37324         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
37325
37326 2003-03-09  Paul Eggert  <eggert@twinsun.com>
37327
37328         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
37329         Reported by Bruce Becker; see:
37330         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
37331
37332 2003-03-03  Paul Eggert  <eggert@twinsun.com>
37333             Bruno Haible  <bruno@clisp.org>
37334
37335         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
37336         Reported by John Hughes, see
37337         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
37338
37339 2003-02-20  Bruno Haible  <bruno@clisp.org>
37340
37341         * MODULES.html.sh (func_all_modules): Add poll.
37342
37343 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37344
37345         * modules/poll: New file.
37346
37347 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37348
37349         * lib/poll_.h: New file.
37350         * lib/poll.c: New file.
37351
37352 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
37353
37354         * m4/poll.m4: New file.
37355
37356 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37357
37358         * modules/mathl: New file.
37359
37360 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37361
37362         * lib/mathl.h: New file.
37363         * lib/acosl.c: New file.
37364         * lib/asinl.c: New file.
37365         * lib/atanl.c: New file.
37366         * lib/ceill.c: New file.
37367         * lib/cosl.c: New file.
37368         * lib/expl.c: New file.
37369         * lib/floorl.c: New file.
37370         * lib/frexpl.c: New file.
37371         * lib/ldexpl.c: New file.
37372         * lib/logl.c: New file.
37373         * lib/sincosl.c: New file.
37374         * lib/sinl.c: New file.
37375         * lib/sqrtl.c: New file.
37376         * lib/tanl.c: New file.
37377         * lib/trigl.c: New file.
37378         * lib/trigl.h: New file.
37379
37380 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
37381
37382         * m4/mathl.m4: New file.
37383
37384 2003-02-18  Bruno Haible  <bruno@clisp.org>
37385
37386         * MODULES.html.sh (func_all_modules): Add mathl.
37387
37388 2003-02-17  Bruno Haible  <bruno@clisp.org>
37389
37390         * modules/mkdtemp: New module.
37391         * MODULES.html.sh (func_all_modules): Add it.
37392
37393 2003-02-17  Bruno Haible  <bruno@clisp.org>
37394
37395         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
37396
37397 2003-02-17  Bruno Haible  <bruno@clisp.org>
37398
37399         * lib/mkdtemp.h: New file, from GNU gettext.
37400         * lib/mkdtemp.c: New file, from GNU gettext.
37401
37402 2003-02-02  Jim Meyering  <jim@meyering.net>
37403
37404         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
37405         e.g. glibc-2.2.93.
37406
37407 2003-01-31  Bruno Haible  <bruno@clisp.org>
37408
37409         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
37410         'rpl_rename'.
37411         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
37412         'rpl_strnlen'.
37413         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
37414         'rpl_strtod'.
37415         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
37416         'rpl_utime'.
37417
37418 2003-01-31  Bruno Haible  <bruno@clisp.org>
37419
37420         * lib/rename.c: #undef rename before defining rpl_rename.
37421         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
37422
37423 2003-01-30  Bruno Haible  <bruno@clisp.org>
37424
37425         * modules/vasnprintf, modules/vasprintf: New modules.
37426         * MODULES.html.sh (func_all_modules): Add them.
37427
37428 2003-01-30  Bruno Haible  <bruno@clisp.org>
37429
37430         * m4/signed.m4: New file, from GNU gettext.
37431         * m4/longdouble.m4: New file, from GNU gettext.
37432         * m4/wchar_t.m4: New file, from GNU gettext.
37433         * m4/wint_t.m4: New file, from GNU gettext.
37434         * m4/vasnprintf.m4: New file.
37435         * m4/vasprintf.m4: New file.
37436
37437 2003-01-30  Bruno Haible  <bruno@clisp.org>
37438
37439         * lib/printf-args.h: New file, from GNU gettext.
37440         * lib/printf-args.c: New file, from GNU gettext.
37441         * lib/printf-parse.h: New file, from GNU gettext.
37442         * lib/printf-parse.c: New file, from GNU gettext.
37443         * lib/vasnprintf.h: New file, from GNU gettext.
37444         * lib/vasnprintf.c: New file, from GNU gettext.
37445         * lib/asnprintf.c: New file, from GNU gettext.
37446         * lib/vasprintf.h: New file, from GNU gettext with modifications.
37447         * lib/vasprintf.c: New file, from GNU gettext.
37448         * lib/asprintf.c: New file, from GNU gettext.
37449
37450 2003-01-29  Bruno Haible  <bruno@clisp.org>
37451
37452         * modules/stpncpy: New module.
37453         * MODULES.html.sh (func_all_modules): Add it.
37454
37455 2003-01-29  Bruno Haible  <bruno@clisp.org>
37456
37457         * m4/stpncpy.m4: New file.
37458
37459 2003-01-29  Bruno Haible  <bruno@clisp.org>
37460
37461         * lib/stpncpy.h: New file, from GNU gettext with modifications.
37462         * lib/stpncpy.c: New file, from GNU gettext with modifications.
37463
37464 2003-01-28  Bruno Haible  <bruno@clisp.org>
37465
37466         * modules/c-ctype: New module.
37467         * MODULES.html.sh (func_all_modules): Add it.
37468
37469 2003-01-28  Bruno Haible  <bruno@clisp.org>
37470
37471         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
37472         Paul Eggert.
37473         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
37474         Paul Eggert.
37475
37476 2003-01-27  Bruno Haible  <bruno@clisp.org>
37477
37478         * modules/xsetenv: New module.
37479         * MODULES.html.sh (func_all_modules): Add it.
37480
37481 2003-01-27  Bruno Haible  <bruno@clisp.org>
37482
37483         * lib/xsetenv.h: New file, from GNU gettext.
37484         * lib/xsetenv.c: New file, from GNU gettext.
37485
37486 2003-01-23  Jim Meyering  <jim@meyering.net>
37487
37488         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
37489         from working on systems without dirfd (at least Irix and OSF1/Tru64).
37490
37491 2003-01-23  Bruno Haible  <bruno@clisp.org>
37492
37493         * modules/minmax: New module.
37494         * MODULES.html.sh (func_all_modules): Add it.
37495
37496 2003-01-23  Bruno Haible  <bruno@clisp.org>
37497
37498         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
37499         Eggert.
37500
37501 2003-01-22  Bruno Haible  <bruno@clisp.org>
37502
37503         * modules/exit: New module.
37504         * MODULES.html.sh (func_all_modules): Add it.
37505
37506 2003-01-22  Bruno Haible  <bruno@clisp.org>
37507
37508         * lib/exit.h: New file, from GNU gettext.
37509
37510 2003-01-19  Bruno Haible  <bruno@clisp.org>
37511
37512         * gnulib-tool: Recognize option --extract-maintainer.
37513         (func_get_maintainer): New function.
37514         * modules/*: Add Maintainer entry.
37515
37516 2003-01-16  Jim Meyering  <jim@meyering.net>
37517
37518         * m4/regex.m4: The `regex' struct is both input and output.
37519         Initialize it before each use.  Patch by Tim Waugh.
37520
37521 2003-01-16  Bruno Haible  <bruno@clisp.org>
37522
37523         * MODULES.html.sh: Add a table of contents. Add the module name as
37524         leftmost column. Add hyperlinks.
37525
37526 2003-01-15  Bruno Haible  <bruno@clisp.org>
37527
37528         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
37529
37530 2003-01-15  Bruno Haible  <bruno@clisp.org>
37531
37532         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
37533         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
37534         suffix.
37535
37536 2003-01-15  Bruno Haible  <bruno@clisp.org>
37537
37538         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
37539
37540 2003-01-15  Bruno Haible  <bruno@clisp.org>
37541
37542         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
37543         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
37544
37545 2003-01-14  Jim Meyering  <jim@meyering.net>
37546
37547         * lib/same.c (same_name): Tweak a comment.
37548
37549 2003-01-14  Bruno Haible  <bruno@clisp.org>
37550
37551         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
37552         when a string comparison is sufficient.
37553
37554 2003-01-14  Bruno Haible  <bruno@clisp.org>
37555
37556         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
37557         'unsigned int'.
37558
37559 2003-01-14  Bruno Haible  <bruno@clisp.org>
37560
37561         * lib/hash-pjw.c: Add comment about low quality of this function.
37562
37563 2003-01-13  Bruno Haible  <bruno@clisp.org>
37564
37565         * modules/stpcpy: Distribute lib/stpcpy.h.
37566         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
37567
37568 2003-01-13  Bruno Haible  <bruno@clisp.org>
37569
37570         * modules/*: Add a description.
37571         * modules/strpbrk: Fix Makefile.am snippet.
37572         * modules/strtoimax: Fix dependencies.
37573         * modules/strtoumax: Likewise.
37574
37575 2003-01-13  Bruno Haible  <bruno@clisp.org>
37576
37577         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
37578         * modules/alloca (Makefile.am): All object files depend on alloca.h.
37579         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
37580
37581 2003-01-13  Bruno Haible  <bruno@clisp.org>
37582
37583         * gnulib-tool (func_create_testdir): Store config/* files in the main
37584         directory.
37585         * config.rpath: Move to ...
37586         * config/config.rpath: ... here.
37587         * modules/gettext: Contains config/config.rpath, not config.rpath.
37588         * modules/iconv: Likewise.
37589
37590 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37591
37592         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37593         to avoid collisions with libcurses and libreadline.
37594
37595         * m4/getstr.m4: Remove.
37596         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
37597
37598 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37599
37600         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37601         to avoid collisions with libcurses and libreadline.
37602
37603         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
37604         * lib/getstr.h, getstr.c: Remove.
37605         * lib/getline.c: Include "getline.h", to check interface.
37606         Move body of old getstr.c here: this defines MIN_CHUNK and
37607         declares getdelim2, which is renamed from getstr.
37608         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
37609
37610         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
37611         All uses changed.
37612         * lib/linebuffer.h: Likewise.
37613         (readline): Remove backward-compatibility macro.
37614
37615 2003-01-12  Paul Eggert  <eggert@twinsun.com>
37616
37617         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
37618         to avoid collisions with libcurses and libreadline.
37619         * getstr: Remove.
37620         * MODULES.html.sh: Remove getstr.
37621         * modules/getline: Depend on unlocked-io, not getstr.
37622
37623 2003-01-12  Jim Meyering  <jim@meyering.net>
37624
37625         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
37626
37627 2003-01-10  Bruno Haible  <bruno@clisp.org>
37628
37629         * modules/alloca: Change Makefile.am requirements. Simplify Include
37630         requirements. Add lib/alloca_.h to file list.
37631
37632 2003-01-10  Bruno Haible  <bruno@clisp.org>
37633
37634         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
37635
37636 2003-01-10  Bruno Haible  <bruno@clisp.org>
37637
37638         * lib/alloca_.h: New file.
37639         * lib/getdate.y: Unconditionally include alloca.h.
37640         * lib/makepath.c: Likewise.
37641         * lib/setenv.c: Likewise.
37642         * lib/userspec.c: Likewise.
37643
37644 2003-01-09  Karl Berry  <karl@gnu.org>
37645
37646         * MODULES.html.sh: include `dirname $0` in PATH, to find
37647         gnulib-tool.
37648
37649 2003-01-09  Bruno Haible  <bruno@clisp.org>
37650
37651         * modules/stdbool: Change configure.ac, Makefile.am requirements.
37652         Simplify Include requirements. Add lib/stdbool.h.in to file list.
37653
37654 2003-01-09  Bruno Haible  <bruno@clisp.org>
37655
37656         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
37657
37658 2003-01-09  Bruno Haible  <bruno@clisp.org>
37659
37660         * lib/stdbool.h.in: New file.
37661
37662 2003-01-09  Bruno Haible  <bruno@clisp.org>
37663
37664         * gnulib-tool (func_all_modules): Ignore files ending in ~.
37665         * MODULES.html.sh: Likewise.
37666
37667 2003-01-08  Jim Meyering  <jim@meyering.net>
37668
37669         * lib/full-write.c: Undefine and define-away `const' after inclusion
37670         of errno.h, not before.  Suggestion from Bruno Haible.
37671
37672 2003-01-08  Bruno Haible  <bruno@clisp.org>
37673
37674         * modules/full-read: Depend on full-write.
37675
37676 2003-01-08  Bruno Haible  <bruno@clisp.org>
37677
37678         * lib/safe-read.c: Include specification header first, to ensure its
37679         selfcontainedness.
37680         * lib/full-write.c: Likewise.
37681
37682 2003-01-07  Jim Meyering  <jim@meyering.net>
37683
37684         * lib/full-write.c: Rework so that it may serve to define full_read,
37685         too.
37686         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
37687
37688 2003-01-07  Bruno Haible  <bruno@clisp.org>
37689
37690         * lib/strtoimax.c: Include <stdint.h> as an alternative to
37691         <inttypes.h>.
37692         * lib/xstrtol.h: Likewise.
37693         * lib/xstrtoimax.c: Likewise.
37694         * lib/xstrtoumax.c: Likewise.
37695         * lib/human.h: Likewise.
37696
37697         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
37698         on systems that have <inttypes.h> but not <stdint.h>.
37699
37700 2003-01-07  Bruno Haible  <bruno@clisp.org>
37701
37702         * MODULES.html.sh: Add copyright notice.
37703         (missed_files): Omit CVS directory entries.
37704         (func_module): Make it work with sed-3.02.
37705         * MODULES.txt: Remove file.
37706
37707 2003-01-06  Jim Meyering  <jim@meyering.net>
37708
37709         * lib/version-etc.c: Update year in translatable copyright string.
37710
37711 2003-01-03  Karl Berry  <karl@gnu.org>
37712
37713         * config/config.{guess,sub}: update from prep.
37714
37715 2003-01-02  Karl Berry  <karl@gnu.org>
37716
37717         * doc/COPYING.DOC: belatedly updated to 1.2.
37718
37719 2003-01-01  Karl Berry  <karl@gnu.org>
37720
37721         * gnulib-tool (func_verify_module): report module name $module in
37722         error message, not $1.
37723         * gnulib-tool (create-testdir): don't complain if destdir couldn't
37724         be created, only if it doesn't exist.
37725         * gnulib-tool (last_checkin_date): don't expand the $Date here.
37726
37727 2002-12-31  Paul Eggert  <eggert@twinsun.com>
37728
37729         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
37730
37731 2002-12-31  Paul Eggert  <eggert@twinsun.com>
37732
37733         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
37734         memcmp if strcoll doesn't work.
37735
37736 2002-12-31  Bruno Haible  <bruno@clisp.org>
37737
37738         * lib/utime.c (utime_null): No need to call ftruncate if the file was
37739         nonempty.
37740
37741 2002-12-31  Bruno Haible  <bruno@clisp.org>
37742
37743         * lib/memcoll.c (STRCOLL): New macro.
37744         (memcoll): Use it.
37745
37746 2002-12-31  Bruno Haible  <bruno@clisp.org>
37747
37748         * lib/localcharset.h: New file.
37749         * lib/localcharset.c: Include it.
37750         * lib/unicodeio.c: Likewise.
37751
37752 2002-12-31  Bruno Haible  <bruno@clisp.org>
37753
37754         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
37755         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
37756
37757 2002-12-31  Bruno Haible  <bruno@clisp.org>
37758
37759         * lib/getline.h: Include <stddef.h>, for size_t.
37760
37761         * lib/unicodeio.h: Include <stddef.h>, for size_t.
37762         * lib/unicodeio.c: Don't include <stddef.h>.
37763
37764 2002-12-31  Bruno Haible  <bruno@clisp.org>
37765
37766         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
37767         HAVE_TM_ZONE.
37768
37769 2002-12-24  Karl Berry  <karl@gnu.org>
37770
37771         * config/config.guess: update from prep.
37772
37773 2002-12-24  Bruno Haible  <bruno@clisp.org>
37774
37775         General infrasructure.
37776         * m4/README: Rewritten.
37777         * m4/onceonly.m4: New file.
37778         * m4/onceonly_2_57.m4: New file.
37779
37780         Module atexit.
37781         * m4/atexit.m4: New file.
37782
37783         Module strtod.
37784         * m4/strtod.m4: New file.
37785
37786         Module strtol.
37787         * m4/strtol.m4: New file.
37788
37789         Module strtoul.
37790         * m4/strtoul.m4: New file.
37791
37792         Module memchr.
37793         * m4/memchr.m4: New file.
37794
37795         Module memcmp.
37796         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
37797         (jm_FUNC_MEMCMP): Invoke it.
37798
37799         Module memcpy.
37800         * m4/memcpy.m4: New file.
37801
37802         Module memmove.
37803         * m4/memmove.m4: New file.
37804
37805         Module memset.
37806         * m4/memset.m4: New file.
37807
37808         Module strcspn.
37809         * m4/strcspn.m4: New file.
37810
37811         Module strpbrk.
37812         * m4/strpbrk.m4: New file.
37813
37814         Module strstr.
37815         * m4/strstr.m4: New file.
37816
37817         Module strerror.
37818         * m4/strerror.m4: New file.
37819
37820         Module mktime.
37821         * m4/mktime.m4: Renamed from jm-mktime.m4.
37822         (gl_PREREQ_MKTIME): New macro.
37823         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
37824
37825         Module malloc.
37826         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
37827         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
37828         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
37829
37830         Module realloc.
37831         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
37832         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
37833         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
37834
37835         Module strftime.
37836         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
37837         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
37838         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
37839         gl_TM_GMTOFF.
37840         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
37841
37842         Module xalloc.
37843         * m4/xalloc.m4: New file.
37844
37845         Module alloca.
37846         * m4/alloca.m4: New file.
37847
37848         Module putenv.
37849         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
37850         (jm_FUNC_PUTENV): Invoke it.
37851
37852         Module setenv.
37853         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
37854         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
37855         when invoked twice.
37856         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
37857         gt_FUNC_SETENV.
37858
37859         Module memrchr.
37860         * m4/memrchr.m4: New file.
37861
37862         Module stpcpy.
37863         * m4/stpcpy.m4: New file.
37864
37865         Module strcase.
37866         * m4/strcase.m4: New file.
37867
37868         Module strdup.
37869         * m4/strdup.m4: New file.
37870
37871         Module strnlen.
37872         * m4/strnlen.m4: New file.
37873
37874         Module strndup.
37875         * m4/strndup.m4: New file.
37876
37877         Module xstrtod.
37878         * m4/xstrtod.m4: New file.
37879
37880         Module xstrtol.
37881         * m4/xstrtol.m4: New file.
37882
37883         Module getdate.
37884         * m4/getdate.m4: New file.
37885
37886         Module unlocked-io.
37887         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
37888         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
37889         * m4/jm-glibc-io.m4n: Remove file.
37890
37891         Module long-options.
37892         * m4/long-options.m4: New file.
37893
37894         Module md5.
37895         * m4/md5.m4: New file.
37896
37897         Module sha.
37898         * m4/sha.m4: New file.
37899
37900         Module getstr.
37901         * m4/getstr.m4: New file.
37902
37903         Module getline.
37904         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
37905         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
37906         <sys/types.h>, for size_t. Use the function name gnu_getline, not
37907         simply getline. Infoke gl_PREREQ_GETLINE.
37908
37909         Module obstack.
37910         * m4/obstack.m4: New file.
37911
37912         Module hash.
37913         * m4/hash.m4: New file.
37914
37915         Module readtokens.
37916         * m4/readtokens.m4: New file.
37917
37918         Module strverscmp.
37919         * m4/strverscmp.m4: New file.
37920
37921         Module stdbool.
37922         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
37923         OSF/1.
37924
37925         Module strtoll.
37926         * m4/strtoll.m4: New file.
37927
37928         Module strtoull.
37929         * m4/strtoull.m4: New file.
37930
37931         Module strtoimax.
37932         * m4/strtoimax.m4: New file.
37933
37934         Module strtoumax.
37935         * m4/strtoumax.m4: New file.
37936
37937         Module xstrtoimax.
37938         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
37939         jm_AC_PREREQ_XSTRTOIMAX.
37940         Moved the strtol prerequisites to strtol.m4.
37941         Moved the strtoll prerequisites to strtoll.m4.
37942         Moved the strtoimax prerequisites to strtoimax.m4.
37943
37944         Module xstrtoumax.
37945         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
37946         jm_AC_PREREQ_XSTRTOUMAX.
37947         Moved the strtoul prerequisites to strtoul.m4.
37948         Moved the strtoull prerequisites to strtoull.m4.
37949         Moved the strtoumax prerequisites to strtoumax.m4.
37950
37951         Module chown.
37952         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
37953         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
37954
37955         Module dup2.
37956         * m4/dup2.m4: New file.
37957
37958         Module ftruncate.
37959         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
37960         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
37961
37962         Module getgroups.
37963         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
37964         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
37965
37966         Module gettimeofday.
37967         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
37968         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
37969         gl_PREREQ_GETTIMEOFDAY.
37970
37971         Module mkdir.
37972         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
37973         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
37974
37975         Module mkstemp.
37976         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
37977         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
37978         jm_AC_TYPE_UINTMAX_T.
37979         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
37980
37981         Module stat.
37982         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
37983         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
37984
37985         Module lstat.
37986         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
37987         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
37988
37989         Module timespec.
37990         * m4/timespec.m4 (gl_TIMESPEC): New macro.
37991         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
37992         * m4/st_mtim.m4: Indentation.
37993
37994         Module nanosleep.
37995         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
37996         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
37997         gl_PREREQ_NANOSLEEP.
37998
37999         Module regex.
38000         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
38001         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
38002         (gl_REGEX): New macro.
38003
38004         Module rename.
38005         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
38006         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
38007
38008         Module rmdir.
38009         * m4/rmdir.m4: New file.
38010
38011         Module utime.
38012         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
38013         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
38014         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
38015
38016         Module dirname.
38017         * m4/dirname.m4: New file.
38018
38019         Module getopt.
38020         * m4/getopt.m4: New file.
38021
38022         Module unistd-safer.
38023         * m4/unistd-safer.m4: New file.
38024
38025         Module fnmatch.
38026         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
38027         declaration.
38028         (gl_PREREQ_FNMATCH_EXTRA): New macro.
38029         (gl_FUNC_FNMATCH_POSIX): New macro.
38030         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
38031         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
38032         simply fnmatch.
38033
38034         Module exclude.
38035         * m4/exclude.m4: New file.
38036
38037         Module human.
38038         * m4/human.m4: New file.
38039
38040         Module acl.
38041         * m4/acl.m4: Nop.
38042
38043         Module backupfile.
38044         * m4/backupfile.m4: New file.
38045         * m4/d-ino.m4: Indentation.
38046
38047         Module fsusage.
38048         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
38049         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
38050         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
38051
38052         Module dirfd.
38053         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
38054         requirements.
38055
38056         Module euidaccess.
38057         * m4/euidaccess.m4: New file.
38058
38059         Module file-type.
38060         * m4/file-type.m4: New file.
38061
38062         Module fileblocks.
38063         * m4/fileblocks.m4: New file.
38064
38065         Module filemode.
38066         * m4/filemode.m4: New file.
38067
38068         Module isdir.
38069         * m4/isdir.m4: New file.
38070
38071         Module lchown.
38072         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
38073         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
38074
38075         Module makepath.
38076         * m4/makepath.m4: New file.
38077
38078         Module modechange.
38079         * m4/modechange.m4: New file.
38080
38081         Module mountlist.
38082         * m4/mountlist.m4: New file.
38083         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
38084         Indentation.
38085
38086         Module path-concat.
38087         * m4/path-concat.m4: New file.
38088
38089         Module pathmax.
38090         * m4/pathmax.m4: New file.
38091
38092         Module same.
38093         * m4/same.m4: New file.
38094
38095         Module save-cwd.
38096         * m4/save-cwd.m4: New file.
38097
38098         Module savedir.
38099         * m4/savedir.m4: New file.
38100
38101         Module xgetcwd.
38102         * m4/xgetcwd.m4: New file.
38103         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
38104
38105         Module xreadlink.
38106         * m4/xreadlink.m4: New file.
38107
38108         Module safe-read.
38109         * m4/safe-read.m4: New file.
38110
38111         Module safe-write.
38112         * m4/safe-write.m4: New file.
38113
38114         Module closeout.
38115         * m4/closeout.m4: New file.
38116
38117         Module stdio-safer.
38118         * m4/stdio-safer.m4: New file.
38119
38120         Module getpass.
38121         * m4/getpass.m4: New file.
38122
38123         Module getugroups.
38124         * m4/getugroups.m4: New file.
38125
38126         Module group-member.
38127         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
38128         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
38129
38130         Module idcache.
38131         * m4/idcache.m4: New file.
38132
38133         Module userspec.
38134         * m4/userspec.m4: New file.
38135
38136         Module gettime.
38137         * m4/clock_time.m4: New file.
38138         * m4/gettime.m4: New file.
38139
38140         Module settime.
38141         * m4/settime.m4: New file.
38142
38143         Module posixtm.
38144         * m4/posixtm.m4: New file.
38145
38146         Module gethostname.
38147         * m4/gethostname.m4: New file.
38148
38149         Module canon-host.
38150         * m4/canon-host.m4: New file.
38151
38152         Module gettext.
38153         * m4/codeset.m4: New file, from gettext-0.11.5.
38154         * m4/gettext.m4: New file, from gettext-0.11.5.
38155         * m4/glibc21.m4: New file, from gettext-0.11.5.
38156         * m4/iconv.m4: New file, from gettext-0.11.5.
38157         * m4/intdiv0.m4: New file, from gettext-0.11.5.
38158         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
38159         * m4/inttypes.m4: New file, from gettext-0.11.5.
38160         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
38161         * m4/isc-posix.m4: New file, from gettext-0.11.5.
38162         * m4/lcmessage.m4: New file, from gettext-0.11.5.
38163         * m4/lib-ld.m4: New file, from gettext-0.11.5.
38164         * m4/lib-link.m4: New file, from gettext-0.11.5.
38165         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
38166         * m4/progtest.m4: New file, from gettext-0.11.5.
38167         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
38168         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
38169         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
38170
38171         Module localcharset.
38172         * m4/localcharset.m4: New file.
38173
38174         Module hard-locale.
38175         * m4/hard-locale.m4: New file.
38176
38177         Module mbswidth.
38178         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
38179         onceonly macros.
38180         * m4/mbrtowc.m4: Add comment.
38181
38182         Module memcasecmp.
38183         * m4/memcasecmp.m4: New file.
38184
38185         Module memcoll.
38186         * m4/memcoll.m4: New file.
38187
38188         Module unicodeio.
38189         * m4/unicodeio.m4: New file.
38190
38191         Module rpmatch.
38192         * m4/rpmatch.m4: New file.
38193
38194         Module yesno.
38195         * m4/yesno.m4: New file.
38196
38197         Module exitfail.
38198         * m4/exitfail.m4: New file.
38199
38200         Module c-stack.
38201         * m4/c-stack.m4 (gl_C_STACK): New macro.
38202         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
38203
38204         Module error.
38205         * m4/error.m4 (gl_ERROR): New macro.
38206         (jm_PREREQ_ERROR): Use onceonly macros.
38207
38208         Module fatal.
38209         * m4/fatal.m4: New file.
38210
38211         Module getloadavg.
38212         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
38213         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
38214
38215         Module getpagesize.
38216         * m4/getpagesize.m4: New file.
38217
38218         Module getusershell.
38219         * m4/getusershell.m4: New file.
38220
38221         Module physmem.
38222         * m4/physmem.m4: New file.
38223
38224         Module posixver.
38225         * m4/posixver.m4: New file.
38226
38227         Module quotearg.
38228         * m4/quotearg.m4: New file.
38229
38230         Module quote.
38231         * m4/quote.m4: New file.
38232
38233         Module readutmp.
38234         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
38235
38236         Module sig2str.
38237         * m4/sig2str.m4: New file.
38238
38239         Other.
38240         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
38241         ulonglong.m4.
38242         * m4/intmax_t.m4: New file.
38243         * m4/d-type.m4: Indentation.
38244         * m4/jm-macros.m4: Update.
38245         * m4/prereq.m4 (jm_PREREQ): Update.
38246         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
38247         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
38248         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
38249         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
38250         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
38251         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
38252         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
38253         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
38254         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
38255         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
38256         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
38257         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
38258         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
38259         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
38260         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
38261         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
38262         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
38263         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
38264         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
38265
38266 2002-12-24  Bruno Haible  <bruno@clisp.org>
38267
38268         * MODULES.txt: Update according to m4/ changes.
38269
38270         Module gettext.
38271         * config.rpath: New file, from gettext-0.11.5.
38272
38273         * modules/*: New module descriptions.
38274         * gnulib-tool: New file.
38275         * MODULES.html.sh: New file.
38276
38277 2002-12-21  Karl Berry  <karl@gnu.org>
38278
38279         * doc/fdl.texi: update to version 1.2.
38280
38281 2002-12-19  Karl Berry  <karl@gnu.org>
38282
38283         * config/config.guess: update from prep.
38284
38285 2002-12-18  Bruno Haible  <bruno@clisp.org>
38286
38287         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
38288         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
38289
38290 2002-12-17  Bruno Haible  <bruno@clisp.org>
38291
38292         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
38293         stdlib.h, string.h.
38294
38295 2002-12-17  Bruno Haible  <bruno@clisp.org>
38296
38297         * lib/canon-host.c (strdup): Remove unused declaration.
38298
38299         * lib/fsusage.c: Include full_read.h.
38300         (get_fs_usage): Use full_read instead of safe_read.
38301
38302         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
38303
38304 2002-12-12  Karl Berry  <karl@gnu.org>
38305
38306         * config/config.guess: update from prep.
38307
38308 2002-12-11  Bruno Haible  <bruno@clisp.org>
38309
38310         * m4/setenv.m4: New file, from gettext-0.11.5.
38311
38312 2002-12-11  Bruno Haible  <bruno@clisp.org>
38313
38314         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
38315         not unsetenv().
38316         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
38317         modifications:
38318
38319         2002-12-11  Bruno Haible  <bruno@clisp.org>
38320
38321                 * setenv.c (alloca): Fall back to malloc.
38322                 (freea): New macro.
38323                 (setenv): Use freea() to free memory allocated with alloca().
38324
38325         2002-11-13  Bruno Haible  <bruno@clisp.org>
38326
38327                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
38328                 function declarations.
38329                 * unsetenv.c (unsetenv): Likewise.
38330
38331         2002-03-04  Bruno Haible  <bruno@clisp.org>
38332
38333                 Portability to AIX 4.3.3.
38334                 * unsetenv.c: New file, extracted from setenv.c.
38335                 * setenv.c: Move the unsetenv() function to unsetenv.c.
38336
38337         2001-12-20  Bruno Haible  <bruno@clisp.org>
38338
38339                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
38340                 use malloc instead. For SunOS 4.
38341
38342         2001-12-11  Bruno Haible  <bruno@clisp.org>
38343
38344                 * setenv.c: Declare alloca.
38345                 (compar_fn_t): New typedef.
38346                 (KNOWN_VALUE, STORE_VALUE): Use it.
38347
38348         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
38349         setenv.h.
38350
38351 2002-12-10  Paul Eggert  <eggert@twinsun.com>
38352
38353         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
38354         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
38355         Choose values that are less likely to collide with system fnmatch
38356         options.
38357         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
38358         defined (e.g., a pure POSIX system).
38359         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
38360         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
38361
38362 2002-12-06  Paul Eggert  <eggert@twinsun.com>
38363
38364         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
38365         a pain in practice to deal with generated m4 files.  This change
38366         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
38367
38368         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
38369         and jm-glibc-io.m4, as they are no longer a special case.
38370         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
38371         kludge and the auto-generation stuff.  Check only whether the
38372         functions are declared, not whether they exist, since older hosts
38373         that don't declare the functions can't use the optimization anyway.
38374
38375 2002-12-06  Jim Meyering  <jim@meyering.net>
38376
38377         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
38378
38379         Merge in changes from libc's misc/error.c, in preparation
38380         for the merge of gnulib's changes back into libc.
38381
38382         * lib/error.c (_): Define only if not already defined.
38383         Move definition to follow all #include directives.
38384         Include unlocked-io.h only if !_LIBC.
38385         [_LIBC]: Include <libio/libioP.h>.
38386         [USE_IN_LIBIO]: Include <libio/iolibio.h>
38387         (fflush): Tweak definition to use INTUSE.
38388         (putc): Define.
38389
38390 2002-12-05  Paul Eggert  <eggert@twinsun.com>
38391
38392         * lib/alloca.c [defined emacs]: Include "lisp.h".
38393         (xalloc_die) [defined emacs]: New macro.
38394         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
38395         [! defined emacs]: Include <xalloc.h>.
38396         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
38397         (pointer): Typedef to POINTER_TYPE *.
38398         (malloc): Remove decl; we now always use xmalloc.
38399         (alloca): Use old-style definition, since Emacs needs this.
38400         Check for arithmetic overflow when computing combined size.
38401
38402 2002-12-04  Paul Eggert  <eggert@twinsun.com>
38403
38404         Do not generate unlocked-io.h automatically, since it's easier to
38405         maintain it by hand.
38406
38407         * lib/unlocked-io.h: New file, from GNU diffutils,
38408         but with proper copyright notice and attribution.
38409         * lib/gen-uio: Remove.
38410         * lib/Makefile.am: Add copyright notice.
38411         (libfetish_a_SOURCES): Add unlocked-io.h.
38412         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
38413         (DISTCLEANFILES, io_functions): Remove macros.
38414         (EXTRA_DIST): Remove gen_uio.
38415         (unlocked-io.h): Remove rule.
38416
38417 2002-12-04  Jim Meyering  <jim@meyering.net>
38418
38419         Reflect the fact that stat.c and lstat.c are no longer generated.
38420         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
38421         (DISTCLEANFILES): Likewise.
38422         (EXTRA_DIST): Likewise.
38423         (all_local): Don't depend on stat.c or lstat.c.
38424         (stat.c, lstat.c): Remove rules.
38425         (EXTRA_DIST): Remove xstat.in.
38426
38427         * lib/xstat.in: Remove file.  Contents moved into stat.c.
38428         * lib/stat.c: New file.  Contents mostly from xstat.in.
38429         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
38430         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
38431
38432         * lib/safe-read.c: Rework so that it may serve to define safe_write,
38433         too.
38434         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
38435
38436 2002-12-03  Jim Meyering  <jim@meyering.net>
38437
38438         * lib/safe-read.c, safe-write.c: Change variable names and comments,
38439         but not semantics, to minimize the differences between these two files.
38440         (safe_read): Change comment to mention SAFE_READ_ERROR.
38441
38442         * lib/safe-read.c (IS_EINTR): Define.
38443         (safe_read): Use IS_EINTR in place of in-function cpp directives.
38444
38445 2002-12-02  Jim Meyering  <jim@meyering.net>
38446
38447         * lib/safe-read.c (EINTR): Define.
38448         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
38449         (INT_MAX): Provide fallback.
38450         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
38451
38452         * lib/safe-read.h (SAFE_READ_ERROR): Define.
38453
38454 2002-12-02  Bruno Haible  <bruno@clisp.org>
38455
38456         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
38457         Define, taken from safe-read.c.
38458         (INT_MAX): Provide fallback.
38459         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
38460         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
38461
38462         * lib/safe-read.c (EINTR): Remove definition.
38463         (safe_read): Don't use EINTR if it is absent.
38464
38465 2002-12-01  Jim Meyering  <jim@meyering.net>
38466
38467         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
38468         zero.
38469         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
38470
38471 2002-11-27  Paul Eggert  <eggert@twinsun.com>
38472
38473         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
38474         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
38475         with `if (! (value < limit)) abort ();', for readability.
38476
38477 2002-11-26  Karl Berry  <karl@gnu.org>
38478
38479         * lib/strdup.c: copy from libc again, with jim's ok.
38480         * lib/.cppi-disable: re-add strdup.c
38481
38482 2002-11-25  Karl Berry  <karl@gnu.org>
38483
38484         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
38485         instead of "strtol.c".
38486
38487 2002-11-25  Karl Berry  <karl@gnu.org>
38488
38489         * config/install-sh: update from automake for variable quoting, $0 in
38490         error msgs, etc.
38491
38492         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
38493         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
38494         entry.
38495
38496 2002-11-25  Jim Meyering  <jim@meyering.net>
38497
38498         * lib/mktime.c: Sync from libc, now that it has the latest fix.
38499
38500 2002-11-24  Karl Berry  <karl@gnu.org>
38501
38502         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
38503         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
38504
38505 2002-11-24  Jim Meyering  <jim@meyering.net>
38506
38507         Update from coreutils:
38508
38509         * lib/mktime.c: Merge in changes from libc.
38510
38511         Avoid a link-time failure on some Linux systems.
38512         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
38513         (otherwise).
38514         (__mon_yday): Declare with the STATIC attribute.
38515         (__mktime_internal): Likewise.
38516         Based on a report from Greg Schafer.
38517
38518 2002-11-23  Jim Meyering  <jim@meyering.net>
38519
38520         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
38521         Use `unsigned', not `int', as type of index.
38522
38523         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
38524
38525         * lib/fsusage.c: Remove unneeded parentheses around operands of
38526         `defined'.
38527
38528 2002-11-22  Paul Eggert  <eggert@twinsun.com>
38529
38530         * lib/quotearg.h: Allow multiple inclusion by surrounding with
38531         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
38532         so that we can be included first.
38533         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
38534         * lib/quotearg.c: Include quotearg.h immediately after config.h.
38535         No need to include stddef.h or sys/types.h any more.
38536         Surround local include files with "", not "<>".
38537         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
38538         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
38539         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
38540         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
38541         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
38542         (ISPRINT): Remove; no longer needed now that we assume C89.
38543
38544         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
38545         Preserve errno.
38546
38547         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
38548         quotearg_char): Use SIZE_MAX rather than
38549         (size_t) -1 when we are talking about "infinity".
38550
38551         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
38552
38553 2002-11-22  Paul Eggert  <eggert@twinsun.com>
38554
38555         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
38556         hint that one should use `if (! x) abort ();' rather than `assert
38557         (x);', and anyway it's one less thing to worry about configuring.
38558         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
38559         hash_rehash, hash_insert): Use abort rather than assert.
38560
38561 2002-11-22  Bruno Haible  <bruno@clisp.org>
38562
38563         * lib/safe-read.h: Assume C89. Add comments.
38564         (safe_read): Change return type to size_t.
38565         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
38566         byte counts > SSIZE_MAX correctly.
38567         * lib/safe-write.h: New file.
38568         * lib/safe-write.c: New file.
38569         * lib/full-read.h: New file.
38570         * lib/full-read.c: New file.
38571         * lib/full-write.h: Assume C89. Add comments.
38572         * lib/full-write.c: Include safe-write.h.
38573         (full_write): Rewritten to use safe_write.
38574         Suggested by Jim Meyering and Paul Eggert.
38575
38576 2002-11-21  Jim Meyering  <jim@meyering.net>
38577
38578         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
38579
38580         Merge in changes from the coreutils.
38581
38582         2002-09-25  Paul Eggert  <eggert@twinsun.com>
38583         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
38584         <stdint.h>.
38585         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
38586         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
38587         int.  Work more efficiently if X is the same width as uintmax_t.
38588         Do not compare X to -1, to avoid bogus compiler warning.
38589         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
38590         Don't assume that f_frsize and f_bsize are the same type.
38591
38592         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
38593         warning on FreeBSD.
38594
38595         * lib/makepath.c (make_path): Restore umask *before* creating the final
38596         component.
38597         (make_path): Minor reformatting.
38598
38599         * lib/xmalloc.c: Adjust to work with new autoconf macros,
38600         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
38601         HAVE_MALLOC/HAVE_REALLOC.
38602
38603         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
38604         dummy ones.  At least on GNU/Linux systems, `auto' means something
38605         else.
38606         From Michael Stone.
38607
38608 2002-11-21  Bruno Haible  <bruno@clisp.org>
38609
38610         Remove case insensitive option matching.
38611         * lib/argmatch.h (argcasematch): Remove declaration.
38612         (ARGCASEMATCH): Remove macro.
38613         (__xargmatch_internal): Remove case_sensitive argument.
38614         (XARGMATCH): Update.
38615         (XARGCASEMATCH): Remove macro.
38616         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
38617         case_sensitive argument.
38618         (argcasematch): Remove function.
38619         (__xargmatch_internal): Remove case_sensitive argument.
38620         (main): Use XARGMATCH instead of XARGCASEMATCH.
38621
38622         * lib/xmalloc.c: Change compile-time error message. Add comment about
38623         required autoconf version.
38624
38625 2002-11-20  Paul Eggert  <eggert@twinsun.com>
38626
38627         Merge argmatch cleanups from Bison.  Assume C89.
38628
38629         * lib/argmatch.c: Include config.h here, not in argmatch.h.
38630         Include stdlib.h, for EXIT_FAILURE.
38631         Always include <string.h>, since we assume C89.
38632         (EXIT_FAILURE): Remove pre-C89 bug workaround.
38633         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
38634         Include <stddef.h> instead, since it's all we need for size_t.
38635         (PARAMS): Remove.  All uses removed.
38636         (ARRAY_CARDINALITY): Do not bother to #undef.
38637         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
38638         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
38639         Remove unnecessary parentheses.
38640         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
38641         Insert necessary parentheses.
38642         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
38643         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
38644
38645 2002-11-19  Bruno Haible  <bruno@clisp.org>
38646
38647         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
38648         * lib/mbswidth.h: Include <stddef.h>, for size_t.
38649
38650         * lib/mbswidth.h (PARAMS): Remove macro.
38651         (mbswidth, mbsnwidth): Use ANSI C function declarations.
38652         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
38653
38654         * lib/gcd.h (PARAMS): Remove macro.
38655         (gcd): Use ANSI C function declarations.
38656         * lib/gcd.c (gcd): Likewise.
38657
38658 2002-11-15  Bruno Haible  <bruno@clisp.org>
38659
38660         * lib/strcspn.c: Include <stddef.h>.
38661         (strcspn): Use ANSI C function declaration. Change return type to
38662         size_t. Use NULL.
38663         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
38664         (strpbrk): Use NULL.
38665         * lib/strpbrk.h (PARAMS): Remove macro.
38666         (strpbrk): Use ANSI C function declaration.
38667         * lib/strstr.c: Don't include <sys/types.h>.
38668         * lib/strstr.h (PARAMS): Remove macro.
38669         (strstr): Use ANSI C function declarations.
38670
38671 2002-11-14  Karl Berry  <karl@gnu.org>
38672
38673         * config/mkinstalldirs: `do' on separate line, instead of
38674         `for var; do'.
38675
38676 2002-11-06  Bruno Haible  <bruno@clisp.org>
38677
38678         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
38679         * lib/gcd.c (gcd): Likewise.
38680
38681 2002-11-05  Bruno Haible  <bruno@clisp.org>
38682
38683         * lib/gcd.h: New file, from gettext-0.11.5.
38684         * lib/gcd.c: New file, from gettext-0.11.5.
38685
38686 2002-11-05  Bruno Haible  <bruno@clisp.org>
38687
38688         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38689         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38690         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38691         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
38692
38693         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
38694         <libintl.h>.
38695         * lib/makepath.c: Include gettext.h instead of <locale.h> and
38696         <libintl.h>.
38697
38698         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
38699         * lib/human.c: Include gettext.h instead of <libintl.h>.
38700         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
38701         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
38702         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
38703         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
38704         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
38705         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
38706         (textdomain): Remove definition.
38707         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
38708
38709         * lib/long-options.c: Remove include of <libintl.h> and definition of
38710         _.
38711         * lib/same.c: Remove include of <libintl.h> and definition of _.
38712
38713 2002-11-04  Owen Taylor  <otaylor@redhat.com>
38714
38715         * lib/config.charset: A few additions for Solaris.
38716
38717 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
38718
38719         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
38720         * lib/localcharset.c (locale_charset): Declare as extern "C".
38721
38722 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
38723
38724         * lib/config.charset: msdos in uk_UA uses CP1125.
38725
38726 2002-11-04  Bruno Haible  <bruno@clisp.org>
38727
38728         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
38729         * lib/strcase.h: New file, from GNU gettext-0.11.5.
38730         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
38731         * lib/strstr.h: New file, from GNU gettext-0.11.5.
38732         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
38733
38734 2002-11-04  Bruno Haible  <bruno@clisp.org>
38735
38736         * lib/localcharset.c (locale_charset): Don't return an empty string.
38737
38738 2002-11-04  Bruno Haible  <bruno@clisp.org>
38739
38740         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
38741         aliases.
38742
38743 2002-11-04  Bruno Haible  <bruno@clisp.org>
38744
38745         * lib/config.charset: Update for newest glibc. Add canonical names
38746         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
38747
38748 2002-11-04  Bruno Haible  <bruno@clisp.org>
38749
38750         * lib/config.charset: Add support for NetBSD.
38751
38752 2002-11-04  Bruno Haible  <bruno@clisp.org>
38753
38754         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
38755
38756 2002-11-01  Bruno Haible  <bruno@clisp.org>
38757
38758         * configure.in: Add AC_CONFIG_AUX_DIR call.
38759         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
38760         test/Makefile.
38761         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
38762
38763 2002-09-28  Karl Berry  <karl@gnu.org>
38764
38765         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
38766         installed automake until the next release, since changes have been
38767         made.
38768
38769 2002-09-25  Karl Berry  <karl@gnu.org>
38770
38771         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
38772         * lib/getopt*: copy from libc/posix.
38773         * lib/gettext.h: copy from gettext.
38774         * lib/.cppi-disable: add strdup.c, gettext.h.
38775
38776 2002-09-25  Karl Berry  <karl@gnu.org>
38777
38778         * config/srclist.txt: enable gettext.h check.
38779         * config/config.{guess,sub}: update from prep.
38780         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
38781                 from automake 1.6.3.
38782         See srclist*.
38783
38784 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
38785
38786         * regex.c (PATFETCH): Remove the translating fetch.
38787         (PATFETCH_RAW): Rename to PATFETCH.
38788         (set_image_of_range): New fun.
38789         (SET_RANGE_TABLE_WORK_AREA): Use it.
38790         (regex_compile): Don't translate the pattern chars so eagerly.
38791         Only do it when inserting an `exactn' bytecode or when handling
38792         a char-range.
38793         (mutually_exclusive_p): Avoid empty statement.
38794
38795 2002-07-06  Jim Meyering  <meyering@lucent.com>
38796
38797         * m4/README: Don't mention Makefile.am.in.
38798         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
38799
38800 2002-07-01  Jim Meyering  <meyering@lucent.com>
38801
38802         * lib/c-stack.c: Include sys/time.h.
38803         From Volker Borchert.
38804
38805 2002-06-26  Paul Eggert  <eggert@twinsun.com>
38806
38807         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
38808
38809 2002-06-26  Paul Eggert  <eggert@twinsun.com>
38810
38811         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
38812         New macro.  Use it uniformly instead of
38813         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
38814         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
38815         reported by Vin Shelton.
38816
38817 2002-06-22  Paul Eggert  <eggert@twinsun.com>
38818
38819         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
38820         Do not assume SA_SIGINFO behavior.
38821         Bug reported by Jim Meyering on NetBSD 1.5.2.
38822
38823 2002-06-22  Jim Meyering  <meyering@lucent.com>
38824
38825         * m4/c-stack.m4: New file, from diffutils-2.8.2.
38826         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
38827
38828         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
38829         now that configure.ac uses AC_GNU_SOURCE.
38830         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
38831         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
38832
38833         Update to latest tools.  Suggestions from Paul Eggert.
38834         * m4/stdbool.m4: New file, from diffutils-2.8.2.
38835         * m4/gnu-source.m4: Update from diffutils-2.8.2.
38836         * m4/fnmatch.m4: Likewise.
38837         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
38838         to AC_HEADER_STDBOOL
38839
38840 2002-06-22  Jim Meyering  <meyering@lucent.com>
38841
38842         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
38843         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
38844
38845 2002-06-22  Jim Meyering  <meyering@lucent.com>
38846
38847         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
38848
38849         * lib/exitfail.c, exitfail.h: Likewise.
38850         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
38851
38852         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
38853         of fnmatch.h.
38854         (EXTRA_DIST): Add fnmatch_loop.c.
38855         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
38856
38857         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
38858         * lib/fnmatch.c: Update from diffutils-2.8.2.
38859         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
38860         * lib/fnmatch.h: Remove file.
38861
38862 2002-06-21  Jim Meyering  <meyering@lucent.com>
38863
38864         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
38865         * m4/mbrtowc.m4: Likewise.
38866
38867         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
38868         * m4/mbswidth.m4: Reflect name change:
38869         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
38870         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
38871
38872         * m4/lib-link.m4: Update from gettext-0.11.2.
38873         * m4/gettext.m4: Likewise.
38874
38875         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
38876         From Alfred M. Szmidt.
38877
38878 2002-06-18  Paul Eggert  <eggert@twinsun.com>
38879
38880         * lib/file-type.h: Report an error if neither S_ISREG nor
38881         S_IFREG is defined, instead of using a test specific to glibc
38882         2.2.  This should be safe, since POSIX requires S_ISREG and
38883         Unix Version 7 had S_IFREG.  We don't need to check for
38884         <sys/types.h> since we don't use any symbols that it defines.
38885
38886 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
38887
38888         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
38889         $@-t, so that each temporary file name is unique and valid in the first
38890         8 characters, for operation under DOS.
38891
38892 2002-06-15  Paul Eggert  <eggert@twinsun.com>
38893
38894         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
38895
38896 2002-06-15  Jim Meyering  <meyering@lucent.com>
38897
38898         Work even with DJGPP 2.03, which lacks support for symlinks.
38899         From Richard Dawe.
38900         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
38901         is defined.
38902         * lib/lchown.c (S_ISLNK): Likewise.
38903
38904 2002-06-15  Jim Meyering  <meyering@lucent.com>
38905
38906         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
38907         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
38908         have been included before this file.
38909
38910 2002-06-14  Jim Meyering  <meyering@lucent.com>
38911
38912         * lib/file-type.h: Use the version from diffutils-2.8.2.
38913         * lib/file-type.c: Likewise.
38914
38915 2002-06-07  Jim Meyering  <meyering@lucent.com>
38916
38917         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
38918         They're needed at least for NetBSD 1.5.2.
38919         ($statxfs_includes): Include those same headers.
38920         ($statxfs_includes): Include sys/vfs.h if available.
38921         ($statxfs_includes): Likewise for sys/statvfs.h.
38922         Check for the following members in both structs statfs and statvfs:
38923         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
38924
38925 2002-06-01  Jim Meyering  <meyering@lucent.com>
38926
38927         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
38928         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
38929
38930 2002-05-28  Jim Meyering  <meyering@lucent.com>
38931
38932         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
38933         Reported by Volker Borchert.
38934
38935 2002-05-27  Jim Meyering  <meyering@lucent.com>
38936
38937         Fix a problem seen only on nonconforming systems whereby ls.c's
38938         use of localtime, and then of gettimeofday would cause trouble:
38939         the localtime call used to initialize rpl_gettimeofday's save
38940         mechanism would clobber ls's current local time information so
38941         that in any long listing the first file would always be listed
38942         with date 1970-01-01.  Analysis by Volker Borchert.
38943
38944         * lib/gettimeofday.c (localtime): Undefine.
38945         (rpl_localtime): New function.
38946
38947 2002-05-27  Jim Meyering  <meyering@lucent.com>
38948
38949         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
38950         localtime.
38951
38952         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
38953         use the replacement function; it wouldn't resolve at link time.
38954         Reported by Volker Borchert.
38955
38956 2002-05-22  Jim Meyering  <meyering@lucent.com>
38957
38958         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
38959         file-type.h.
38960         * lib/file-type.h: New file.
38961         * lib/file-type.c (file_type): New file/function.  Extracted from
38962         diffutils.
38963
38964 2002-04-30  Jim Meyering  <meyering@lucent.com>
38965
38966         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
38967
38968 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38969
38970         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
38971
38972 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38973
38974         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
38975         Do not check for alloca.h (no longer used) or stdbool.h (was never
38976         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
38977
38978 2002-04-29  Paul Eggert  <eggert@twinsun.com>
38979
38980         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
38981
38982 2002-04-29  Jim Meyering  <meyering@lucent.com>
38983
38984         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
38985         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
38986         Use AC_FUNC_STRNLEN here instead.
38987
38988         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
38989         With autoconf-2.53a, it's part of AC_PROG_CC.
38990
38991 2002-04-28  Paul Eggert  <eggert@twinsun.com>
38992
38993         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
38994         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
38995
38996 2002-04-28  Paul Eggert  <eggert@twinsun.com>
38997
38998         * lib/sig2str.h, lib/sig2str.c: New files.
38999         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
39000
39001 2002-04-28  Paul Eggert  <eggert@twinsun.com>
39002
39003         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
39004         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
39005         of 127, since 64 is the largest conceivable number for ancient
39006         nonstandard hosts.
39007         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
39008
39009 2002-04-28  Jim Meyering  <meyering@lucent.com>
39010
39011         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
39012
39013 2002-04-24  Jim Meyering  <meyering@lucent.com>
39014
39015         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
39016         (jm_PREREQ): Use it.
39017
39018         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
39019         mach/mach.h fcntl.h.
39020         Check for this function: setlocale.
39021
39022 2002-04-24  Jim Meyering  <meyering@lucent.com>
39023
39024         * lib/gettext.h: New file, from Gettext.
39025         * lib/Makefile.am (INCLUDES): Remove -I../intl.
39026         (libfetish_a_SOURCES): Add gettext.h.
39027
39028 2002-04-16  Jim Meyering  <meyering@lucent.com>
39029
39030         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
39031         ut_pid, ut_id, ut_exit.
39032
39033 2002-04-16  Jim Meyering  <meyering@lucent.com>
39034
39035         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
39036         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
39037         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
39038
39039 2002-04-12  Jim Meyering  <meyering@lucent.com>
39040
39041         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
39042         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
39043         existence of the getmntinfo function.  Needed for Darwin 5.3.
39044
39045         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
39046         This is necessary at least on Darwin 5.3.
39047
39048         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
39049         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
39050         strnlen.o in the library, and that makes some versions of ranlib
39051         object.
39052
39053 2002-04-12  Jim Meyering  <meyering@lucent.com>
39054
39055         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
39056
39057 2002-04-09  Jim Meyering  <meyering@lucent.com>
39058
39059         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
39060         to be more precise.  Rather than saying we're checking whether the
39061         function `works', say what we're testing.
39062         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
39063         Reported by Bruno Haible.
39064
39065 2002-03-10  Jim Meyering  <meyering@lucent.com>
39066
39067         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
39068         Suggestion from Santiago Vila.
39069
39070 2002-03-08  Jim Meyering  <meyering@lucent.com>
39071
39072         * lib/rename.c: Mention that this wrapper is needed also on
39073         mips-dec-ultrix4.4 systems.
39074
39075 2002-03-02  Jim Meyering  <meyering@lucent.com>
39076
39077         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
39078         not HAVE_CLOCK_SETTIME.
39079
39080 2002-02-27  Paul Eggert  <eggert@twinsun.com>
39081
39082         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
39083         Check for clock_settime.
39084
39085 2002-02-27  Paul Eggert  <eggert@twinsun.com>
39086
39087         * lib/nanosleep.h: Rename to....
39088         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
39089
39090         * lib/gettime.c: New file.
39091         * lib/settime.c: New file.
39092         * lib/stime.c: Remove.
39093
39094         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
39095         timespec.h.  Remove nanosleep.h.
39096
39097 2002-02-25  Paul Eggert  <eggert@twinsun.com>
39098
39099         * m4/acl.m4: New file.
39100         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
39101         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
39102
39103 2002-02-25  Paul Eggert  <eggert@twinsun.com>
39104
39105         * lib/acl.c, lib/acl.h: New files.
39106         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
39107
39108 2002-02-24  Jim Meyering  <meyering@lucent.com>
39109
39110         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
39111         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
39112         cause trouble.  Reported by Nelson Beebe.
39113
39114 2002-02-23  Paul Eggert  <eggert@twinsun.com>
39115
39116         * lib/path-concat.c (xpath_concat): Reorder code to pacify
39117         compilers that don't know that xalloc_die never returns.
39118
39119 2002-02-20  Jim Meyering  <meyering@lucent.com>
39120
39121         * lib/getdate.c: Regenerate using bison-1.33.
39122
39123 2002-02-17  Jim Meyering  <meyering@lucent.com>
39124
39125         * config/config.guess (main): Don't use `head -1'; it's no longer
39126         portable. Use `sed 1q' instead.
39127
39128 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
39129
39130         * m4/codeset.m4: Upgrade to gettext-0.11.
39131         * m4/gettext.m4: Upgrade to gettext-0.11.
39132         * m4/glibc21.m4: Upgrade to gettext-0.11.
39133         * m4/iconv.m4: Upgrade to gettext-0.11.
39134         * m4/isc-posix.m4: Upgrade to gettext-0.11.
39135         * m4/lcmessage.m4: Upgrade to gettext-0.11.
39136         * m4/lib-ld.m4: New file, from gettext-0.11.
39137         * m4/lib-link.m4: New file, from gettext-0.11.
39138         * m4/lib-prefix.m4: New file, from gettext-0.11.
39139         * m4/progtest.m4: Upgrade to gettext-0.11.
39140
39141 2002-02-15  Paul Eggert  <eggert@twinsun.com>
39142
39143         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
39144         (jm_PREREQ): Use it.
39145
39146 2002-02-15  Paul Eggert  <eggert@twinsun.com>
39147
39148         * lib/posixver.c, lib/posixver.h: New files.
39149         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
39150
39151 2002-02-02  Paul Eggert  <eggert@twinsun.com>
39152             Bruno Haible  <bruno@clisp.org>
39153
39154         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
39155         (fwrite_success_callback): New declaration.
39156         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
39157         print_unicode_char. Call failure callback instead of error.
39158         (fwrite_success_callback): New function.
39159         (exit_failure_callback): New function.
39160         (fallback_failure_callback): New function.
39161         (print_unicode_char): Call unicode_to_mb.
39162
39163 2002-01-26  Jim Meyering  <meyering@lucent.com>
39164
39165         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
39166         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
39167
39168 2002-01-26  Jim Meyering  <meyering@lucent.com>
39169
39170         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
39171
39172 2002-01-22  Paul Eggert  <eggert@twinsun.com>
39173
39174         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
39175
39176 2002-01-22  Jim Meyering  <meyering@lucent.com>
39177
39178         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
39179         Otherwise, some versions of automake would omit the rule that makes
39180         Makefile from Makefile.in.
39181
39182 2002-01-21  Paul Eggert  <eggert@twinsun.com>
39183
39184         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
39185         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
39186         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
39187         (memcoll): Set errno to zero if there is no error.
39188
39189         * lib/quotearg.c (quotearg_buffer_restyled):
39190         Fix bug with quoting buffers containing NUL when backslashing escapes.
39191         This bug was exposed by the other changes in this patch.
39192         (quotearg_n_options): New arg ARGSIZE.
39193         All callers changed.
39194         (quoting_options_from_style): New function.
39195         (quotearg_n_style): Use it.
39196         (quotearg_n_style_mem): New function.
39197
39198         * lib/quotearg.h (quotearg_n_style_mem): New function.
39199
39200 2002-01-19  Jim Meyering  <meyering@lucent.com>
39201
39202         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
39203         Remove useless quotes: DF_PROG="df".
39204         * m4/strnlen.m4: New file.
39205
39206 2002-01-16  Paul Eggert  <eggert@twinsun.com>
39207
39208         * lib/backupfile.c (ISDIGIT): Comment fix.
39209         * lib/getdate.y (ISDIGIT): Likewise.
39210         * lib/posixtm.c (ISDIGIT, year): Likewise.
39211         * lib/strverscmp.c (ISDIGIT): Likewise.
39212         * lib/userspec.c (ISDIGIT): Likewise.
39213
39214 2002-01-16  Jim Meyering  <meyering@lucent.com>
39215
39216         * lib/getdate.y: Add three semicolons, each just before a closing
39217         brace. Bison (as of version 1.31) no longer papers over that mistake.
39218
39219 2002-01-05  Jim Meyering  <meyering@lucent.com>
39220
39221         * lib/version-etc.c (version_etc_copyright): Update copyright year.
39222
39223 2001-12-19  Paul Eggert  <eggert@twinsun.com>
39224
39225         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
39226         not silently exit merely because the output buffer happens to
39227         have nothing pending.
39228
39229 2001-12-18  Paul Eggert  <eggert@twinsun.com>
39230
39231         See the big note in ../ChangeLog.
39232         * lib/human.c (suffixes): Prefer K to k for 1024.
39233         (generate_suffix_backwards): New function.
39234         (human_readable_inexact): Use it.
39235         * lib/xstrtol.c (__xstrtol): If there is no number but there
39236         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
39237         Accept 'K' as well as 'k'.
39238
39239 2001-12-15  Jim Meyering  <meyering@lucent.com>
39240
39241         * lib/regex.h (__restrict_arr): Update from libc.
39242
39243         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
39244         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
39245         (STREQ): Define.
39246
39247 2001-12-14  Jim Meyering  <meyering@lucent.com>
39248
39249         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
39250         Suggestion from Bruno Haible.
39251
39252 2001-12-10  Jim Meyering  <meyering@lucent.com>
39253
39254         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
39255         xrealloc, Instead, include "xalloc.h".
39256         (initbuffer): Don't cast xmalloc return value to char*.
39257         (readline): Reword comment.
39258         Don't cast xrealloc return value to char*
39259         Return NULL, not 0.
39260
39261 2001-12-09  Jim Meyering  <meyering@lucent.com>
39262
39263         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
39264         about `signed and unsigned type in conditional expression'.
39265         * lib/posixtm.c (posix_time_parse): Likewise.
39266
39267         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
39268
39269         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
39270         to avoid a pedantic warning.
39271
39272         * lib/getstr.c: Don't include assert.h.
39273         (getstr): Remove warning-evoking assertions.
39274         Return -1 if offset parameter is out of bounds.
39275         Change the type of a local from int to size_t.
39276
39277         * lib/strftime.c (my_strftime_localtime_r): Include this function
39278         definition in the `#if ! HAVE_TM_GMTOFF' block.
39279
39280         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
39281         Include xalloc.h instead.
39282
39283 2001-12-02  Jim Meyering  <meyering@lucent.com>
39284
39285         * lib/tempname.c: Don't declare getenv, thus reverting the change of
39286         2001-11-18.  It's no longer necessary, now that stdlib.h is always
39287         included.
39288
39289         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
39290         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
39291
39292 2001-11-30  Akim Demaille  <akim@epita.fr>
39293
39294         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
39295         before being defined.
39296
39297 2001-11-27  Paul Eggert  <eggert@twinsun.com>
39298
39299         * lib/quotearg.h (quotearg_n, quotearg_n_style):
39300         First arg is int, not unsigned.
39301         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
39302         (SIZE_MAX, UINT_MAX): New macros.
39303         (quotearg_n_options): Abort if N is negative.
39304         Avoid overflow check on hosts where size_t is 64 bits and int
39305         is 32 bits, as overflow is impossible there.
39306         Fix off-by-one typo that caused unnecessary reallocation.
39307
39308 2001-11-27  Jim Meyering  <meyering@lucent.com>
39309
39310         * lib/tempname.c: Merge with version from libc.
39311         * lib/regex.c: Likewise.
39312
39313         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
39314         systems for which STDC_HEADERS is 0, it was not included, resulting in
39315         a warning about an integer-to-pointer conversion problem with getenv.
39316         Reported by Volker Borchert.
39317
39318 2001-11-26  Jim Meyering  <meyering@lucent.com>
39319
39320         * lib/gtod.h: Remove file.
39321         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
39322         * lib/gettimeofday.c: Don't include gtod.h.
39323         (GTOD_init): Remove function.
39324         (rpl_gettimeofday): Do its job here instead, rather than aborting.
39325         Suggestion from Volker Borchert.
39326
39327 2001-11-23  Jim Meyering  <meyering@lucent.com>
39328
39329         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
39330         it.
39331         * lib/hash.c (struct hash_table): Define it here instead.
39332
39333 2001-11-22  Jim Meyering  <meyering@lucent.com>
39334
39335         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
39336
39337 2001-11-20  Jim Meyering  <meyering@lucent.com>
39338
39339         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
39340         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
39341
39342 2001-11-19  Jim Meyering  <meyering@lucent.com>
39343
39344         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
39345         directory.  Use "conftestXXXXXX" as the template.
39346         Suggestion from Paul Eggert.
39347
39348         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
39349         immediately, so the test doesn't mistakenly hit the max-open-files
39350         limit.
39351
39352 2001-11-18  Paul Eggert  <eggert@twinsun.com>
39353
39354         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
39355         (TEMPORARIES): New macro.
39356         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
39357         removes an artificial limitation (e.g. HP-UX 10.20, where
39358         TMP_MAX is 17576).
39359
39360 2001-11-18  Jim Meyering  <meyering@lucent.com>
39361
39362         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
39363
39364 2001-11-18  Jim Meyering  <meyering@lucent.com>
39365
39366         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
39367         on SunOS 4.
39368
39369         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
39370         files will be created before anything else.
39371
39372 2001-11-17  Paul Eggert  <eggert@twinsun.com>
39373
39374         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
39375         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
39376
39377 2001-11-17  Jim Meyering  <meyering@lucent.com>
39378
39379         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
39380         Prompted by a report from Bob Proulx.
39381
39382         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
39383         Instead, require UTILS_FUNC_MKSTEMP.
39384
39385 2001-11-17  Jim Meyering  <meyering@lucent.com>
39386
39387         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
39388         Now, that's done as part of AC_FUNC_STRTOD.
39389
39390 2001-11-17  Jim Meyering  <meyering@lucent.com>
39391
39392         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
39393         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
39394         rather than group writable.  Patch by Juan F. Codagnone.
39395
39396         * lib/readtokens.c: Remove explicit declarations of xmalloc and
39397         xrealloc, Instead, include "xalloc.h".
39398
39399         * lib/mountlist.c: Include unlocked-io.h after all system headers.
39400         Remove explicit declarations of xmalloc, xrealloc,
39401         and xstrdup.  Instead, include "xalloc.h".
39402
39403         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
39404         unlocked-io.h.
39405         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
39406         Likewise.
39407         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
39408
39409         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
39410         Reported by Padraig Brady.
39411
39412         * lib/mkstemp.c: #undef mkstemp.
39413         Include config.h.
39414         (rpl_mkstemp): Rename from mkstemp.
39415         Protoize.
39416
39417 2001-11-16  Jim Meyering  <meyering@lucent.com>
39418
39419         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
39420         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
39421         determine the amount of total physical memory, use pstat_getstatic.
39422         HPUX-11 doesn't define _SC_PHYS_PAGES.
39423         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
39424         If sysconf couldn't be used to determine the amount of available
39425         physical memory, use both pstat_getstatic and pstat_getdynamic.
39426         Based on a patch from Bob Proulx.
39427
39428 2001-11-10  Jim Meyering  <meyering@lucent.com>
39429
39430         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
39431         (jm_PREREQ): Use it.
39432
39433 2001-11-09  Jim Meyering  <meyering@lucent.com>
39434
39435         * m4/jm-macros.m4: Require autoconf-2.52f.
39436         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
39437         Use these AC_-prefixed names, not the AM_-prefixed ones.
39438
39439         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
39440
39441 2001-11-05  Jim Meyering  <meyering@lucent.com>
39442
39443         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
39444
39445 2001-11-04  Jim Meyering  <meyering@lucent.com>
39446
39447         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
39448         $DEFS.
39449
39450 2001-11-03  Jim Meyering  <meyering@lucent.com>
39451
39452         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
39453         of AC_DEFUN.
39454
39455         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
39456         know the name of the variable in the macro definition.
39457
39458 2001-11-03  Jim Meyering  <meyering@lucent.com>
39459
39460         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
39461         in argmatch_to_argument call.
39462
39463         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
39464         argument.
39465
39466         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
39467         e.g., a fault due to an attempt to free a NULL pointer.
39468
39469 2001-11-01  Jim Meyering  <meyering@lucent.com>
39470
39471         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
39472         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
39473
39474 2001-11-01  Jim Meyering  <meyering@lucent.com>
39475
39476         * lib/dirfd.c, lib/dirfd.h: New files.
39477         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
39478
39479         * lib/hash.c (hash_print) [TESTING]: Clean up.
39480
39481 2001-10-22  Paul Eggert  <eggert@twinsun.com>
39482
39483         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
39484         to avoid a warning if -Wall.
39485
39486 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
39487
39488         * README: New file
39489         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
39490         (per RMS's instructions, this is now the canonical source)
39491         * lgpl/, gpl/: New directories.
39492
39493 2001-10-21  Paul Eggert  <eggert@twinsun.com>
39494
39495         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
39496
39497 2001-10-21  Jim Meyering  <meyering@lucent.com>
39498
39499         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
39500         this code would end up calling gettext even in packages built
39501         with --disable-nls.
39502         * lib/getopt.c (_): Likewise.
39503         * lib/regex.c (_): Likewise.
39504
39505 2001-10-20  Paul Eggert  <eggert@twinsun.com>
39506
39507         * m4/error.m4 (jm_PREREQ_ERROR):
39508         Do not invoke AC_CHECK_FUNCS with strerror_r, as
39509         AC_FUNC_STRERROR_R does that.
39510         Check for strerror declaration.
39511
39512         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
39513         are supposed to have them these days.
39514         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
39515         Merge changes from latest Autoconf CVS.
39516         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
39517         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
39518         POSIX decided to standardize on the int flavor of strerror_r.
39519
39520 2001-10-20  Paul Eggert  <eggert@twinsun.com>
39521
39522         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
39523         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
39524         Use strerror_r that is only a macro, even if it is not a function.
39525         (strerror): Check for HAVE_DECL_STRERROR before declaring.
39526         (private_strerror): Use prototypes, not old-style function definition.
39527         (print_errno_message): New function.
39528         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
39529         char*-flavored one.
39530         (error_tail, error, error_at_line): Use it.
39531
39532 2001-10-11  Jim Meyering  <meyering@lucent.com>
39533
39534         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
39535         and quote_n (1, ... to avoid clobbering a buffer.
39536
39537 2001-10-05  Jim Meyering  <meyering@lucent.com>
39538
39539         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
39540         hash-pjw.h.
39541         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
39542         * lib/hash-pjw.h: New file.
39543
39544 2001-09-30  Jim Meyering  <meyering@lucent.com>
39545
39546         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
39547         `struct fsstat' has the `f_fstypename' member.
39548         Use that to define FS_TYPE, which is now used to make
39549         the getfsstat link test tighter.
39550
39551 2001-09-30  Jim Meyering  <meyering@lucent.com>
39552
39553         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
39554         Include <sys/ucred.h>, for Apple Darwin.
39555         Include sys/mount.h and sys/fs_types.h only if available.
39556         (FS_TYPE): Define.
39557         (read_filesystem_list): Use FS_TYPE.
39558
39559 2001-09-29  Paul Eggert  <eggert@twinsun.com>
39560
39561         * lib/exclude.c (excluded_filename): 0 -> false, since it's
39562         a boolean context.
39563
39564 2001-09-29  Jim Meyering  <meyering@lucent.com>
39565
39566         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
39567         [one-argument getmntent function]): Include stdio.h before mntent.h.
39568         SunOS 4.1.x needs it for the declaration of `FILE'.
39569         Patch by Volker Borchert.
39570
39571         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
39572         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
39573         sys/fs_types.h, and make the link-test for getfsstat guard #include
39574         directives with appropriate #if HAVE_*_H tests so that we can
39575         detect getfsstat on Apple Darwin1.3.7 systems.
39576         Reported by Nelson Beebe.
39577         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
39578
39579 2001-09-28  Paul Eggert  <eggert@twinsun.com>
39580
39581         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
39582         #defines strtoimax.  Also treat the other strto* functions
39583         like strtoimax.
39584
39585         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
39586         Check for strtoul and strtoumax,
39587         as those declarations are made even in the signed case.
39588         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
39589         Likewise, for strtol and strtoimax.
39590
39591 2001-09-28  Paul Eggert  <eggert@twinsun.com>
39592
39593         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
39594         #defines strtoimax.  Also treat the other strto* functions
39595         like strtoimax.
39596
39597         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
39598         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
39599         (strtoimax, strtoumax): Do not declare if already defined as a macro.
39600
39601 2001-09-26  Jim Meyering  <meyering@lucent.com>
39602
39603         Most macros in unlocked-io.h had the wrong number of arguments.
39604         * lib/gen-uio: New script.
39605         (USE_UNLOCKED_IO): Define to 1 if not already defined.
39606         * lib/unlocked-io.hin: Remove file.
39607         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
39608         rather than trying to embed it here.
39609         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
39610         Reported by Padraig Brady.
39611
39612 2001-09-25  Volker Borchert  <bt@teknon.de>
39613
39614         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
39615         `result'.
39616
39617 2001-09-24  Jim Meyering  <meyering@lucent.com>
39618
39619         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
39620
39621 2001-09-23  Jim Meyering  <meyering@lucent.com>
39622
39623         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
39624         instead of the mere test for existence of mntent.h.  The latter
39625         would get a false-positive on AIX 3.4 systems.
39626         In the outer getmntent if-block, don't die if neither of the getmntent
39627         tests succeeds.  Instead, just fall through and continue with the
39628         remaining tests.
39629
39630 2001-09-23  Jim Meyering  <meyering@lucent.com>
39631
39632         * lib/mountlist.c: Remove useless parentheses in #if directives.
39633         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
39634         the deprecated MOUNTED symbol is no longer defined in mntent.h.
39635
39636 2001-09-22  Jim Meyering  <meyering@lucent.com>
39637
39638         * m4/gettext.m4: New file.  From gettext.
39639         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
39640         * m4/progtest.m4: Likewise
39641         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
39642         * m4/glibc21.m4: Likewise.
39643
39644         * m4/libintl.m4: Remove.  No longer used.
39645
39646 2001-09-22  Jim Meyering  <meyering@lucent.com>
39647
39648         * lib/localcharset.c: Update from latest gettext.
39649         * lib/config.charset: Likewise.
39650
39651 2001-09-20  Jim Meyering  <meyering@lucent.com>
39652
39653         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
39654         strtoimax.
39655         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
39656         strtoumax.
39657
39658 2001-09-20  Jim Meyering  <meyering@lucent.com>
39659
39660         * lib/xstrtol.c (strtoimax): Guard declaration with
39661         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
39662         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
39663         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
39664         (strtoumax): Likewise, for completeness (it wasn't necessary).
39665
39666 2001-09-17  Paul Eggert  <eggert@twinsun.com>
39667
39668         * lib/strtoimax.c (HAVE_LONG_LONG):
39669         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
39670         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
39671         to work around bug in IBM C compiler.
39672
39673 2001-09-17  Jim Meyering  <meyering@lucent.com>
39674
39675         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
39676         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
39677         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
39678         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
39679         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
39680         whenever the right hand side need not be expanded by the shell.
39681
39682 2001-09-16  Paul Eggert  <eggert@twinsun.com>
39683
39684         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
39685         library.  It's not correct, as some older glibcs are buggy.
39686         fnmatch wasn't fixed until glibc 2.2.
39687
39688         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
39689         special shell magic here.
39690
39691 2001-09-16  Jim Meyering  <meyering@lucent.com>
39692
39693         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
39694         * m4/jm-macros.m4: Require it.
39695
39696 2001-09-16  Jim Meyering  <meyering@lucent.com>
39697
39698         * lib/mkdir.c: New file.
39699
39700 2001-09-15  Jim Meyering  <meyering@lucent.com>
39701
39702         * m4/jm-macros.m4: Check for help2man.
39703
39704 2001-09-11  Jim Meyering  <meyering@lucent.com>
39705
39706         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
39707         The body, by Paul Eggert, was moved here from configure.in.
39708         * m4/jm-macros.m4: Require UTILS_HOST_OS.
39709
39710 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39711
39712         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
39713         (jm_PREREQ): Use it.
39714
39715 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39716
39717         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
39718         Use ssize_t, not int, to store result of readlink.
39719         Check for ssize_t overflow as well as size_t overflow,
39720         as POSIX says the result of readlink is implementation-defined
39721         when ssize_t overflows.
39722         Remove unnecessary cast to char*.
39723         Use free+malloc instead of realloc, as the storage doesn't need
39724         to be preserved and it's clearer and can be more efficient that way.
39725         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
39726         * lib/xreadlink.h (xreadlink): Update prototype.
39727
39728 2001-09-04  Paul Eggert  <eggert@twinsun.com>
39729
39730         * lib/xgetcwd.c: Revert some of the previous change; intead,
39731         fix the HAVE_GETCWD_NULL code to behave more like the
39732         !HAVE_GETCWD_NULL code used to.
39733
39734         Include "xalloc.h".
39735         (xgetcwd): Do not return NULL when memory is exhausted; instead,
39736         invoke xalloc_die.
39737
39738 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39739
39740         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
39741         sys/param.h, as pathmax.h includes them.
39742
39743 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39744
39745         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
39746         (jm_PREREQ_XGETCWD): New macro.
39747
39748         * m4/getcwd.m4: New file.
39749
39750 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39751
39752         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
39753         like the HAVE_GETCWD_NULL code.
39754         Include pathmax.h if not HAVE_GETCWD.
39755         Do not include xalloc.h.
39756         (INITIAL_BUFFER_SIZE): New symbol.
39757         Do not use xmalloc / xrealloc, since the caller is responsible for
39758         handling errors.  Preserve errno around `free' during failure.
39759         Do not overrun buffer when using getwd.
39760
39761 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39762
39763         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
39764         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
39765         getcwd (NULL, 0).
39766
39767 2001-09-03  Paul Eggert  <eggert@twinsun.com>
39768
39769         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
39770         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
39771         spotted by Jim Meyering.
39772
39773 2001-09-03  Jim Meyering  <meyering@lucent.com>
39774
39775         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
39776         failure.
39777
39778 2001-09-02  Jim Meyering  <meyering@lucent.com>
39779
39780         * lib/error.c: Update from GNU libc.
39781
39782 2001-09-01  Jim Meyering  <meyering@lucent.com>
39783
39784         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
39785         Used by df.
39786
39787 2001-09-01  Jim Meyering  <meyering@lucent.com>
39788
39789         * lib/xreadlink.c: New file.
39790         * lib/xreadlink.h: New file.
39791         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
39792         xreadlink.h.
39793
39794         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
39795         doesn't conflict with sparc Solaris 7's definition in
39796         /usr/include/sys/int_types.h.
39797
39798         * lib/exclude.c: Use `""', not `<>' to #include non-system header
39799         files.
39800         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
39801         and strncasecmp as r-values.  Unixware didn't have declarations.
39802
39803 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39804
39805         * lib/xstrtol.h: Add copyright notice.
39806         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
39807         LONGINT_INVALID_SUFFIX_CHAR.
39808
39809 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39810
39811         * lib/xstrtol.c (strtoimax): New decl.
39812
39813 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39814
39815         * lib/xgetcwd.c: Don't include pathmax.h.
39816         Include stdlib.h and unistd.h if available.
39817         Include xalloc.h.
39818         (xmalloc, xstrdup, free): Remove decls.
39819         (xgetcwd): Don't assume sizes fit in unsigned.
39820         Check for overflow when computing sizes.
39821         Simplify reallocation code.
39822
39823 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39824
39825         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
39826         a directory's st_size can have an arbitrary value, so the old
39827         usage could waste an arbitrary amount of memory.  All uses
39828         changed.
39829         * lib/savedir.h: Update prototype.
39830
39831 2001-08-31  Paul Eggert  <eggert@twinsun.com>
39832
39833         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
39834
39835         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
39836         old strtoimax.c.
39837
39838         Also, make the following further changes to make this file's
39839         configuration more similar to that of strtol.c:
39840         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
39841         (strtoumax, uintmax_t, strtoull, strtol): Remove.
39842         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
39843         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
39844         changed to signed values.
39845
39846         And make the following changes as well:
39847         Fix copyright notice, as 1999 was missing.
39848         (verify): New macro.
39849         (strtoimax): Check sizes at compile-time, not run-time.
39850         Prefer strtol to strtoll if both work.
39851         (main): Remove; it was not that useful and was a pain to maintain.
39852
39853         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
39854
39855 2001-08-31  Jim Meyering  <meyering@lucent.com>
39856
39857         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
39858         Use an initial, malloc'd, buffer of length 128 rather than
39859         a statically allocated one of length 1024.
39860
39861 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39862
39863         Simplify code, partly by assuming autoconf 2.52 semantics.
39864
39865         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
39866
39867         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
39868         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
39869         All uses removed.
39870         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
39871         Move AC_REQUIRE to next-to-top level, to avoid confusion.
39872         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
39873         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
39874         jm_AC_HEADER_INTTYPES_H.
39875         * m4/jm-macros.m4 (jm_MACROS): Likewise.
39876
39877         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
39878
39879         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
39880         Quote first arg of AC_DEFUN.
39881         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
39882         since they are needed to parse the include file even if we need
39883         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
39884         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
39885         but with opposite signedness.
39886
39887 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39888
39889         Merge 'exclude' changes from tar 1.13.22.
39890         This fixes one or two unlikely storage allocation overflow bugs,
39891         but doesn't change user-visible behavior otherwise.
39892
39893 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39894
39895         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
39896         (jm_PREREQ_EXCLUDE): New macro.
39897
39898 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39899
39900         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
39901         tm to be declared.
39902
39903 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39904
39905         * lib/hash.c: Remove '2001' from copyright notice.
39906
39907 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39908
39909         * lib/full-write.h: New file.
39910         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
39911         * lib/full-write.c: Correct credits, as cccp.c no longer
39912         exists and anyway it was so heavily changed from the old cccp
39913         code as to be unrecognizable.  Include full-write.h.
39914         (full_write) Return size_t, with short writes meaning failure.
39915         All callers changed.  This fixes a bug with large buffers
39916         on 64-bit hosts.
39917         * lib/utime.c: Include full-write.h.
39918
39919 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39920
39921         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
39922         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
39923         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
39924         Include if available.
39925         (<xalloc.h>): Include
39926         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
39927         (verify): New macro.  Use it to verify that EXCLUDE macros do not
39928         collide with FNM macros.
39929         (struct patopts): New struct.
39930         (struct exclude): Use it, as exclude patterns now come with options.
39931         (new_exclude): Support above changes.
39932         (new_exclude, add_exclude_file):
39933         Initial size must now be a power of two to simplify overflow checking.
39934         (free_exclude, fnmatch_no_wildcards): New function.
39935         (excluded_filename): No longer requires options arg, as the options
39936         are determined by add_exclude.  Now returns bool, not int.
39937         (excluded_filename, add_exclude):
39938         Add support for the fancy new exclusion options.
39939         (add_exclude, add_exclude_file): Now takes int options arg.
39940         Check for arithmetic overflow when computing sizes.
39941         (add_exclude_file): xrealloc might modify errno, so don't
39942         realloc until after errno might be used.
39943
39944         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
39945         New macros.
39946         (free_exclude): New decl.
39947         (add_exclude, add_exclude_file): Now takes int options arg.
39948         (excluded_filename): No longer requires options arg, as the options
39949         are determined by add_exclude.  Now returns bool, not int.
39950
39951 2001-08-30  Paul Eggert  <eggert@twinsun.com>
39952
39953         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
39954
39955 2001-08-27  Jim Meyering  <meyering@lucent.com>
39956
39957         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
39958
39959         * lib/version-etc.c (N_): Remove definition.
39960         Revert most of last change.
39961         Instead, simply don't mark the `Copyright...' string for translation.
39962         Based on advice from Paul Eggert.
39963
39964         * lib/strtoxmax.c: Tweak comment.
39965
39966 2001-08-26  Jim Meyering  <meyering@lucent.com>
39967
39968         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
39969
39970         * m4/xstrtoimax.m4: New file.
39971         * m4/xstrtoumax.m4: Add comments explaining why we
39972         AC_REPLACE_FUNCS(strtol).
39973
39974 2001-08-26  Jim Meyering  <meyering@lucent.com>
39975
39976         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
39977         of copyright with `%s' so translators don't get an untranslated
39978         message in 2002.
39979         (COPYRIGHT_YEAR): Define.
39980         (version_etc): Use fprintf rather than fputs.
39981         Suggestion from Ulrich Drepper.
39982
39983         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
39984
39985         * lib/strtoll.c: New file, from GNU libc.
39986         * lib/xstrtoimax.c: New file.
39987
39988         * lib/xstrtol.h: Add xstrtoimax.
39989         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
39990         * lib/strtoimax.c: New file.  Likewise, but first define
39991         STRTOUXMAX_SIGNED.
39992
39993         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
39994         ...
39995         * lib/strtoxmax.c: ... then renamed to this.
39996
39997 2001-08-18  Paul Eggert  <eggert@twinsun.com>
39998
39999         * m4/inttypes.m4: Add AC_PREREQ(2.13).
40000         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
40001         (jm_AC_TYPE_INTMAX_T): New macro.
40002         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
40003
40004         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
40005
40006         * m4/longlong.m4: Renamed from ulonglong.m4.
40007         * m4/inttypes.m4: Renamed from inttypes_h.m4.
40008         * m4/uintmax_t.m4: Removed.
40009
40010 2001-08-13  Paul Eggert  <eggert@twinsun.com>
40011
40012         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
40013         Port to Solaris 8, where 'sed' requires a space after the 'r'
40014         command, and where sh dislikes "$/".  Clean up the spacing a bit.
40015         Redirect output to $tmp just once.
40016
40017 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
40018
40019         * lib/addext.c (<errno.h>): Include.
40020         (errno): Declare if not defined.
40021         (addext): Work correctly when pathconf returns -1 and leaves
40022         errno alone because there is no limit.  Also, work even if
40023         pathconf returns a value greater than SIZE_MAX.
40024
40025 2001-08-12  Jim Meyering  <meyering@lucent.com>
40026
40027         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
40028         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
40029         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
40030         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
40031         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
40032         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
40033         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
40034         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
40035         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
40036         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
40037         utime.m4, utimes.m4, xstrtoumax.m4:
40038         Quote the first argument in each use of AC_DEFUN.
40039
40040 2001-08-12  Jim Meyering  <meyering@lucent.com>
40041
40042         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
40043         Simply `return getcwd (NULL, 0);'.
40044         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
40045         Use 1300 as initial value for length, not PATH_MAX.
40046
40047         * lib/pathmax.h: Clean up cpp syntax.
40048
40049 2001-08-12  Jim Meyering  <meyering@lucent.com>
40050
40051         * lib/gettimeofday.c: New file.
40052         * lib/gtod.h: New file.
40053         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
40054
40055 2001-08-05  Jim Meyering  <meyering@lucent.com>
40056
40057         * m4/jm-macros.m4: Require autoconf-2.52.
40058
40059 2001-08-04  Jim Meyering  <meyering@lucent.com>
40060
40061         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
40062         stmt, to get in sync with glibc.
40063
40064 2001-08-03  Paul Eggert  <eggert@twinsun.com>
40065
40066         The following changes are from gettext 0.10.39 as maintained by
40067         Bruno Haible.
40068
40069         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
40070         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
40071         with inverted sense.  All uses changed.
40072
40073         * lib/mbswidth.c: Don't include <limits.h>.
40074         Include <stdlib.h> and <string.h> unconditionally.
40075         (iswcntrl, mbsinit, ISCNTRL): New macros.
40076         (mbsnwidth): Use K&R style function declarations.
40077         Don't bother checking for MB_LEN_MAX == 1, since the compiler
40078         can optimize it when MB_CUR_MAX == 1.
40079         The width of control characters is zero, not 1.
40080
40081 2001-08-03  Paul Eggert  <eggert@twinsun.com>
40082
40083         The following changes are from gettext 0.10.39 as maintained by
40084         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
40085
40086         * m4/codeset.m4: Upgrade to serial AM1.
40087         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
40088         all uses changed.  Quote first arg of AC_DEFUN.
40089         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
40090
40091         * m4/iconv.m4: Upgrade to serial AM2.
40092         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
40093         Add --with-libconv-prefix.
40094         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
40095         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
40096         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
40097         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
40098         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
40099
40100         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
40101         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
40102         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
40103         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
40104         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
40105         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
40106         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
40107         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
40108         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
40109
40110         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
40111         string.h any more.
40112
40113         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
40114         not the default value.
40115
40116         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
40117         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
40118         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
40119         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
40120         Also check for iswcntrl, used for wcwidth fallback.
40121         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
40122         to Autoconf 2.13.
40123
40124 2001-08-03  Jim Meyering  <meyering@lucent.com>
40125
40126         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
40127         as it was in the original.  Reported by Paul Eggert.
40128
40129 2001-07-16  Jim Meyering  <meyering@lucent.com>
40130
40131         * m4/gettimeofday.m4: New file.
40132         Prompted by a report from Bernhard Baehr.
40133
40134 2001-07-15  Jim Meyering  <meyering@lucent.com>
40135
40136         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
40137         stuff. Now it's in ../Makefile.cfg.
40138
40139 2001-07-15  Jim Meyering  <meyering@lucent.com>
40140
40141         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
40142         (BUILT_SOURCES): Add unlocked-io.h.
40143         (io_functions): Define.
40144         (unlocked-io.h): New rule.
40145         (DISTCLEANFILES): Add unlocked-io.h.
40146         (all-local): Depend on unlocked-io.h, to ensure it is created.
40147
40148         * lib/unlocked-io.hin: New file
40149
40150         * lib/regex.c: Update from glibc.
40151
40152 2001-07-05  Jim Meyering  <meyering@lucent.com>
40153
40154         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
40155         recommendation.
40156         (libfetish_a_SOURCES): Put all .h files here instead.
40157         Remove a thus-exposed (better checks in automake) duplicate and
40158         two unnecessary .h files.
40159
40160 2001-07-04  Jim Meyering  <meyering@lucent.com>
40161
40162         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
40163         that generates jm-glibc-io.m4 so that it doesn't trigger any make
40164         distcheck failure.
40165
40166 2001-07-02  Jim Meyering  <meyering@lucent.com>
40167
40168         The following changes were prompted by suggestions from Bruno Haible.
40169
40170         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
40171         is now generated.
40172         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
40173         definition of EXTRA_DIST.
40174         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
40175         ensure that the generated file is created/updated whenever the list
40176         of $(unlocked_functions) is changed.
40177         (jm-glibc-io.m4): New rule.
40178         (unlocked-io.h): New rule -- currently unused.
40179
40180 2001-06-24  Jim Meyering  <meyering@lucent.com>
40181
40182         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
40183         unmatched right bracket, rather than kludging it with an extra,
40184         falsely-matching quote in a comment.  Patch by Akim Demaille.
40185
40186 2001-06-11  Jim Meyering  <meyering@lucent.com>
40187
40188         * lib/regex.c: Update from GNU libc.
40189
40190 2001-05-27  Jim Meyering  <meyering@lucent.com>
40191
40192         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
40193         Check for ut_type in struct utmp.
40194
40195 2001-05-27  Jim Meyering  <meyering@lucent.com>
40196
40197         * lib/readutmp.h (UT_TYPE): Define.
40198
40199 2001-05-24  Jim Meyering  <meyering@lucent.com>
40200
40201         * lib/argmatch.c: Include "quote.h".
40202         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
40203         quote function.  Reported by Göran Uddeborg.
40204
40205 2001-05-22  Jim Meyering  <meyering@lucent.com>
40206
40207         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
40208         now that we use the package-supplied version unconditionally.
40209         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
40210
40211 2001-05-21  Jim Meyering  <meyering@lucent.com>
40212
40213         * m4/regex.m4: Change a couple backticks to single quotes to avoid
40214         shell syntax errors.
40215
40216 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
40217
40218         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
40219
40220 2001-05-20  Paul Eggert  <eggert@twinsun.com>
40221
40222         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
40223         Don't bother to check library strftime, since
40224         we'll be using our own my_strftime function anyway.
40225         Define my_strftime instead of strftime.
40226
40227 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
40228
40229         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
40230         which is not yet declared.
40231
40232 2001-05-15  Jim Meyering  <meyering@lucent.com>
40233
40234         * m4/regex.m4: Use proper quoting so brackets appear in the test
40235         program.
40236         Reported by, and with help from, Bruno Haible.
40237
40238 2001-05-13  Jim Meyering  <meyering@lucent.com>
40239
40240         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
40241         undefined.
40242
40243 2001-05-11  Paul Eggert  <eggert@twinsun.com>
40244
40245         dirname code cleanup.  base_name now behaves more compatibly
40246         with POSIX basename when given file names that have trailing
40247         slashes, and similarly for dir_name.  Add new primitives
40248         base_len and dir_len.  Put the directory-name-related decls
40249         into dirname.h.
40250
40251         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
40252         * lib/backupfile.c (base_name): Likewise.
40253         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
40254         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
40255         * lib/makepath.c (strip_trailing_slashes): Likewise.
40256         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
40257         ISSLASH): Likewise.
40258         * lib/rename.c (strip_trailing_slashes): Likewise.
40259         * lib/same.c (base_name): Likewise.
40260         * lib/stripslash.c (ISSLASH): Likewise.
40261
40262         * lib/addext.c: Include <dirname.h> after size_t is defined.
40263         * lib/backupfile.c: Likewise.
40264
40265         * lib/addext.c (addext): Use base_len to trim redundant
40266         trailing slashes instead of doing it ourselves.
40267         But do not trim the last slash if it is not redundant.
40268
40269         * lib/backupfile.c (find_backup_file_name,
40270         max_backup_version): Use base_len instead of rolling it ourselves.
40271         Handle the case of "" and (on DOS) "C:" correctly.
40272
40273         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
40274         needed. Include <string.h>, <dirname.h>.
40275         (base_name): Allow file names ending in slashes, other than names
40276         that are all slashes.  In this case, return the basename followed
40277         by the slashes.  This is more general, and can be used in places
40278         where the original base_name purposely had an assertion failure.
40279         (base_len): New function.
40280
40281         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
40282         Do not include <assert.h>; no longer needed.
40283         Include xalloc.h.
40284         (memrchr): Remove decl.
40285         (dir_name_r): Remove.
40286         (dir_len): Renamed from dirlen.  All callers changed.
40287         Rewrite in terms of base_name, for simplicity and consistency.
40288         (dir_name): Never return NULL.  All callers changed.
40289         Do not include <stdlib.h> in test program; no longer needed.
40290         return 0; is fine for test program.
40291
40292         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
40293         New macros.
40294         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
40295
40296         * lib/path-concat.c (path_concat): Use base_len to compute
40297         base length, not strlen; this means we cannot rely on memcpy
40298         to null-terminate.
40299
40300         * lib/same.c (STREQ): Remove.
40301         (same_name): Handle the case where the basename ends in trailing '/'.
40302
40303         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
40304         a slash was stripped.  Do not strip the last slash after a
40305         file system prefix.
40306
40307 2001-05-11  Paul Eggert  <eggert@twinsun.com>
40308
40309         * lib/Makefile.am (libfetish_a_SOURCES):
40310         Add strftime.c, since we now compile it on all hosts.
40311
40312         * lib/strftime.c (my_strftime):
40313         Define to nstrftime if emacs, but only if my_strftime is not defined.
40314         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
40315         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
40316         Add one more extra argument: a nanoseconds value.
40317         All uses changed.
40318         (ns): New macro.
40319         (my_strftime function): Add %N format.
40320         (emacs_strftimeu): Renamed from emacs_strftime,
40321         with extra ut argument.
40322
40323 2001-05-09  Paul Eggert  <eggert@twinsun.com>
40324
40325         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
40326
40327 2001-04-21  Jim Meyering  <meyering@lucent.com>
40328
40329         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
40330         doesn't interfere.
40331
40332 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
40333
40334         * m4/ftruncate.m4: Check for chsize.
40335         Link with ftruncate.o unconditionally if ftruncate is missing.
40336         This was required when cross-compiling to i586-mingw32msvc.
40337
40338 2001-04-08  Jim Meyering  <meyering@lucent.com>
40339
40340         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
40341         recomputed; that's necessary when the offset spans a DST transition.
40342         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
40343
40344 2001-04-02  Jim Meyering  <meyering@lucent.com>
40345
40346         * lib/regex.h, regex.c: Update from GNU libc.
40347
40348 2001-03-24  Jim Meyering  <meyering@lucent.com>
40349
40350         * m4/jm-macros.m4: Require autoconf-2.49d.
40351
40352 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
40353
40354         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
40355
40356 2001-03-19  Paul Eggert  <eggert@twinsun.com>
40357
40358         * lib/version-etc.c (version_etc_copyright): Update to 2001.
40359
40360 2001-03-17  Jim Meyering  <meyering@lucent.com>
40361
40362         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
40363         now that the version in autoconf is equivalent.
40364         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
40365
40366         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
40367         Suggestion from Akim Demaille.
40368
40369         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
40370         (jm_PREREQ_TEMPNAME): New function.
40371
40372 2001-03-16  Paul Eggert  <eggert@twinsun.com>
40373
40374         * lib/tempname.c (uint64_t): Define to uintmax_t if
40375         not defined, and if UINT64_MAX is not defined.
40376         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
40377         Reported by John David Anglin.
40378
40379 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
40380
40381         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
40382         resolve alias if codeset is empty.
40383         * lib/config.charset (BeOS): Use wildcard syntax.
40384
40385 2001-03-13  Jim Meyering  <meyering@lucent.com>
40386
40387         * lib/path-concat.c (path_concat)
40388         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
40389         concatenating e.g., `C:' and `foo'.
40390         From Bruno Haible.
40391
40392 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
40393
40394         * lib/localcharset.c (locale_charset): Don't use
40395         setlocale(LC_CTYPE,NULL). Don't return NULL.
40396         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
40397
40398 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
40399
40400         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
40401         support for DOS/DJGPP.
40402
40403 2001-03-01  Paul Eggert  <eggert@twinsun.com>
40404
40405         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
40406         lacks mkstemp.  Compile our own tempname.c if we compile our own
40407         mkstemp.c, as mkstemp relies on tempname.
40408
40409 2001-03-01  Jim Meyering  <meyering@lucent.com>
40410
40411         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
40412         AH_VERBATIM really does output its argument verbatim.
40413
40414 2001-02-28  Paul Eggert  <eggert@twinsun.com>
40415
40416         * lib/Makefile.am (libfetish_a_SOURCES):
40417         Add dup-safer.c, fopen-safer.c.
40418         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
40419
40420         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
40421         * lib/unistd-safer.h: New files.
40422
40423 2001-02-25  Paul Eggert  <eggert@twinsun.com>
40424
40425         The mkstemp replacement is taken from glibc 2.2.2, with some
40426         portability fixes for use outside glibc, as follows:
40427
40428         * lib/tempname.c (struct_stat64): New macro.
40429         (direxists, __gen_tempname): Use it.
40430         This avoids a portability problem with Solaris 8.
40431
40432         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
40433         (<stddef.h>, <stdint.h>, <string.h>):
40434         Include only if STDC_HEADERS || _LIBC.
40435         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
40436         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
40437         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
40438         (__set_errno): Define this macro if <errno.h> doesn't.
40439         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
40440         Define these macros if <stdio.h> doesn't.
40441         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
40442         Define these macros if <sys/stat.h>
40443         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
40444         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
40445         __xstat64): Define if not _LIBC.
40446         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
40447         (__gen_tempname): Invoke gettimeofday only if
40448         HAVE_GETTIMEOFDAY || _LIBC;
40449         otherwise, fall back on plain "time".
40450         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
40451
40452         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
40453
40454         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
40455
40456 2001-02-18  Paul Eggert  <eggert@twinsun.com>
40457
40458         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
40459
40460 2001-02-17  Paul Eggert  <eggert@twinsun.com>
40461
40462         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
40463         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
40464         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
40465         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
40466
40467 2001-02-17  Paul Eggert  <eggert@twinsun.com>
40468
40469         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
40470         Remove workaround macros for hosts that have mbrtowc but not
40471         mbstate_t, as we now insist on proper declarations for both
40472         before using mbrtowc.
40473
40474 2001-02-17  Jim Meyering  <meyering@lucent.com>
40475
40476         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
40477         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
40478         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
40479         UnixWare 7.1.1.
40480
40481         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
40482         rather than AC_CACHE_VAL.
40483
40484 2001-02-17  Jim Meyering  <meyering@lucent.com>
40485
40486         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
40487         around included file name.
40488
40489         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
40490
40491         * lib/strftime.c: Update from GNU libc (the only changes were to
40492         comments).
40493
40494 2001-02-17  Jim Meyering  <meyering@lucent.com>
40495
40496         * lib/regex.c: Update from libc.
40497
40498 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
40499
40500         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
40501         clash.
40502
40503 2001-02-16  Paul Eggert  <eggert@twinsun.com>
40504
40505         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
40506         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
40507         Reported by Mark Hounschell via Paul Eggert.
40508
40509 2001-02-07  Jim Meyering  <meyering@lucent.com>
40510
40511         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
40512
40513 2001-02-05  Jim Meyering  <meyering@lucent.com>
40514
40515         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
40516         it includes the patch required for `large file' support with at least
40517         HP-UX's 10.20 /bin/cc.
40518
40519 2001-02-03  Jim Meyering  <meyering@lucent.com>
40520
40521         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
40522         AS_IF, now that it works once again (mysteriously).
40523         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
40524
40525 2001-01-30  Jim Meyering  <meyering@lucent.com>
40526
40527         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
40528         * m4/chown.m4: Rename conftestchown to conftest.chown.
40529         * m4/rename.m4: s/conftestdir/conftest.d1/ and
40530         s/conftestdir2/conftest.d2/.
40531         * m4/utimes.m4: s/conftestdata/conftest.data/
40532         Inspired by Pavel Roskin's change in autoconf.
40533
40534 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
40535
40536         * lib/config.charset: Update for FreeBSD 4.2.
40537
40538 2001-01-27  Jim Meyering  <meyering@lucent.com>
40539
40540         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
40541         a use of AS_IF.
40542         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
40543
40544 2001-01-26  Jim Meyering  <meyering@lucent.com>
40545
40546         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
40547         quotearg.c includes it.
40548
40549 2001-01-26  Jim Meyering  <meyering@lucent.com>
40550
40551         * lib/quotearg.c: Include stddef.h.
40552         * lib/quote.c: Include stddef.h.
40553         Reported by Axel Kittenberger.
40554
40555         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
40556         line in double quotes so that it evokes a better diagnostic.
40557         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
40558         Reported by Axel Kittenberger.
40559
40560 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
40561
40562         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
40563         as if it was a `charset'.
40564
40565 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
40566
40567         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
40568         has const.
40569
40570 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
40571
40572         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
40573         to avoid a warning.  Add back 'const' to inptr.
40574
40575 2001-01-20  Jim Meyering  <meyering@lucent.com>
40576
40577         Be sure that headers are checked before used in code compiled
40578         for the type checks.
40579         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
40580         In place of that, invoke jm_CHECK_ALL_TYPES.
40581         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
40582         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
40583         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
40584         The check for ssize_t was mistakenly run before the test for unistd.h.
40585
40586         The configure-time check for stdbool.h was missing.
40587         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
40588         (jm_PREREQ_HASH): New function.
40589
40590 2001-01-17  Jim Meyering  <meyering@lucent.com>
40591
40592         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
40593         for autoconf-2.49c.
40594         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
40595
40596 2001-01-16  Jim Meyering  <meyering@lucent.com>
40597
40598         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
40599         From Bruno Haible.
40600
40601 2001-01-14  Jim Meyering  <meyering@lucent.com>
40602
40603         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
40604         foo and bar.  Create conftestdir/ in the script, not in the C code.
40605         Remove directories in the script, not in the C code.
40606         Remove conftestdir{,2} before trying to create the directory.
40607         Make the entire configure script fail if the mkdir fails.
40608
40609 2001-01-14  Jim Meyering  <meyering@lucent.com>
40610
40611         * lib/rename.c: New file.  From Volker Borchert.
40612         Include stdlib.h, string.h or strings.h, and xalloc.h.
40613         Use strip_trailing_slashes rather than open-coding it.
40614
40615 2001-01-03  Paul Eggert  <eggert@twinsun.com>
40616
40617         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
40618
40619 2001-01-03  Jim Meyering  <meyering@lucent.com>
40620
40621         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
40622         of local `inptr' to avoid warning with some system declarations of
40623         iconv.
40624
40625 2001-01-02  Volker Borchert  <bt@teknon.de>
40626
40627         * m4/rename.m4: New file.
40628         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
40629
40630 2001-01-01  Jim Meyering  <meyering@lucent.com>
40631
40632         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
40633         even on systems with utmpx.h.  It's necessary for the declaration of
40634         utmp's ut_user member.  Reported by Andreas Jaeger.
40635
40636         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
40637         available. They are required for the declarations of getgrgid and
40638         getpwuid resp.
40639         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
40640         Reported by Andreas Jaeger.
40641
40642 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
40643
40644         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
40645         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
40646         so `make install' also works in VPATH builds.
40647
40648 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
40649
40650         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
40651         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
40652         can be used in subdirectories.
40653
40654 2000-12-29  Paul Eggert  <eggert@twinsun.com>
40655
40656         * lib/modechange.c: Do not assume that mode_t uses the
40657         traditional octal encoding.  E.g. "chmod 1 FOO" should set
40658         the other-execute bit of FOO even if S_IXOTH != 1.
40659
40660         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
40661         WOTH, XOTH, ALLM): New macros.
40662         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
40663          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
40664         Use them.
40665         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
40666         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
40667         (mode_compile):
40668         No need to use uintmax_t; unsigned long is long enough.
40669         Don't bother to get suffix since we don't use it.
40670
40671 2000-12-26  Jim Meyering  <meyering@lucent.com>
40672
40673         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
40674         better with autoheader.
40675
40676 2000-12-24  Jim Meyering  <meyering@lucent.com>
40677
40678         * lib/hash.c (is_prime): Return explicit boolean values.
40679         (hash_get_first): Return NULL to appease Irix5.6's 89.
40680         Reported by Nelson Beebe.
40681
40682 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
40683
40684         * lib/localcharset.c (locale_charset): Add support for Win32.
40685
40686 2000-12-18  Paul Eggert  <eggert@twinsun.com>
40687
40688         * lib/physmem.h, lib/physmem.c: New files.
40689
40690         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
40691         (noinst_HEADERS): Add physmem.h.
40692
40693         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
40694         't' for compatibility with Solaris 8 sort.
40695
40696 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
40697
40698         * lib/config.charset: Add support for BeOS.
40699
40700 2000-12-17  Jim Meyering  <meyering@lucent.com>
40701
40702         * m4/dos.m4 (jm_AC_DOS): New file and macro.
40703         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
40704
40705 2000-12-16  Jim Meyering  <meyering@lucent.com>
40706
40707         This bug had a serious impact on chown: `chown N:M FILE' (for integer
40708         N and M) would have treated it like `chown N:N FILE'.
40709
40710         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
40711
40712 2000-12-16  Jim Meyering  <meyering@lucent.com>
40713
40714         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
40715         SHELLS_FILE to a file name that's useful on djgpp systems.
40716         Include stdlib.h.
40717         (ADDITIONAL_DEFAULT_SHELLS): Define.
40718         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
40719         Based mostly on a patch from Prashant TR.
40720
40721 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
40722
40723         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
40724         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
40725         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
40726
40727 2000-12-08  Andreas Schwab  <schwab@suse.de>
40728
40729         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
40730         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
40731
40732 2000-12-07  Jim Meyering  <meyering@lucent.com>
40733
40734         * lib/stripslash.c (ISSLASH): Define.
40735         (strip_trailing_slashes): Use ISSLASH rather than comparing against
40736         `/'.
40737         From Prashant TR.
40738
40739         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
40740         (dir_name_r): Declare this function as static.
40741         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
40742         manifest itself on a name containing a mix of slashes and
40743         backslashes.
40744         Make this function work with names starting with a DOS-style
40745         drive letter and colon prefix.
40746         (dir_name): Append `.' if necessary.
40747         Based mostly on patches from Prashant TR and Eli Zaretskii.
40748
40749         * lib/dirname.h (dir_name_r): Remove prototype.
40750
40751 2000-12-06  Paul Eggert  <eggert@twinsun.com>
40752
40753         * m4/off_t-format.m4: Remove this file.
40754         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
40755
40756 2000-12-06  Jim Meyering  <meyering@lucent.com>
40757
40758         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
40759         replacement strtoull, we may well need the replacement strtoul, too.
40760         Check for declarations of strtoul and strtoull.
40761         Check for strtol.  Mainly as a cue to cause automake to include
40762         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
40763         Check for limits.h -- strtol.c needs it.
40764
40765 2000-12-05  Jim Meyering  <meyering@lucent.com>
40766
40767         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
40768
40769 2000-12-04  Jim Meyering  <meyering@lucent.com>
40770
40771         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
40772         Also include memory.h, stdlib.h, unistd.h if appropriate.
40773         Reported by Andreas Jaeger (conflicting declaration of malloc).
40774
40775 2000-12-02  Jim Meyering  <meyering@lucent.com>
40776
40777         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
40778         * m4/jm-macros.m4 (jm_MACROS): require it.
40779
40780 2000-12-02  Jim Meyering  <meyering@lucent.com>
40781
40782         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
40783
40784 2000-12-01  Paul Eggert  <eggert@twinsun.com>
40785
40786         * lib/memrchr.c: Include <config.h> before any system include file.
40787
40788 2000-11-30  Jim Meyering  <meyering@lucent.com>
40789
40790         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
40791
40792 2000-11-30  Jim Meyering  <meyering@lucent.com>
40793
40794         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
40795
40796 2000-11-29  Paul Eggert  <eggert@twinsun.com>
40797
40798         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
40799
40800 2000-11-26  Jim Meyering  <meyering@lucent.com>
40801
40802         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
40803
40804 2000-11-22  Paul Eggert  <eggert@twinsun.com>
40805
40806         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
40807         size of (size_t) -1; it's not portable.
40808
40809 2000-11-17  Jim Meyering  <meyering@lucent.com>
40810
40811         * lib/strstr.c: Update from GNU libc.
40812
40813 2000-11-17  Akim Demaille  <akim@epita.fr>
40814
40815         * lib/obstack.h: Formatting changes.
40816         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
40817         prevent type checking.
40818         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
40819         cast the value to (void *): assigning a `foo *' to a `void *'
40820         variable is valid.
40821         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
40822
40823 2000-11-16  Jim Meyering  <meyering@lucent.com>
40824
40825         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
40826
40827 2000-11-11  Jim Meyering  <meyering@lucent.com>
40828
40829         * lib/error.c: Add a couple #includes, merging from GNU libc version.
40830
40831 2000-11-10  Jim Meyering  <meyering@lucent.com>
40832
40833         * lib/obstack.h: Update from GNU libc.
40834         * lib/obstack.c: Likewise.
40835
40836 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
40837
40838         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
40839
40840 2000-11-06  Paul Eggert  <eggert@twinsun.com>
40841
40842         * lib/getusershell.c (setusershell): Use rewind rather than
40843         fseek/fseeko, to avoid configuration hassles with fseeko.
40844         Don't bother opening SHELLS_FILE if shellstream is NULL;
40845         it's not necessary.
40846
40847 2000-11-05  Jim Meyering  <meyering@lucent.com>
40848
40849         * lib/makepath.h (make_dir): Declare.
40850         * lib/makepath.c (make_dir): Remove `static' attribute.
40851         Tweak a comment.
40852
40853 2000-11-04  Jim Meyering  <meyering@lucent.com>
40854
40855         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
40856
40857 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
40858
40859         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
40860         last one in a bucket, advance to the next bucket.
40861
40862 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
40863
40864         * lib/fnmatch.c: Do not comment out all the code if we are using
40865         the GNU C library, because in some cases we are replacing buggy
40866         code in the GNU C library itself.
40867
40868 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
40869
40870         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
40871         (regex_compile): Catch bogus \(\1\).
40872
40873 2000-10-30  Paul Eggert  <eggert@twinsun.com>
40874
40875         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
40876         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
40877         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
40878
40879 2000-10-30  Paul Eggert  <eggert@twinsun.com>
40880
40881         * lib/error.h, getline.h, modechange.h:
40882         Remove "2000" from Copyright line, as the file hasn't been
40883         changed this year other than in the copyright notice.
40884
40885         * lib/xalloc.h: Add "2000" to Copyright line, as this file
40886         was changed this year.
40887
40888 2000-10-29  Jim Meyering  <meyering@lucent.com>
40889
40890         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
40891         renaming.
40892         * m4/ls-mntd-fs.m4: Likewise
40893
40894 2000-10-29  Jim Meyering  <meyering@lucent.com>
40895
40896         * lib/xstat.in: Fix grammar in comment.
40897
40898 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
40899
40900         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
40901         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
40902         doesn't define __restrict_arr.
40903
40904 2000-10-28  Jim Meyering  <meyering@lucent.com>
40905
40906         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
40907         (jm_PREREQ_MEMCHR): New function.
40908
40909 2000-10-28  Jim Meyering  <meyering@lucent.com>
40910
40911         * lib/memchr.c: Update from libc.
40912         Adjust for portability:
40913         [HAVE_STDLIB_H]: Include stdlib.h.
40914         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
40915         Undef __memchr, too.
40916         [!weak_alias]: Define __memchr to memchr.
40917
40918         * lib/regex.c: Update from libc.
40919         * lib/regex.h: Likewise.
40920         * lib/getopt1.c: Likewise.
40921         * lib/memcmp.c: Likewise.
40922
40923         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
40924         Avoid using fseek, when possible -- it's broken by design.
40925         Patch by Ulrich Drepper.
40926
40927 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
40928
40929         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
40930         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
40931         Giving in to popular pressure to shut up the compiler with casts.
40932
40933 2000-10-26  Jim Meyering  <meyering@lucent.com>
40934
40935         * lib/strftime.c: Update from libc.
40936
40937 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
40938
40939         * regex.c: More `unsigned char' -> `re_char' changes.
40940         Also change several `int' into `re_wchar_t'.
40941         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
40942         (PUSH_FAILURE_POINTER): Don't cast any more.
40943         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
40944         We want GCC to complain, since this piece of code makes
40945         re_match non-reentrant, which *should* be fixed.
40946         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
40947         (EXTEND_BUFFER): Use RETALLOC.
40948         (SET_LIST_BIT): Don't cast.
40949         (re_wchar_t): New type.
40950         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
40951         that those two functions will always properly return.
40952         (IMMEDIATE_QUIT_CHECK): Cast to void.
40953         (analyse_first): Use recursion rather than an explicit stack.
40954         (re_compile_fastmap): Can't fail anymore.
40955         (re_search_2): Don't check re_compile_fastmap for failure.
40956         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
40957         Now also sets the new value (passed in a new argument).
40958         (re_match_2_internal): Use it.
40959         Also, use a new var `reg' of type size_t when looping through regs
40960         rather than reuse the inappropriate `mcnt'.
40961
40962 2000-10-25  Jim Meyering  <meyering@lucent.com>
40963
40964         * lib/obstack.c: Update from libc.
40965
40966 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
40967
40968         * regex.c (regex_compile): Change the way of handling a range from
40969         a char less than 256 to a char not less than 256.
40970
40971 2000-10-24  Andrew Innes  <andrewi@gnu.org>
40972
40973         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
40974         NT-Emacs only.
40975         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
40976         so that re_search functions only quit when callers expect them to.
40977
40978 2000-10-23  Jim Meyering  <meyering@lucent.com>
40979
40980         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
40981         wrong.  That set_locale call must not have any side effects.
40982         From Paul Eggert.
40983
40984 2000-10-22  Jim Meyering  <meyering@lucent.com>
40985
40986         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
40987         [CYCLIC]: Remove now-unused definition.
40988
40989         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
40990         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
40991         Suggestion from Ulrich Drepper.
40992
40993 2000-10-21  Jim Meyering  <meyering@lucent.com>
40994
40995         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
40996         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
40997         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
40998
40999 2000-10-21  Jim Meyering  <meyering@lucent.com>
41000
41001         * lib/dirname.c (memrchr): Declare if necessary.
41002         (dir_name): Remove the restriction that there be no
41003         trailing slashes.  Now, this code skips past them, effectively
41004         ignoring them.
41005         [TEST_DIRNAME] (main): New unit tests.
41006
41007         * lib/memrchr.c: New file from GNU libc.
41008         Undef __memrchr, too.
41009         [!weak_alias]: Define __memrchr to memrchr.
41010         Guard weak_alias use with `#ifdef weak_alias'.
41011
41012 2000-10-21  Jim Meyering  <meyering@lucent.com>
41013
41014         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
41015         (dir_name): Use dir_name_r.
41016         * lib/dirname.h (dir_name_r): Declare it.
41017
41018 2000-10-17  Jim Meyering  <meyering@lucent.com>
41019
41020         * lib/quote.h (PARAMS): Define and use.
41021         Reported by Akim Demaille.
41022
41023         * lib/getopt.c: Update from libc.
41024
41025 2000-10-16  Jim Meyering  <meyering@lucent.com>
41026
41027         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
41028         setlocale.
41029         From Jan Fedak.
41030
41031 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
41032
41033         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
41034
41035 2000-09-25  Jim Meyering  <meyering@lucent.com>
41036
41037         * lib/md5.h (rol): Define (from GnuPG).
41038
41039         * lib/sha.c: Give credit (GnuPG) where due.
41040         (M): Use rol rather than open-coding it.
41041         Add a FIXME comment.
41042
41043 2000-09-21  Jim Meyering  <meyering@lucent.com>
41044
41045         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
41046         Reported by Michael Stone.
41047
41048 2000-09-20  Jim Meyering  <meyering@lucent.com>
41049
41050         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
41051         (noinst_HEADERS): Add sha.h.
41052         Based on code from Scott G. Miller and from GnuPG.
41053
41054 2000-09-18  Jim Meyering  <meyering@lucent.com>
41055
41056         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
41057         LIBS. Otherwise, everyone ends up linking with -lelf for some
41058         configurations.
41059         Reported by Mike Stone.
41060
41061 2000-09-15  Jim Meyering  <meyering@lucent.com>
41062
41063         * lib/regex.c: Update from libc.
41064
41065 2000-09-10  Jim Meyering  <meyering@lucent.com>
41066
41067         * lib/getopt.c (_getopt_internal): Update from glibc.
41068
41069 2000-09-09  Jim Meyering  <meyering@lucent.com>
41070
41071         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
41072         think it should be used as a general replacement for isascii.
41073         * lib/fnmatch.c: Likewise.
41074         * lib/mbswidth.c: Likewise
41075         * lib/regex.c: Likewise.
41076
41077         Don't use atoi.
41078         * lib/userspec.c: Include sys/param.h and limits.h.
41079         Include xstrtol.h.
41080         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
41081         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
41082         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
41083         UID, GID.  Check range.
41084
41085 2000-09-06  Jim Meyering  <meyering@lucent.com>
41086
41087         * lib/getopt.c (_getopt_internal): Update from glibc.
41088
41089 2000-08-30  Jim Meyering  <meyering@lucent.com>
41090
41091         * lib/strftime.c: Merge in changes from GNU libc.
41092
41093 2000-08-26  Jim Meyering  <meyering@lucent.com>
41094
41095         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
41096         * m4/fpending.m4: New file.
41097
41098 2000-08-26  Jim Meyering  <meyering@lucent.com>
41099
41100         * lib/closeout.c: Include "__fpending.h".
41101         (close_stdout_status): Return right away if there's nothing to flush.
41102
41103         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
41104         * lib/__fpending.c: New file.
41105         * lib/__fpending.h: New file.
41106
41107 2000-08-20  Jim Meyering  <meyering@lucent.com>
41108
41109         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
41110         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
41111         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
41112
41113 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
41114
41115         Improve fileutils installation on systems where running
41116         programs (like install) can't be unlinked.
41117         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
41118         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
41119
41120 2000-08-07  Paul Eggert  <eggert@twinsun.com>
41121
41122         Standardize on "memory exhausted" instead of "Memory exhausted"
41123         or "virtual memory exhausted".
41124         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
41125         "virtual memory exhausted".
41126         * lib/same.c (same_name): Invoke xalloc_die instead of printing
41127         our own message.
41128         * lib/userspec.c (parse_user_spec): Likewise.
41129         * lib/bumpalloc.h: comment fix
41130         * lib/same.c, userspec.c: Include xalloc.h.
41131
41132         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
41133         not char *const and pointing to a constant array.
41134         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
41135         (xrealloc): Comment fix.
41136
41137         * lib/userspec.c (parse_user_spec):
41138         Don't translate a message until just before returning,
41139         to avoid unnecessary translation.
41140
41141 2000-08-07  Jim Meyering  <meyering@lucent.com>
41142
41143         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
41144         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
41145         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
41146         getgroups.c, gethostname.c, getopt.h, group-member.c,
41147         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
41148         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
41149         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
41150         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
41151         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
41152         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
41153         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
41154         yesno.c: Back out Copyright date changes for each file with no change
41155         this year.  This eases coordination with other programs using the same
41156         source code modules.  From Paul Eggert.
41157
41158 2000-08-06  Paul Eggert  <eggert@twinsun.com>
41159
41160         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
41161         not char, for compatibility with glibc 2.1.3 strftime.c.
41162
41163 2000-08-03  Greg McGary  <greg@mcgary.org>
41164
41165         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
41166         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
41167         (EXTEND_BUFFER): Use them.
41168
41169 2000-08-01  Jim Meyering  <meyering@lucent.com>
41170
41171         * lib/dirname.c (ISSLASH): Define.
41172         (BACKSLASH_IS_PATH_SEPARATOR): Define.
41173         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
41174         both `\' and `/' may be use as path separators.
41175         Based on a patch from Prashant TR.
41176
41177 2000-07-31  Paul Eggert  <eggert@twinsun.com>
41178
41179         * lib/quotearg.c (quotearg_n_options): Don't make the initial
41180         slot vector a constant, since it might get modified.
41181
41182 2000-07-31  Jim Meyering  <meyering@lucent.com>
41183
41184         * lib/xmalloc.c: Use `virtual memory exhausted', not
41185         `Memory exhausted'.
41186         * lib/obstack.c (print_and_abort): Likewise.
41187
41188 2000-07-30  Paul Eggert  <eggert@twinsun.com>
41189
41190         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
41191         buffer, so that the caller can always quote one small
41192         component of a "memory exhausted" message in slot 0.
41193         From a suggestion by Jim Meyering.
41194
41195 2000-07-30  Jim Meyering  <meyering@lucent.com>
41196
41197         * lib/makepath.c (make_path): Quote the other instance, too.
41198
41199         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
41200         (STATIC_BUF_SIZE): Define.
41201         (quotearg_n_options): Use only statically allocated storage when
41202         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
41203         than STATIC_BUF_SIZE.
41204
41205 2000-07-29  Jim Meyering  <meyering@lucent.com>
41206
41207         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
41208         * lib/dirname.c (dir_name): Likewise.
41209
41210         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
41211         `/'.
41212
41213         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
41214         (dir_name): Assert that there are no trailing slashes.
41215
41216 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
41217
41218         * lib/mbswidth.h (mbswidth): Add a flags argument.
41219         (mbswidth): New declaration.
41220         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
41221         * lib/mbswidth.c (mbswidth): Add a flags argument.
41222         (mbsnwidth): New function.
41223
41224 2000-07-24  Jim Meyering  <meyering@lucent.com>
41225
41226         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
41227
41228 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41229
41230         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
41231
41232 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41233
41234         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
41235         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
41236         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
41237         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
41238         invoke multibyte primitives.
41239
41240 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41241
41242         * lib/quotearg.c:
41243         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
41244         so that mbstate_t is always defined.
41245
41246         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
41247         be 1 in at least one GCC installation, and this configuration
41248         error is likely to be common.  Ignoring MB_LEN_MAX hurts
41249         performance on hosts that have mbrtowc but have only unibyte
41250         locales, but I assume these hosts are rare.
41251
41252 2000-07-23  Paul Eggert  <eggert@twinsun.com>
41253
41254         * lib/mbswidth.c (_XOPEN_SOURCE):
41255         Don't define; this causes problems on Solaris 7.
41256         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
41257
41258 2000-07-23  Jim Meyering  <meyering@lucent.com>
41259
41260         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
41261         too: getgrgid, getpwuid, getuid.
41262
41263 2000-07-23  Jim Meyering  <meyering@lucent.com>
41264
41265         * lib/basename.c (base_name): Add an assertion.
41266
41267 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
41268
41269         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
41270         shadow its mbsinit function.
41271
41272 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
41273
41274         * lib/mbswidth.h: New file.
41275         * lib/mbswidth.c: New file.
41276         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
41277         (noinst_HEADERS): Add mbswidth.h.
41278
41279 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
41280
41281         * lib/config.charset: Add support for FreeBSD. Improve support for
41282         HP-UX and IRIX 6.
41283
41284 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
41285
41286         * m4/mbswidth.m4: New file.
41287         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
41288
41289 2000-07-15  Jim Meyering  <meyering@lucent.com>
41290
41291         * lib/makepath.c: Include quote.h.
41292         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
41293         corresponding argument in a `quote (...)' call.
41294         Give better diagnostics.
41295
41296         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
41297         (noinst_HEADERS): Add quote.h.
41298
41299         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
41300         from tar's src/misc.c.
41301         * lib/quote.h: New file.  Prototypes for same.
41302
41303 2000-07-14  Paul Eggert  <eggert@twinsun.com>
41304
41305         From a suggestion by Bruno Haible.
41306         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
41307         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
41308         to decide whether to define the BeOS workaround macro;
41309         this adjusts to the change to AC_MBSTATE_T.
41310
41311 2000-07-14  Jim Meyering  <meyering@lucent.com>
41312
41313         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
41314         jm_AC_TYPE_UINTMAX_T.
41315
41316 2000-07-13  Paul Eggert  <eggert@twinsun.com>
41317
41318         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
41319
41320         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
41321         quotearg_buffer_restyled): Add support for
41322         clocale_quoting_style.  Undo previous change to
41323         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
41324         and "{RIGHT QUOTATION MARK}" msgids.
41325
41326 2000-07-10  Paul Eggert  <eggert@twinsun.com>
41327
41328         From a suggestion by Bruno Haible.
41329         * m4/mbstate_t.m4 (AC_MBSTATE_T):
41330         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
41331         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
41332         and mbstate_t, to a single-part test that simply defines mbstate_t.
41333         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
41334         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
41335
41336 2000-07-10  Jim Meyering  <meyering@lucent.com>
41337
41338         * m4/strerror_r.m4: Mirror the correction made in autoconf.
41339
41340         * m4/gnu-source.m4: Output to confdefs.h directly.
41341         Suggestion from Akim Demaille.
41342
41343 2000-07-09  Paul Eggert  <eggert@twinsun.com>
41344
41345         The old behavior of quoting `like this' doesn't look good with
41346         newer, ISO-style fonts.  See:
41347         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
41348
41349         Instead, quote "like this" by default.  Let the translator
41350         tailor the locale-specific quoting behavior by providing
41351         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
41352
41353         * lib/quotearg.c (N_): New macro.
41354         (gettext_default): New function.
41355         (quotearg_buffer_restyled): Use
41356         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
41357         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
41358
41359 2000-07-09  Jim Meyering  <meyering@lucent.com>
41360
41361         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
41362         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
41363
41364         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
41365         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
41366
41367 2000-07-09  Jim Meyering  <meyering@lucent.com>
41368
41369         * lib/Most files: Update copyright dates to include 2000.
41370
41371 2000-07-08  Jim Meyering  <meyering@lucent.com>
41372
41373         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
41374         if not defined.
41375         (xgethostname): Remove now-unnecessary #ifdef.
41376         Move declaration of `err' into loop where it's used.
41377
41378 2000-07-05  Paul Eggert  <eggert@twinsun.com>
41379         and Bruno Haible  <haible@clisp.cons.org>
41380
41381         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
41382         only if the test for an object-type mbstate_t fails.  This
41383         prevents us from mistakenly reporting that mbstate_t is a
41384         system object type after we "#define mbstate_t int" to work
41385         around its lack.
41386
41387 2000-07-05  Paul Eggert  <eggert@twinsun.com>
41388         and Bruno Haible  <haible@clisp.cons.org>
41389
41390         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
41391
41392 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41393
41394         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
41395         to strerror_r.
41396         Include <ctype.h> for use of isalpha.
41397
41398 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41399
41400         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
41401         by allocating a larger buffer. Test the gethostname return value for
41402         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
41403         returns an error and ENAMETOOLONG isn't defined.
41404
41405 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
41406
41407         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
41408         dimension.
41409
41410 2000-07-04  Jim Meyering  <meyering@lucent.com>
41411
41412         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
41413         of the deprecated AC_CHECKING.
41414
41415 2000-07-04  Jim Meyering  <meyering@lucent.com>
41416
41417         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
41418         Reported by Bruno Haible.
41419
41420 2000-07-04  Jim Meyering  <meyering@lucent.com>
41421
41422         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
41423         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
41424         lacks mbrtowc.
41425
41426 2000-07-03  Paul Eggert  <eggert@twinsun.com>
41427
41428         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
41429         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
41430
41431 2000-07-03  Paul Eggert  <eggert@twinsun.com>
41432         and Bruno Haible  <haible@clisp.cons.org>
41433
41434         * lib/quotearg.c (mbrtowc):
41435         Assign to *pwc, and return 1 only if result is nonzero.
41436         (iswprint): Use ISPRINT when substituting our own mbrtowc.
41437
41438 2000-07-03  Jim Meyering  <meyering@lucent.com>
41439
41440         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
41441
41442 2000-07-03  Jim Meyering  <meyering@lucent.com>
41443
41444         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
41445         This is necessary to get a definition of e.g., UTMP_FILE on
41446         HP-UX 10.20.
41447         From Bob Proulx.
41448
41449 2000-07-02  Jim Meyering  <meyering@lucent.com>
41450
41451         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
41452
41453         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
41454         AC_LIBOBJ(function_name).
41455         * m4/chown.m4: Likewise.
41456         * m4/fnmatch.m4: Likewise.
41457         * m4/ftruncate.m4: Likewise.
41458         * m4/getgroups.m4: Likewise.
41459         * m4/getline.m4: Likewise.
41460         * m4/group-member.m4: Likewise.
41461         * m4/jm-macros.m4: Likewise.
41462         * m4/lstat.m4: Likewise.
41463         * m4/malloc.m4: Likewise.
41464         * m4/memcmp.m4: Likewise.
41465         * m4/nanosleep.m4: Likewise.
41466         * m4/putenv.m4: Likewise.
41467         * m4/realloc.m4: Likewise.
41468         * m4/regex.m4: Likewise.
41469         * m4/stat.m4: Likewise.
41470         * m4/strftime.m4: Likewise.
41471
41472 2000-07-02  Jim Meyering  <meyering@lucent.com>
41473
41474         * lib/quotearg.c (mbstate_t): Don't define here.
41475
41476 2000-07-02  Jim Meyering  <meyering@lucent.com>
41477
41478         * lib/nanosleep.c (SIGCONT): Define if not already defined.
41479
41480 2000-07-01  Jim Meyering  <meyering@lucent.com>
41481
41482         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
41483
41484 2000-07-01  Jim Meyering  <meyering@lucent.com>
41485
41486         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
41487         problem.
41488
41489 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
41490
41491         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
41492         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
41493
41494 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
41495
41496         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
41497         per change in ../m4/ls-mntd-fs.m4.
41498         (read_filesystem_list): Ignore symbolic links.
41499
41500 2000-06-29  Jim Meyering  <meyering@lucent.com>
41501
41502         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
41503         for declaration of strcmp.
41504
41505         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
41506
41507         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
41508         Avoid warning by casting result to `char *' to remove `const'.
41509
41510 2000-06-28  Jim Meyering  <meyering@lucent.com>
41511
41512         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
41513         included by quotearg.c, for which we perform this test.  From
41514         Bruno Haible.
41515
41516 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
41517
41518         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
41519         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
41520         <utmpx.h> exists, put readutmp.o into LIBOBJS.
41521
41522 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
41523
41524         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
41525
41526 2000-06-26  Paul Eggert  <eggert@twinsun.com>
41527
41528         savedir now sets errno on failure and invokes xmalloc to get memory.
41529         Fix a couple of other minor bugs while we're at it.
41530
41531         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
41532         (NAMLEN): Remove macro.
41533         (malloc, realloc): Remove decls.
41534         (stpcpy): Likewise.
41535         ("xalloc.h"): Include.
41536         (NAME_SIZE_DEFAULT): New macro.
41537         (savedir): Use xmalloc / xrealloc to allocate memory.
41538         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
41539         Skip "" directory entries.
41540         Use strlen to calculate directory entry length, since the old method
41541         is rarely used these days and isn't worth supporting.
41542         Don't use a pointer after freeing it.
41543         Check for integer overflow when calculating allocation size.
41544         Use memcpy to copy entries, instead of stpcpy.
41545         Set errno properly when returning NULL.
41546         Check for readdir error.
41547
41548 2000-06-26  Jim Meyering  <meyering@lucent.com>
41549
41550         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
41551
41552 2000-06-25  Jim Meyering  <meyering@lucent.com>
41553
41554         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
41555         Linux header bug when _XOPEN_SOURCE is defined to 500.
41556
41557 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
41558
41559         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
41560         deficiency.
41561
41562 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
41563
41564         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
41565         Include xalloc.h.
41566         Don't include <stdlib.h>.  Don't declare malloc, realloc.
41567
41568 2000-06-24  Jim Meyering  <meyering@lucent.com>
41569
41570         * m4/strerror_r.m4: Revive this file -- to try out an experimental
41571         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
41572         for which strerror does return char*, but which lacks a conveniently
41573         accessible declaration of the function.  If the compile-test says
41574         strerror_r doesn't work, then resort to a `run'-test that works on
41575         BeOS and segfaults on DEC Unix.
41576
41577 2000-06-24  Jim Meyering  <meyering@lucent.com>
41578
41579         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
41580
41581 2000-06-23  Paul Eggert  <eggert@twinsun.com>
41582
41583         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
41584         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
41585
41586 2000-06-23  Paul Eggert  <eggert@twinsun.com>
41587
41588         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
41589         (mbrtowc, mbstate_t): Define substitutes if
41590         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
41591         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
41592         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
41593
41594 2000-06-23  Jim Meyering  <meyering@lucent.com>
41595
41596         * m4/afs.m4: Add missing AC_MSG_RESULT.
41597         Reported by Bruno Haible.
41598
41599         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
41600         Suggestion from Bruno Haible.
41601
41602 2000-06-23  Jim Meyering  <meyering@lucent.com>
41603
41604         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
41605
41606 2000-06-21  Jim Meyering  <meyering@lucent.com>
41607
41608         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
41609
41610 2000-06-21  Jim Meyering  <meyering@lucent.com>
41611
41612         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
41613         (noinst_HEADERS): Add getstr.h.
41614
41615         * lib/getline.c (getstr): Move into a separate file.
41616         * lib/getstr.c (getstr): New file, extracted from getline.c, with
41617         the following changes: new parameter, delim2; both delim[12]
41618         parameters have type `int', not `char'.  The latter would lose
41619         with 8-bit delimiters.
41620         * lib/getstr.h: New file.
41621
41622 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41623
41624         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
41625         than 1024, return a memory chunk of least possible size, instead
41626         of size PATH_MAX + 2. In the loop, increment the size proportionally.
41627         Use free/xmalloc instead of xrealloc to avoid copying for very long
41628         paths.
41629
41630 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41631
41632         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
41633         the empty string.
41634
41635 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
41636
41637         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
41638         address, not strdup.  Include <stdlib.h> and don't declare free().
41639
41640 2000-06-19  Jim Meyering  <meyering@lucent.com>
41641
41642         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
41643
41644 2000-06-18  Jim Meyering  <meyering@lucent.com>
41645
41646         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
41647
41648         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
41649         `checking whether...' message to be consistent with that of the
41650         lstat test.
41651
41652 2000-06-18  Jim Meyering  <meyering@lucent.com>
41653
41654         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
41655         Besides, these days every porting target provides a mkdir function.
41656
41657         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
41658         needed. (this snippet comes from src/system.h).
41659
41660 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
41661
41662         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
41663
41664 2000-06-15  Paul Eggert  <eggert@twinsun.com>
41665
41666         * lib/human.c (adjust_value): New function.
41667         (human_readable_inexact): Apply rounding style even when
41668         printing approximate values.
41669
41670 2000-06-14  Paul Eggert  <eggert@twinsun.com>
41671
41672         * lib/human.c (human_readable_inexact): Allow an input block
41673         size that is not a multiple of the output block size, and vice versa.
41674         Reported by Piergiorgio Sartor.
41675
41676 2000-06-14  Paul Eggert  <eggert@twinsun.com>
41677
41678         * lib/getdate.y (get_date): Apply relative times after time
41679         zone indicator, not before.  Reported by Todd A. Jacobs.
41680
41681 2000-06-13  Jim Meyering  <meyering@lucent.com>
41682
41683         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
41684
41685         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
41686
41687 2000-06-12  Paul Eggert  <eggert@twinsun.com>
41688
41689         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
41690
41691 2000-06-12  Jim Meyering  <meyering@lucent.com>
41692
41693         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
41694         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
41695         optional argument.
41696         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
41697         the optional argument, `lib'.
41698
41699 2000-06-08  Jim Meyering  <meyering@lucent.com>
41700
41701         * m4/largefile.m4: Remove file (now that it's part of autoconf).
41702
41703 2000-06-04  Paul Eggert  <eggert@twinsun.com>
41704
41705         Rewrite largefile configuration so that we don't need to run
41706         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
41707         AC_CANONICAL_HOST in configure.in -- jmm]
41708
41709         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
41710         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
41711         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
41712         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
41713         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
41714         All uses changed.
41715         Instead of inspecting the output of getconf, try to compile the
41716         test program without and with the macro definition.
41717         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
41718         for getconf.  Instead, check for the needed flags by compiling
41719         test programs.
41720
41721 2000-06-04  Paul Eggert  <eggert@twinsun.com>
41722
41723         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
41724
41725 2000-06-04  Jim Meyering  <meyering@lucent.com>
41726
41727         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
41728         SunOS 4.1.4 for which gid_t is an unsigned type.
41729
41730 2000-06-03  Jim Meyering  <meyering@lucent.com>
41731
41732         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
41733         now that autoconf requires that.
41734
41735         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
41736         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
41737         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
41738
41739 2000-06-03  Jim Meyering  <meyering@lucent.com>
41740
41741         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
41742
41743 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
41744
41745         * m4/glibc21.m4: New file.
41746         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
41747
41748 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
41749
41750         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
41751         newer, don't install charset.alias.
41752         * lib/config.charset: Change the Linux/glibc rules so they become empty
41753         on glibc-2.1 or newer.
41754
41755 2000-06-02  Jim Meyering  <meyering@lucent.com>
41756
41757         * lib/mountlist.c: Back out last change.  Instead, do this...
41758         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
41759         me_dummy member using the same `ignore'-testing code.
41760         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
41761         fs_type strings.
41762         From Mark D. Roth.
41763
41764 2000-05-29  Jim Meyering  <meyering@lucent.com>
41765
41766         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
41767         mounts with the `ignore' attribute.  Based on a patch from
41768         Mark D. Roth.
41769
41770 2000-05-28  Jim Meyering  <meyering@lucent.com>
41771
41772         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
41773         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41774         * m4/stat.m4: Likewise.
41775         * m4/lstat.m4: Likewise.
41776         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
41777
41778         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
41779         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
41780
41781 2000-05-26  Jim Meyering  <meyering@lucent.com>
41782
41783         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
41784
41785 2000-05-24  Jim Meyering  <meyering@lucent.com>
41786
41787         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
41788         autoconf requires that.
41789         * m4/lib-check.m4: Likewise.
41790         * m4/jm-macros.m4: Likewise.
41791         * m4/strftime.m4: Likewise.
41792
41793         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
41794         AC_CHECK_DECLS, now that autoconf requires that.
41795
41796 2000-05-22  Jim Meyering  <meyering@lucent.com>
41797
41798         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41799         * m4/lstat.m4: Likewise.
41800
41801 2000-05-22  Jim Meyering  <meyering@lucent.com>
41802
41803         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
41804
41805 2000-05-20  Jim Meyering  <meyering@lucent.com>
41806
41807         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
41808         (jm_PREREQ): Use it.
41809
41810 2000-05-18  Jim Meyering  <meyering@lucent.com>
41811
41812         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
41813         back, too, since it may have been modified by allocate_entry.
41814         (hash_delete): Rewrite to use neither the assignment operator
41815         nor the comma operator in an if-expression.
41816
41817 2000-05-15  Paul Eggert  <eggert@twinsun.com>
41818
41819         * lib/closeout.c:
41820         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
41821         Remove; no longer needed.
41822         "quotearg.h": Add include.
41823         (file_name): Do not bother to explicitly initialize to NULL; it's less
41824         efficient on some hosts.
41825         (close_stdout_status): Remove test as to whether stdout was already
41826         closed; it breaks for the case "echo x | sort >&-".
41827         Quote file name colons.
41828         Do not assume that _("write error") lacks format strings.
41829
41830 2000-05-15  Jim Meyering  <meyering@lucent.com>
41831
41832         * lib/version-etc.c (version_etc_copyright): Update the copyright
41833         string used in all --version output.
41834
41835 2000-05-14  Jim Meyering  <meyering@lucent.com>
41836
41837         * lib/closeout.c (close_stdout_set_file_name): New function.
41838         (close_stdout_status): Use new file-scoped global.
41839         Return right away if fstat says the stdout file descriptor is invalid.
41840         * lib/closeout.h (close_stdout_set_file_name): Declare.
41841
41842 2000-05-10  Jim Meyering  <meyering@lucent.com>
41843
41844         * lib/closeout.c [default_exit_status]: New file-scoped variable.
41845         (close_stdout_set_status): New function.
41846         * lib/closeout.h (close_stdout_set_status): Declare.
41847
41848 2000-05-09  Jim Meyering  <meyering@lucent.com>
41849
41850         * m4/gettext.m4: Rename this...
41851         * m4/libintl.m4: ...to this.
41852
41853 2000-05-08  Jim Meyering  <meyering@lucent.com>
41854
41855         * lib/long-options.c: Don't include closeout.h.
41856         (parse_long_options): Don't call close_stdout for --version.
41857
41858 2000-05-06  Paul Eggert  <eggert@twinsun.com>
41859
41860         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
41861         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
41862         2.1.3 bug.  This avoids a clash when files like regex.c define
41863         _GNU_SOURCE.
41864
41865 2000-05-06  Jim Meyering  <meyering@lucent.com>
41866
41867         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
41868         (AC_REPLACE_FUNCS): Add strnlen.
41869
41870         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
41871         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
41872
41873         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
41874         AC_SEARCH_LIBS call for nanosleep.
41875         (LIB_NANOSLEEP): Set and AC_SUBST.
41876
41877 2000-05-06  Jim Meyering  <meyering@lucent.com>
41878
41879         * lib/strnlen.c: Undefine __strnlen and strnlen.
41880         [!weak_alias]: Define __strnlen to strnlen.
41881
41882         * lib/atexit.c: New file, from libiberty.
41883
41884 2000-05-06  Jim Meyering  <meyering@lucent.com>
41885
41886         * lib/closeout.c (close_stdout_status): Also check for errors on the
41887         stderr stream.
41888
41889 2000-05-05  Jim Meyering  <meyering@lucent.com>
41890
41891         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
41892         AC_SEARCH_LIBS call for clock_gettime.
41893         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
41894
41895         * m4/search-libs.m4: Update from autoconf.
41896
41897         su doesn't work on Solaris 2.6.
41898         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
41899         <shadow.h>.  Reported by Dragos Harabor.
41900
41901 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
41902
41903         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
41904         memcpy instead of xmalloc, xrealloc, path_concat.
41905         (locale_charset): Treat empty environment variables as absent.
41906         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
41907
41908 2000-05-04  Jim Meyering  <meyering@lucent.com>
41909
41910         * lib/getopt.c: Update from glibc.
41911         * lib/obstack.c: Likewise.
41912         * lib/obstack.h: Likewise.
41913         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
41914         file
41915
41916         * lib/regex.h: Likewise.
41917         * lib/strndup.c: Likewise.
41918         * lib/strnlen.c: New file, from glibc.
41919
41920 2000-05-03  Jim Meyering  <meyering@lucent.com>
41921
41922         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
41923
41924 2000-05-02  Paul Eggert  <eggert@twinsun.com>
41925
41926         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
41927         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
41928         compile-time test, rather than inspecting host and OS, to
41929         decide whether to define _LARGEFILE_SOURCE.
41930
41931 2000-05-01  Jim Meyering  <meyering@lucent.com>
41932
41933         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
41934
41935         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
41936         Based on a patch from Bruno Haible.
41937
41938 2000-05-01  Jim Meyering  <meyering@lucent.com>
41939
41940         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
41941
41942 2000-04-29  Jim Meyering  <meyering@lucent.com>
41943
41944         * lib/path-concat.c: Declare strdup only if it's not defined.
41945         * lib/canon-host.c: Likewise.
41946
41947 2000-04-28  Jim Meyering  <meyering@lucent.com>
41948
41949         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
41950         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
41951         is included first, then limits.h is included by locale.h by libintl.h.
41952         From John David Anglin.
41953
41954 2000-04-25  Jim Meyering  <meyering@lucent.com>
41955
41956         * lib/makepath.c (S_IRWXUGO): Define.
41957         (make_path): Always perform explicit chmod if MODE specifies any
41958         of the `special' permission bits.  Prompted by a bug report against
41959         install from Mate Wierdl and Joost van Baal.
41960
41961 2000-04-18  Jim Meyering  <meyering@lucent.com>
41962
41963         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
41964         (jm_PREREQ): Use it.
41965
41966 2000-04-18  Jim Meyering  <meyering@lucent.com>
41967
41968         * lib/README: New file.
41969
41970         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
41971         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
41972
41973 2000-04-17  Jim Meyering  <meyering@lucent.com>
41974
41975         Get it right :-)
41976         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
41977         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
41978         Suggestion from Akim Demaille.
41979
41980 2000-04-17  Jim Meyering  <meyering@lucent.com>
41981
41982         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
41983         the definition of it to rpl_strftime also defined-away the system's
41984         declaration.
41985
41986 2000-04-15  Jim Meyering  <meyering@lucent.com>
41987
41988         Use `C' to denote so-called `contiguous' files, the same way
41989         that tar does.
41990         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
41991         (ftypelet): Use S_ISCTG.
41992         From Michael Deutschmann.
41993
41994 2000-04-14  Jim Meyering  <meyering@lucent.com>
41995
41996         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
41997         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
41998         clobbered.
41999
42000 2000-04-14  Jim Meyering  <meyering@lucent.com>
42001
42002         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
42003
42004 2000-04-13  Jim Meyering  <meyering@lucent.com>
42005
42006         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
42007         AH_VERBATIM to insert required #ifndef into config.h.in.
42008         Suggestion from Akim Demaille.
42009
42010 2000-04-12  Jim Meyering  <meyering@lucent.com>
42011
42012         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
42013         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
42014         Christian Krackowizer.
42015
42016         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
42017         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
42018         (AC_SYS_LARGEFILE): Require.
42019         (AM_C_PROTOTYPES): Require.
42020
42021 2000-04-08  Jim Meyering  <meyering@lucent.com>
42022
42023         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
42024         names don't conflict.  Reported by Eli Zaretskii.
42025
42026 2000-04-07  Jim Meyering  <meyering@lucent.com>
42027
42028         * lib/putenv.c: Move inclusion of errno.h so it follows that of
42029         sys/types.h, to work around system header problems on AIX 3.2.5.
42030         From Bruno Haible.
42031
42032 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
42033
42034         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
42035         bug.  Deal with the different error behavior of Irix iconv.
42036
42037 2000-04-05  Paul Eggert  <eggert@twinsun.com>
42038
42039         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
42040         IRIX if the installer said otherwise.
42041
42042 2000-04-05  Jim Meyering  <meyering@lucent.com>
42043
42044         Portability tweaks required for ultrix4.3.
42045         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
42046         (jm_CHECK_DECLS): Add getutent to the list of functions.
42047         (_jm_DECL_HEADERS): Add utmpx.h.
42048         From John David Anglin.
42049
42050         * m4/strftime.m4: Back out the 2000-04-02 change.
42051         Instead of that change, simply undefine putenv in the test program.
42052
42053 2000-04-05  Jim Meyering  <meyering@lucent.com>
42054
42055         Portability tweaks required for ultrix4.3.
42056         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
42057         getutent.
42058         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
42059         * lib/canon-host.c: Declare strdup.
42060         * lib/path-concat.c: Likewise.
42061         From John David Anglin.
42062
42063 2000-04-04  Jim Meyering  <meyering@lucent.com>
42064
42065         Be more DOS 8.3-friendly.
42066         * lib/ref-add.sin: Renamed from ref-add.sed.in.
42067         * lib/ref-del.sin: Renamed from ref-del.sed.in.
42068         * lib/Makefile.am: Reflect renaming.
42069         Reported by Eli Zaretskii.
42070
42071         Use a temporary file name that won't clash with `charset.alias'
42072         in the DOS 8.3 name space.
42073         * lib/Makefile.am (charset_tmp): Define.
42074         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
42075         (uninstall-local): Likewise.
42076         Reported by Eli Zaretskii.
42077
42078 2000-04-03  Jim Meyering  <meyering@lucent.com>
42079
42080         * m4/gettext.m4: Fix typo in comment.
42081
42082         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
42083         textutils/configure.in).  Suggestion from Paul Eggert.
42084         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
42085
42086 2000-04-02  Paul Eggert  <eggert@twinsun.com>
42087
42088         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
42089         variable in the shell rather than using putenv, which isn't
42090         portable.  This avoids the configure-time inter-test dependency
42091         on the potentially-renamed putenv function.
42092
42093 2000-03-30  Paul Eggert  <eggert@twinsun.com>
42094
42095         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
42096         before checking struct stat.st_blksize, so that
42097         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
42098
42099 2000-03-29  Paul Eggert  <eggert@twinsun.com>
42100
42101         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
42102         since strftime.c uses HAVE_STRFTIME to decide whether to use
42103         the underlying strftime.
42104
42105 2000-03-29  Paul Eggert  <eggert@twinsun.com>
42106
42107         * lib/time/strftime.c (my_strftime): Make sure we call the system
42108         strftime, not ourselves, when invoking the underlying strftime.
42109
42110 2000-03-24  Jim Meyering  <meyering@lucent.com>
42111
42112         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
42113         (charset_alias): Define.
42114         (install-exec-local): Factor out common code.
42115         (uninstall-local): Split lines longer than 80.
42116         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
42117         (SUFFIXES): Define.
42118         (.sed.in.sed): New rule.  Don't redirect directly to $@.
42119         (CLEANFILES): Add ref-add.sed and ref-del.sed.
42120
42121 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
42122
42123         * lib/config.charset: Output a line containing "Packages using this
42124         file".
42125         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
42126         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
42127         ref-del.sed): New rules.
42128
42129 2000-03-17  Jim Meyering  <meyering@lucent.com>
42130
42131         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
42132         Otherwise, include <strings.h>
42133
42134 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
42135
42136         * lib/unicodeio.c (utf8_wctomb): New function.
42137         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
42138         format instead of in UCS-4 with platform dependent endianness.
42139
42140 2000-03-10  Jim Meyering  <meyering@lucent.com>
42141
42142         * m4/lib-check.m4: Look for getspnam in -lgen, too.
42143         From Marco Franzen.
42144
42145 2000-03-07  Paul Eggert  <eggert@twinsun.com>
42146
42147         * lib/savedir.c (savedir): Work even if directory size is
42148         negative; this can happen with some screwy NFS configurations.
42149
42150 2000-03-06  Jim Meyering  <meyering@lucent.com>
42151
42152         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
42153         if it's NULL (because we ran out of memory).  From Bruno Haible.
42154
42155 2000-03-05  Jim Meyering  <meyering@lucent.com>
42156
42157         * lib/localcharset.c ("path-concat.h"): Include.
42158         (get_charset_aliases): Use path_concat instead of ANSI string
42159         concatenation.
42160
42161         * lib/unicodeio.h (PARAMS): Define.
42162         Use it to guard prototype.
42163
42164 2000-03-04  Jim Meyering  <meyering@lucent.com>
42165
42166         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
42167         for lib/localcharset.c.
42168
42169 2000-03-04  Jim Meyering  <meyering@lucent.com>
42170
42171         * lib/Makefile.am (install-exec-local): Create $(libdir) before
42172         installing into it.
42173         (uninstall-local): Uncomment this rule so `make distcheck' works
42174         once again.
42175
42176         * lib/unicodeio.c (<errno.h>): Include it.
42177         (errno): Declare if not defined.
42178
42179         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
42180
42181         * lib/config.charset: New version, incorporating remarks from a linux
42182         i18n mailing list.  From Bruno Haible.
42183
42184 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
42185
42186         * m4/codeset.m4: New file.
42187         * m4/iconv.m4: New file.
42188         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
42189
42190 2000-03-03  Jim Meyering  <meyering@lucent.com>
42191
42192         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
42193
42194 2000-03-02  Jim Meyering  <meyering@lucent.com>
42195
42196         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
42197         the messages come out on separate lines.
42198
42199         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
42200         rather than jm_CHECK_DECLARATIONS.
42201         * m4/decl.m4: Remove now-unused file.
42202
42203         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
42204         geteuid.
42205
42206 2000-03-02  Jim Meyering  <meyering@lucent.com>
42207
42208         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
42209
42210 2000-03-01  Jim Meyering  <meyering@lucent.com>
42211
42212         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
42213         * lib/unicodeio.c: Likewise.
42214
42215 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
42216
42217         * lib/config.charset: New file.
42218         * lib/localcharset.c: New file.
42219         * lib/unicodeio.h, lib/unicodeio.c: New files.
42220         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
42221         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
42222         (noinst_HEADERS): Add unicodeio.h.
42223         (all-local, install-exec-local, charset.alias): New targets.
42224
42225 2000-02-28  Paul Eggert  <eggert@twinsun.com>
42226
42227         * lib/quotearg.c (ALERT_CHAR): New macro.
42228         (quotearg_buffer_restyled): Use it.
42229
42230 2000-02-27  Jim Meyering  <meyering@lucent.com>
42231
42232         * m4/check-decl.m4: Add getenv to the list.
42233
42234 2000-02-27  Jim Meyering  <meyering@lucent.com>
42235
42236         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
42237         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
42238
42239         * lib/backupfile.c: Guard inclusion of stdlib.h with
42240         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
42241         Declare malloc if needed.
42242
42243         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
42244         `#ifndef HAVE_DECL..'
42245         now that autoconf always defines the HAVE_DECL_ symbols.
42246         * lib/human.c: Likewise.
42247         * lib/same.c: Likewise.
42248         * lib/strtoumax.c: Likewise.
42249
42250         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
42251         declaration check was not run.
42252         * lib/hash.c: Likewise.
42253         * lib/human.c: Likewise.
42254         * lib/same.c: Likewise.
42255         * lib/strtoumax.c: Likewise.
42256
42257         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
42258         `.', then first look up the entire `.'-containing string as a login
42259         name.
42260
42261 2000-02-23  Jim Meyering  <meyering@lucent.com>
42262
42263         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
42264         in place of my hack.
42265
42266 2000-02-18  Paul Eggert  <eggert@twinsun.com>
42267
42268         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
42269         (textint): New typedef.
42270         (parser_control): Member year changed from int to textint.
42271         All uses changed.
42272         (YYSTYPE): Removed; replaced by %union with int and textint members.
42273         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
42274         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
42275         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
42276         (tSNUMBER, tUNUMBER): Now of type <textintval>.
42277         (date, number, to_year): Use width of number in digits, not its value,
42278         to determine whether it's a 2-digit year, or a 2-digit time.
42279         (yylex): Store number of digits of numeric tokens.
42280         Reported by John Kendall.
42281
42282         (parser_control): Changed from struct parser_control to typedef (for
42283         consistency).  All uses changed.
42284
42285         (tID): Removed; not used.
42286         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
42287
42288 2000-02-14  Paul Eggert  <eggert@twinsun.com>
42289
42290         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
42291         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
42292
42293 2000-02-12  Jim Meyering  <meyering@lucent.com>
42294
42295         * lib/userspec.c (ISDIGIT): Define it.
42296         (isdigit): Remove definition.
42297         (is_number): Use ISDIGIT, not isdigit.
42298         <libintl.h>: Include.
42299         (_ and N_): Define.
42300         (parse_user_spec): Mark translatable strings.
42301
42302 2000-02-10  Jim Meyering  <meyering@lucent.com>
42303
42304         With these changes, nanosleep.[ch] are finally enough like the other
42305         lib/* replacement files to compile on a few more losing systems.
42306
42307         * lib/nanosleep.h: Don't include config.h.
42308         Remove prototype from declaration of nanosleep.
42309         (PARAMS): Remove now-unneeded definition.
42310         * lib/nanosleep.c: #undef nanosleep.
42311         (rpl_nanosleep): Rename from nanosleep.
42312
42313 2000-02-10  Jim Meyering  <meyering@lucent.com>
42314
42315         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
42316         gnu_nanosleep to rpl_nanosleep.
42317
42318 2000-02-09  Jim Meyering  <meyering@lucent.com>
42319
42320         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
42321         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
42322
42323 2000-02-08  Akim Demaille  <akim@epita.fr>
42324
42325         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
42326         `[' and `]' and remove uses of `changequote'.
42327         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
42328         (AC_SYS_LARGEFILE): Likewise.
42329         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
42330         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
42331         of changequote.
42332         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
42333         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
42334         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
42335         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
42336
42337 2000-02-05  Jim Meyering  <meyering@lucent.com>
42338
42339         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
42340         Remove explicit use of AC_HEADER_TIME.  It is required by
42341         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
42342         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
42343         in autoconf whereby the expansion of the latter ended up preceding
42344         the expansion of its prerequisite, AC_HEADER_TIME.
42345         Reported by Volker Borchert.
42346
42347 2000-02-03  Jim Meyering  <meyering@lucent.com>
42348
42349         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
42350
42351 2000-02-03  Jim Meyering  <meyering@lucent.com>
42352
42353         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
42354         rather than with `#if HAVE_UTMPNAME'.
42355
42356 2000-02-02  Jim Meyering  <meyering@lucent.com>
42357
42358         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
42359         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
42360         Reported by Eli Zaretskii.
42361
42362 2000-02-01  Jim Meyering  <meyering@lucent.com>
42363
42364         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
42365
42366 2000-01-31  Jim Meyering  <meyering@lucent.com>
42367
42368         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
42369         functions.  Add the time.h and sys/time.h headers along with the
42370         AC_REQUIRE'ment of AC_HEADER_TIME.
42371
42372 2000-01-31  Jim Meyering  <meyering@lucent.com>
42373
42374         * lib/nanosleep.h (nanosleep): Guard declaration with
42375         `#if ! HAVE_DECL_NANOSLEEP'.
42376         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
42377         the declaration in that vendor's sys/timers.h.
42378         Reported by Christian Krackowizer.
42379
42380         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
42381         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
42382         (ISPRINT): Likewise.
42383         Reported by Tom Tromey.
42384
42385 2000-01-30  Jim Meyering  <meyering@lucent.com>
42386
42387         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
42388
42389         * m4/prereq.m4 (utmp_includes): Define.
42390         Check for ut_user and ut_name members in both struct utmpx
42391         and struct utmp.
42392
42393 2000-01-30  Jim Meyering  <meyering@lucent.com>
42394
42395         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
42396         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
42397         header files where only utmpx.ut_user is declared.
42398
42399         * lib/readutmp.h (UT_USER): Define.
42400
42401 2000-01-29  Jim Meyering  <meyering@lucent.com>
42402
42403         * m4/lib-check.m4: New file containing library-related checks from
42404         fileutils and sh-utils (textutils had none).
42405
42406 2000-01-28  Jim Meyering  <meyering@lucent.com>
42407
42408         * m4/perl.m4: Change format of warning message to look more like that
42409         from the missing script.  Suggestion from François Pinard.
42410
42411 2000-01-25  Jim Meyering  <meyering@lucent.com>
42412
42413         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
42414         well as time.h in the compile check.
42415         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
42416         Fix typo in cross-compiling case: s/yes/no/.
42417
42418 2000-01-23  Jim Meyering  <meyering@lucent.com>
42419
42420         * m4/jm-macros.m4: Move df-related tests here from
42421         fileutils/configure.in
42422
42423         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
42424         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
42425
42426         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
42427         s/space/ac_fsusage_space/.
42428         (jm_FILE_SYSTEM_USAGE): Take two parameters.
42429
42430         * m4/ftruncate.m4: New file (derived from part of
42431         fileutils/configure.in).
42432         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
42433         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
42434
42435         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
42436         AC_SUBST these here, rather than just in sh-util/configure.in, so
42437         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
42438         all the same.
42439         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
42440         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
42441         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
42442         (AC_SUBST(POW_LIBM)): Likewise.
42443         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
42444
42445 2000-01-23  Jim Meyering  <meyering@lucent.com>
42446
42447         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
42448         obstack.c.
42449
42450 2000-01-22  Jim Meyering  <meyering@lucent.com>
42451
42452         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
42453
42454         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
42455
42456         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
42457         configure.in
42458         (AC_CHECK_HEADERS): Likewise for sh-utils.
42459         (AC_CHECK_HEADERS): Likewise for textutils.
42460         Merge the three lists of headers.
42461
42462         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
42463         from fileutils' configure.in.
42464
42465         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
42466         code. Moved tests into their own function (_jm_DECL_HEADERS) in
42467         check-decl.m4.
42468
42469         * m4/check-decl.m4: Use #if rather than #ifdef.
42470         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
42471         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
42472         (_jm_DECL_HEADERS): Define new function.
42473         (jm_CHECK_DECLARATIONS): Require it.
42474
42475 2000-01-22  Jim Meyering  <meyering@lucent.com>
42476
42477         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
42478         [! HAVE_DECL_STRTOULL]: Declare strtoull.
42479         Required for some AIX systems.  Reported by Christian Krackowizer.
42480         [TESTING] (main): New function.
42481
42482         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
42483         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
42484         letters.
42485
42486         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
42487         iswprint.
42488
42489         * lib/strverscmp.c (ISDIGIT): Define.
42490         (strverscmp): Use ISDIGIT, not isdigit.
42491
42492 2000-01-19  Jim Meyering  <meyering@lucent.com>
42493
42494         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
42495         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
42496         defines `struct timespec' in <sys/time.h>
42497
42498         * m4/c-bs-a.m4: Remove uses of changequote altogether.
42499         Thanks to Akim for explaining.
42500
42501 2000-01-17  Paul Eggert  <eggert@twinsun.com>
42502
42503         * lib/nanosleep.c (nanosleep):
42504         Don't use SA_INTERRUPT to decide whether to call sigaction, as
42505         POSIX.1 doesn't require SA_INTERRUPT and some systems
42506         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
42507         it's been part of POSIX.1 since day 1 (in 1988).
42508
42509 2000-01-17  Jim Meyering  <meyering@lucent.com>
42510
42511         * lib/interlock: Remove unused file.  Reported by François Pinard.
42512
42513 2000-01-16  Paul Eggert  <eggert@twinsun.com>
42514
42515         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
42516         alert, backslash, formfeed, and vertical tab unnecessarily in
42517         shell quoting style.
42518
42519 2000-01-16  Jim Meyering  <meyering@lucent.com>
42520
42521         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
42522         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
42523         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
42524         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
42525
42526 2000-01-16  Jim Meyering  <meyering@lucent.com>
42527
42528         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
42529         because the latter didn't work.
42530
42531 2000-01-15  Jim Meyering  <meyering@lucent.com>
42532
42533         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
42534         (AC_REPLACE_FUNCS): Add memcpy and memset.
42535         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
42536         Add strpbrk.
42537         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
42538
42539 2000-01-12  Jim Meyering  <meyering@lucent.com>
42540
42541         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
42542         (jm_PREREQ): Use it.
42543         (jm_PREREQ_READUTMP): New macro.
42544         (jm_PREREQ): Use it.
42545
42546 2000-01-11  Paul Eggert  <eggert@twinsun.com>
42547
42548         Quote multibyte characters correctly.
42549         * m4/c-bs-a.m4: New file.
42550         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
42551         (jm_PREREQ): Use it.
42552
42553 2000-01-11  Paul Eggert  <eggert@twinsun.com>
42554
42555         * m4/uintmax_t.m4: Port to autoconf 2.13.
42556
42557 2000-01-08  Jim Meyering  <meyering@ascend.com>
42558
42559         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
42560         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
42561
42562 2000-01-04  Jim Meyering  <meyering@ascend.com>
42563
42564         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
42565         jm_STRUCT_DIRENT_D_TYPE.
42566         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
42567         jm_STRUCT_DIRENT_D_INO.
42568         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
42569         jm_STRUCT_UTIMBUF.
42570         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
42571         renamings.
42572         * m4/utime.m4: Likewise.
42573
42574         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
42575         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
42576
42577 2000-01-03  Paul Eggert  <eggert@twinsun.com>
42578
42579         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
42580         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
42581
42582 2000-01-02  Jim Meyering  <meyering@ascend.com>
42583
42584         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
42585         remember if this is necessary.
42586
42587 1999-12-26  Jim Meyering  <meyering@ascend.com>
42588
42589         * m4/jm-macros.m4: Use it here.
42590         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
42591
42592 1999-12-23  Jim Meyering  <meyering@ascend.com>
42593
42594         * m4/jm-macros.m4: Check for clock_gettime (moved from
42595         fileutils/configure.in)
42596         Check for gettimeofday.
42597
42598 1999-12-20  Jim Meyering  <meyering@ascend.com>
42599
42600         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
42601         autoconf-2.14a-1999-12-20.
42602
42603 1999-12-19  Jim Meyering  <meyering@ascend.com>
42604
42605         * m4/lstat-slash.m4: New file.
42606         * m4/jm-macros.m4: Use the new macro:
42607         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
42608
42609 1999-12-07  Jim Meyering  <meyering@ascend.com>
42610
42611         * m4/perl.m4: Require that File::Compare be available, too.
42612         Too many systems seem to lack it.
42613
42614         * m4/strftime.m4: Add checks for most of the cpp macros tested in
42615         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
42616
42617 1999-11-18  Paul Eggert  <eggert@twinsun.com>
42618
42619         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
42620         problem with the QNX 4.25 shell, which doesn't propagate exit
42621         status of failed commands inside shell assignments.
42622
42623 1999-11-17  Jim Meyering  <meyering@ascend.com>
42624
42625         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
42626
42627 1999-11-07  Jim Meyering  <meyering@ascend.com>
42628
42629         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
42630
42631 1999-11-06  Jim Meyering  <meyering@ascend.com>
42632
42633         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
42634         * m4/jm-macros.m4 (jm_MACROS): Use it here.
42635
42636 1999-11-05  Jim Meyering  <meyering@ascend.com>
42637
42638         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
42639         configure.in of textutils, fileutils, and sh-utils into this one
42640         (shared between those packages) file.
42641         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
42642         AC_STRUCT_ST_BLKSIZE.
42643
42644 1999-11-03  Jim Meyering  <meyering@ascend.com>
42645
42646         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
42647         of AC_CHECK_TYPE checks includes unistd.h.
42648         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
42649         Suggestion from Akim Demaille.
42650
42651 1999-10-30  Jim Meyering  <meyering@ascend.com>
42652
42653         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
42654         m4-quoted string.
42655         * m4/ls-mntd-fs.m4: Likewise.
42656         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
42657         * m4/jm-winsz1.m4: Likewise.
42658
42659         * m4/const.m4: Remove file, since the fix made it into the experimental
42660         version of autoconf.
42661         * m4/mktime.m4: Likewise.
42662
42663         * m4/check-type.m4: Remove file, now that the latest version of
42664         AC_CHECK_TYPE takes a third arg to specify additional #includes.
42665
42666         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
42667         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
42668         AC_CHECK_TYPE.
42669
42670 1999-10-04  Jim Meyering  <meyering@ascend.com>
42671
42672         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
42673
42674 1999-09-22  Paul Eggert  <eggert@twinsun.com>
42675
42676         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
42677         2.95.1 bug with HP-UX 10.20.
42678
42679 1999-09-17  Jim Meyering  <meyering@ascend.com>
42680
42681         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
42682         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
42683         due to missing strdup (against sh-utils-2.0).
42684
42685 1999-08-29  Jim Meyering  <meyering@ascend.com>
42686
42687         * m4/jm-macros.m4: Require jm_BISON.
42688         * m4/bison.m4: New file.
42689
42690 1999-08-17  Paul Eggert  <eggert@twinsun.com>
42691
42692         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
42693         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
42694
42695 1999-08-05  Jim Meyering  <meyering@ascend.com>
42696
42697         * m4/getline.m4: Rename test file from conftestdata to conftest.data
42698         to avoid conflicts with `conftest' on 8+3 filesystems.
42699         Suggestion from Eli Zaretskii.
42700
42701 1999-08-04  Jim Meyering  <meyering@ascend.com>
42702
42703         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
42704         fileutils and sh-utils (textutils's getline test was inadequate).
42705         (AM_FUNC_GETLINE): Run this test.
42706         (AC_CHECK_FUNCS): Check for getdelim.
42707         Reported by Bob Proulx.
42708
42709 1999-08-02  Jim Meyering  <meyering@ascend.com>
42710
42711         * m4/jm-macros.m4: Add a comment.
42712
42713 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42714
42715         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
42716         <inttypes.h> defines strtoumax as a macro (and not as a
42717         function).
42718
42719 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42720
42721         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
42722         that we can shift, multiply and divide unsigned long long
42723         values; Ultrix cc can't do it.
42724
42725 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42726
42727         * m4/mktime.m4: New file, which is a preview of what should appear
42728         in the next public autoconf release.
42729
42730 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42731
42732         * m4/lfs.m4: Remove this file.
42733         * m4/largefile.m4: New file.  It contains the old contents of
42734         lfs.m4, except that all names with prefix AC_LFS have been
42735         changed to use the prefix AC_SYS_LARGEFILE instead, to be
42736         compatible with future autoconf versions.  Also, some minor m4
42737         quoting problems have been fixed.
42738
42739 1999-08-01  Paul Eggert  <eggert@twinsun.com>
42740
42741         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
42742         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
42743         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
42744         and simplify the shell code.
42745
42746 1999-08-01  Jim Meyering  <meyering@ascend.com>
42747
42748         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
42749         m4.
42750
42751 1999-07-20  Jim Meyering  <meyering@ascend.com>
42752
42753         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
42754
42755 1999-07-15  Jim Meyering  <meyering@ascend.com>
42756
42757         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
42758
42759 1999-05-22  Jim Meyering  <meyering@ascend.com>
42760
42761         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
42762
42763 1999-05-20  Jim Meyering  <meyering@ascend.com>
42764
42765         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
42766         Add a colon after each `then' in case $4 is empty.
42767
42768 1999-05-16  Jim Meyering  <meyering@ascend.com>
42769
42770         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
42771
42772 1999-05-10  Jim Meyering  <meyering@ascend.com>
42773
42774         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
42775
42776         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
42777         AC_FUNC_MKTIME.
42778
42779 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
42780
42781         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
42782
42783 1999-05-04  Paul Eggert  <eggert@twinsun.com>
42784
42785         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
42786         not CPPFLAGS, so that linking works correctly in IRIX.
42787
42788 1999-04-30  Paul Eggert  <eggert@twinsun.com>
42789
42790         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
42791
42792 1999-04-20  Paul Eggert  <eggert@twinsun.com>
42793
42794         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
42795         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
42796         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
42797         jm_AC_TYPE_UNSIGNED_LONG_LONG.
42798         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
42799
42800         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
42801
42802 1999-04-20  Jim Meyering  <meyering@ascend.com>
42803
42804         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
42805         AC_REPLACE xstroull if necessary.  From Paul Eggert.
42806         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
42807
42808 1999-04-18  Jim Meyering  <meyering@ascend.com>
42809
42810         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
42811         * m4/jm-macros.m4: Use it.
42812
42813 1999-04-06  Jim Meyering  <meyering@ascend.com>
42814
42815         * m4/strftime.m4: Remove test for %f.
42816
42817 1999-03-29  Jim Meyering  <meyering@ascend.com>
42818
42819         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
42820         superset of the AC_TYPE_* checks in the textutils, fileutils,
42821         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
42822         AC_TYPE_PID_T.
42823
42824 1999-03-28  Jim Meyering  <meyering@ascend.com>
42825
42826         * m4/jm-macros.m4: Define GNU_PACKAGE here.
42827         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
42828         replaced e.g., in the *.sh files of the sh-utils.
42829
42830 1999-03-20  Jim Meyering  <meyering@ascend.com>
42831
42832         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
42833         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
42834         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
42835
42836 1999-03-19  Jim Meyering  <meyering@ascend.com>
42837
42838         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
42839
42840 1999-03-12  Jim Meyering  <meyering@ascend.com>
42841
42842         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
42843
42844 1999-03-07  Jim Meyering  <meyering@ascend.com>
42845
42846         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
42847         declared.
42848
42849 1999-02-17  Jim Meyering  <meyering@ascend.com>
42850
42851         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
42852         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
42853
42854 1999-02-07  Jim Meyering  <meyering@ascend.com>
42855
42856         * m4/group-member.m4: New file -- extracted from sh-utils'
42857         configure.in.
42858
42859         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
42860         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
42861
42862 1999-02-06  Jim Meyering  <meyering@ascend.com>
42863
42864         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
42865         * m4/fnmatch.m4: Likewise.
42866         * m4/getgroups.m4: Likewise.
42867         * m4/lstat.m4: Likewise.
42868         * m4/malloc.m4: Likewise.
42869         * m4/putenv.m4: Likewise.
42870         * m4/realloc.m4: Likewise.
42871         * m4/regex.m4: Likewise.
42872         * m4/stat.m4: Likewise.
42873         * m4/strftime.m4: Likewise.
42874         Suggestion from Alain Magloire.
42875
42876         * m4/chown.m4: Use `.$ac_objext', not `.o'.
42877         * m4/fnmatch.m4: Likewise.
42878         * m4/getgroups.m4: Likewise.
42879         * m4/getline.m4: Likewise.
42880         * m4/lstat.m4: Likewise.
42881         * m4/malloc.m4: Likewise.
42882         * m4/memcmp.m4: Likewise.
42883         * m4/putenv.m4: Likewise.
42884         * m4/realloc.m4: Likewise.
42885         * m4/regex.m4: Likewise.
42886         * m4/stat.m4: Likewise.
42887         * m4/strftime.m4: Likewise.
42888         Suggestion from Alain Magloire.
42889
42890         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
42891         an argument.
42892
42893         * m4/regex.m4: Add a run-time Test for proper operation of
42894         re_compile_pattern.
42895
42896 1999-01-31  Jim Meyering  <meyering@ascend.com>
42897
42898         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
42899
42900 1999-01-30  Jim Meyering  <meyering@ascend.com>
42901
42902         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
42903
42904         * m4/jm-mktime.m4: Make this a wrapper around the official
42905         AM_FUNC_MKTIME rather than my private copy, now that the official one
42906         is up to date.
42907         * m4/mktime.m4: Remove file.
42908
42909         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
42910         * m4/uptime.m4: Likewise.
42911         * m4/uintmax_t.m4: Likewise.
42912
42913 1999-01-28  Jim Meyering  <meyering@ascend.com>
42914
42915         * m4/jm-macros.m4: Use jm_AFS.
42916         * m4/afs.m4: New file (from fileutils' configure.in).
42917
42918         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
42919         * m4/chown.m4: Likewise.
42920         * m4/d-ino.m4: Likewise.
42921         * m4/d-type.m4: Likewise.
42922         * m4/fnmatch.m4: Likewise.
42923         * m4/getgroups.m4: Likewise.
42924         * m4/gettext.m4: Likewise.
42925         * m4/jm-mktime.m4: Likewise.
42926         * m4/jm-winsz2.m4: Likewise.
42927         * m4/lcmessage.m4: Likewise.
42928         * m4/ls-mntd-fs.m4: Likewise.
42929         * m4/malloc.m4: Likewise.
42930         * m4/memcmp.m4: Likewise.
42931         * m4/putenv.m4: Likewise.
42932         * m4/realloc.m4: Likewise.
42933         * m4/st_mtim.m4: Likewise.
42934         * m4/strftime.m4: Likewise.
42935
42936 1999-01-16  Jim Meyering  <meyering@ascend.com>
42937
42938         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
42939         (ARGMATCH_DIE_DECL): Define.
42940
42941 1999-01-12  Jim Meyering  <meyering@ascend.com>
42942
42943         * m4/Makefile.am.in: Rewrite to avoid using fmt.
42944         Reported by Lars Hecking.
42945
42946 1999-01-10  Jim Meyering  <meyering@ascend.com>
42947
42948         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
42949         gross kludge.
42950         * m4/inttypes_h.m4: Likewise.
42951         * m4/lstat.m4: Likewise.
42952         * m4/malloc.m4: Likewise.
42953         * m4/readdir.m4: Likewise.
42954         * m4/realloc.m4: Likewise.
42955         * m4/st_dm_mode.m4: Likewise.
42956         * m4/stat.m4: Likewise.
42957         * m4/utimbuf.m4: Likewise.
42958         * m4/utimes.m4: Likewise.
42959
42960         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
42961         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
42962         comments in config.h.in are meaningful.
42963
42964         * m4/jm-macros.m4: Require autoconf-2.13 here.
42965
42966         * m4/regex.m4: By default, don't use the included regex.c on systems
42967         with glibc 2.  Suggestion from Uli Drepper.
42968
42969 1999-01-02  Jim Meyering  <meyering@ascend.com>
42970
42971         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
42972
42973 1998-12-18  Jim Meyering  <meyering@ascend.com>
42974
42975         * m4/Makefile.am.in (Makefile.am): Simplify rule.
42976         Based on a suggestion from Lars Hecking.
42977
42978 1998-11-16  Paul Eggert  <eggert@twinsun.com>
42979
42980         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
42981
42982 1998-11-16  Jim Meyering  <meyering@ascend.com>
42983
42984         * m4/lfs.m4: Double-quote the `uname...` expression.
42985
42986 1998-11-14  Jim Meyering  <meyering@ascend.com>
42987
42988         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
42989         * m4/stat.m4: Likewise.
42990
42991 1998-11-03  Jim Meyering  <meyering@ascend.com>
42992
42993         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
42994         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
42995
42996 1998-10-18  Jim Meyering  <meyering@ascend.com>
42997
42998         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
42999
43000 1998-10-17  Jim Meyering  <meyering@ascend.com>
43001
43002         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
43003         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
43004         calls for those previously hard-coded headers.  Instead, take a new
43005         parameter.
43006         (jm_CHECK_DECLARATIONS): Reflect interface change.
43007         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
43008         (jm_CHECK_DECL_LOCALTIME_R): New macro.
43009
43010         * m4/mktime.m4: Test for spring-forward gap before long-running test.
43011
43012 1998-10-14  Jim Meyering  <meyering@ascend.com>
43013
43014         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
43015         instead of "TZ=America/Vancouver".  From Paul Eggert.
43016
43017 1998-10-11  Jim Meyering  <meyering@ascend.com>
43018
43019         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
43020         This adds a test for a recently added compatibility fix for mktime.c.
43021         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
43022
43023 1998-09-27  Jim Meyering  <meyering@ascend.com>
43024
43025         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
43026
43027         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
43028         ../configure.in, including a change from Gordon Matzigkeit to allow
43029         cross-compiling for the Hurd.
43030
43031         * m4/glibc.m4: New file/macro to test for the GNU C Library
43032         versions 1 and 2.  From Gordon Matzigkeit.
43033         Indent.
43034
43035 1998-09-21  Jim Meyering  <meyering@ascend.com>
43036
43037         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
43038
43039 1998-08-18  Paul Eggert  <eggert@twinsun.com>
43040
43041         Port nanosecond-resolution times to UnixWare 2.1.2 and
43042         pedantic Solaris 2.6.
43043
43044         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
43045         AC_STRUCT_ST_MTIM.
43046         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
43047         Generate name of ns member, instead of just 1 or undef.
43048         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
43049
43050 1998-08-15  Jim Meyering  <meyering@ascend.com>
43051
43052         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
43053         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
43054         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
43055         instead of jm_TYPE_SSIZE_T.
43056
43057 1998-08-12  Jim Meyering  <meyering@ascend.com>
43058
43059         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
43060
43061 1998-08-02  Jim Meyering  <meyering@ascend.com>
43062
43063         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
43064         in acconfig.h manually.
43065
43066 1998-07-31  Paul Eggert  <eggert@twinsun.com>
43067
43068         * m4/st_mtim.m4: New file.
43069
43070 1998-07-28  Jim Meyering  <meyering@ascend.com>
43071
43072         * m4/utimes.m4: Undef stat.
43073
43074 1998-07-25  Jim Meyering  <meyering@ascend.com>
43075
43076         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
43077         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
43078
43079 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
43080
43081         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
43082         uid and gid actually remain unchanged.
43083
43084 1998-07-07  Jim Meyering  <meyering@ascend.com>
43085
43086         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
43087
43088 1998-07-04  Jim Meyering  <meyering@ascend.com>
43089
43090         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
43091         to prove that this macro can be used in packages without regex.c.
43092
43093 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
43094
43095         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
43096         is to be used.
43097
43098 1998-07-03  Jim Meyering  <meyering@ascend.com>
43099
43100         * m4/gettext.m4: Add -lintl if it's found to be necessary.
43101
43102         * m4/gettext.m4: New file -- from gettext-0.10.35.
43103         * m4/lcmessage.m4: Likewise.
43104         * m4/progtest.m4: Likewise.
43105
43106         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
43107         * m4/jm-macros.m4: Require the new macro.
43108
43109 1998-06-29  Jim Meyering  <meyering@ascend.com>
43110
43111         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
43112         for the definition of NGROUPS (used in a system header included
43113         by sys/mount.h).
43114
43115 1998-06-28  Jim Meyering  <meyering@ascend.com>
43116
43117         * m4/ls-mntd-fs.m4: New file.
43118         * m4/fstypename.m4: New file.
43119
43120         * m4/jm-macros.m4: Require the new macro.
43121         * m4/jm-glibc-io.m4: New file.
43122
43123 1998-05-19  Jim Meyering  <meyering@ascend.com>
43124
43125         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
43126         * m4/lchown.m4: New file.
43127
43128         * m4/Makefile.am.in: New file.
43129         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
43130
43131 1998-05-14  Jim Meyering  <meyering@ascend.com>
43132
43133         * m4/Makefile.am (EXTRA_DIST): Add them.
43134         * m4/jm-macros.m4: New file.
43135         * m4/utimbuf.m4: New file.
43136
43137 1998-05-12  Jim Meyering  <meyering@ascend.com>
43138
43139         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
43140
43141 1998-05-11  Jim Meyering  <meyering@ascend.com>
43142
43143         * m4/isc-posix.m4: New file.
43144
43145 1998-05-10  Jim Meyering  <meyering@ascend.com>
43146
43147         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
43148
43149 1998-05-09  Jim Meyering  <meyering@ascend.com>
43150
43151         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
43152         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
43153         with automake.
43154
43155         * m4/ssize_t.m4: New file.
43156         * m4/mktime.m4: Remove file -- the new automake has this now.
43157
43158 1998-04-26  Jim Meyering  <meyering@ascend.com>
43159
43160         * m4/assert.m4: New file.
43161         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
43162
43163 1998-04-05  Jim Meyering  <meyering@ascend.com>
43164
43165         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
43166         (jm_PREREQ): Use it here.
43167
43168 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
43169
43170         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
43171         in acconfig.h.
43172
43173 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
43174
43175         * m4/prereq.m4: New file.
43176         * m4/error.m4: New file.
43177         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
43178
43179 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
43180
43181         * m4/getline.m4: Don't set am_cv_func_working_getline before the
43182         cache-check for the same variable -- that defeated the purpose of
43183         the test; the test program was never run.  This was a problem only
43184         on systems with losing getline functions -- HP-UX 10.20 is one.
43185         Reported by Bjorn Helgaas.
43186
43187 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
43188
43189         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
43190
43191 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
43192
43193         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
43194
43195         * m4/const.m4: New file.  Use an initializer in this declaration
43196         typedef int charset[2]; const charset x;
43197         Reported by Bob Glickstein.
43198
43199 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
43200
43201         * m4/chown.m4: Fix reversed types on -1 args to chown.
43202         From Kaveh Ghazi.
43203
43204 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
43205
43206         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
43207         Add lseek and memchr.
43208
43209         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
43210         T.E.Dickey <dickey@clark.net> said that some older preprocessors
43211         have a 20-character limit on names.
43212
43213 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
43214
43215         * m4/inttypes_h.m4: New file.
43216         * m4/uintmax_t.m4: New file.
43217         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
43218
43219
43220         -----
43221
43222         Local Variables:
43223         coding: utf-8
43224         End:
43225
43226         Copyright (C) 1997-2008 Free Software Foundation, Inc.
43227
43228         Copying and distribution of this file, with or without
43229         modification, are permitted provided the copyright notice
43230         and this notice are preserved.