9cabf84b2747f2c54c78ee8b66c4aece8cad59d9
[gnulib.git] / ChangeLog
1 2008-06-09  Jim Meyering  <meyering@redhat.com>
2         and Ondřej Vašík  <ovasik@redhat.com>
3
4         utimens.c: correct kernel bug work-around
5         Ondřej Vašík found that the invalid return value of 280 indicates
6         failure, not success, and the kernel bug we're trying to work
7         around affects not just the utimensat call, but also the fallback
8         futimens call.
9         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
10         not success.
11         [HAVE_FUTIMENS]: Use the same work-around, here.
12
13 2008-06-09  Jim Meyering  <meyering@redhat.com>
14
15         add more guards around definition of ACE_-related code
16         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
17         ALLOW and ACE_OWNER are also defined.
18
19 2008-06-08  Bruno Haible  <bruno@clisp.org>
20
21         * lib/acl-internal.h: Add me as co-author.
22         * lib/file-has-acl.c: Likewise.
23         * lib/set-mode-acl.c: Likewise.
24         * lib/copy-acl.c: Likewise.
25
26 2008-06-08  Bruno Haible  <bruno@clisp.org>
27
28         Add support for AIX ACLs.
29         * lib/acl-internal.h (acl_nontrivial): New declaration.
30         * lib/file-has-acl.c (acl_nontrivial): New function.
31         (file_has_acl): Add implementation using AIX 4 ACL API.
32         * lib/set-mode-acl.c (qset_acl): Likewise.
33         * lib/copy-acl.c (qcopy_acl): Likewise.
34
35 2008-06-08  Bruno Haible  <bruno@clisp.org>
36
37         Add support for HP-UX ACLs.
38         * lib/acl-internal.h (acl_nontrivial): New declaration.
39         * lib/file-has-acl.c (acl_nontrivial): New function.
40         (file_has_acl): Add implementation using HP-UX 11 ACL API.
41         * lib/set-mode-acl.c (qset_acl): Likewise.
42         * lib/copy-acl.c (qcopy_acl): Likewise.
43
44 2008-06-08  Bruno Haible  <bruno@clisp.org>
45
46         Add support for Cygwin ACLs.
47         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
48         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
49         the chmod_or_fchmod call.
50         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
51
52 2008-06-08  Bruno Haible  <bruno@clisp.org>
53
54         Fix bug with setuid modes in Solaris 10+ code.
55         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
56         succeeded, when the mode contains some special bits.
57
58 2008-06-08  Bruno Haible  <bruno@clisp.org>
59
60         Add support for Solaris 7..10 ACLs.
61         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
62         declarations.
63         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
64         functions.
65         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
66         * lib/set-mode-acl.c (qset_acl): Likewise.
67         * lib/copy-acl.c (qcopy_acl): Likewise.
68
69 2008-06-08  Bruno Haible  <bruno@clisp.org>
70
71         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
72         declaration.
73         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
74         (acl_access_nontrivial): Remove MacOS X case.
75         (file_has_acl): Use acl_extended_nontrivial.
76         * lib/copy-acl.c (qcopy_acl): Likewise.
77
78 2008-06-08  Bruno Haible  <bruno@clisp.org>
79
80         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
81
82 2008-06-08  Jim Meyering  <meyering@redhat.com>
83
84         * modules/acl (Maintainer): Add Bruno Haible.
85
86 2008-06-07  Bruno Haible  <bruno@clisp.org>
87
88         Improve support for Tru64 ACLs.
89         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
90         ACL on OSF/1.
91
92 2008-06-07  Bruno Haible  <bruno@clisp.org>
93
94         Add support for MacOS X ACLs.
95         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
96         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
97         * lib/set-mode-acl.c (qset_acl): Likewise.
98         * lib/copy-acl.c (qcopy_acl): Likewise.
99
100 2008-06-07  Bruno Haible  <bruno@clisp.org>
101
102         Fix memory leak introduced on 2008-05-22.
103         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
104         use.
105
106 2008-06-07  Bruno Haible  <bruno@clisp.org>
107
108         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
109         to construct an empty ACL.
110
111 2008-06-07  Bruno Haible  <bruno@clisp.org>
112
113         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
114         precisely.
115         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
116
117 2008-06-07  Bruno Haible  <bruno@clisp.org>
118
119         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
120         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
121
122 2008-06-07  Bruno Haible  <bruno@clisp.org>
123
124         * doc/posix-functions/_setjmp.texi: Explain the use of this function
125         regardless of POSIX.
126         * doc/posix-functions/_longjmp.texi: Likewise.
127         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
128         SystemV platform in this case.
129
130 2008-06-06  Eric Blake  <ebb9@byu.net>
131
132         Document abort() bugs.
133         * doc/posix-functions/abort.texi (abort): Mention anomalies.
134
135         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
136         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
137         sigsetjmp.
138         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
139         siglongjmp, but only as a macro.
140         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
141         is obsolete.
142         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
143
144         Tweak documentation to cover cygwin argz bugs.
145         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
146         argz bug fix; no code change needed since no cygwin releases
147         occurred between the last fix and the bug being tested.
148         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
149         module and recently fixed cygwin bugs.
150         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
151         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
152         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
153         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
154         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
155         Likewise.
156         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
157         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
158         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
159         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
160         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
161         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
162         Likewise.
163
164         Avoid gcc warning on cygwin.
165         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
166         !ACL_NO_TRIVIAL]: Avoid unused variable.
167
168 2008-06-05  Eric Blake  <ebb9@byu.net>
169
170         Be tolerant of UNKNOWN version in gnulib-tool test dir.
171         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
172         git-version-gen fails to come up with a version.
173         Reported by Simon Josefsson.
174
175 2008-06-05  Jim Meyering  <meyering@redhat.com>
176             Paul Eggert  <eggert@cs.ucla.edu>
177
178         utimens.c: work around a probable Linux kernel bug
179         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
180         appears to be a kernel bug that causes utimensat to return 280
181         instead of 0, indicating success.
182
183 2008-06-04  Bruno Haible  <bruno@clisp.org>
184
185         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
186         2008-06-01 commit.
187
188 2008-06-04  Bruno Haible  <bruno@clisp.org>
189
190         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
191         * lib/file-has-acl.c (acl_access_nontrivial): New function.
192         (file_has_acl): Use it. Save errno afterwards.
193         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
194
195 2008-06-03  Bruno Haible  <bruno@clisp.org>
196
197         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
198         draft code. Simplify #ifs.
199         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
200         Put Solaris code after POSIX-draft code. Fix comments regarding
201         Solaris 10, HP-UX. Mention Cygwin.
202         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
203
204 2008-06-03  Eric Blake  <ebb9@byu.net>
205
206         Provide fallback for older kernels.
207         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
208         Provide runtime fallback if kernel lacks support.
209         Reported by Mike Frysinger.
210
211 2008-06-02  Bruno Haible  <bruno@clisp.org>
212
213         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
214         it exists.
215
216 2008-06-02  Bruno Haible  <bruno@clisp.org>
217
218         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
219         * lib/copy-acl.c (qcopy_acl): Update comment.
220
221 2008-06-02  Bruno Haible  <bruno@clisp.org>
222
223         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
224         like ACL APIs.
225
226 2008-06-02  Bruno Haible  <bruno@clisp.org>
227
228         * tests/test-file-has-acl.sh: Use different code for Cygwin.
229         * tests/test-set-mode-acl.sh: Likewise.
230         * tests/test-copy-acl.sh: Likewise.
231         * tests/test-copy-file.sh: Likewise.
232
233 2008-06-02  Bruno Haible  <bruno@clisp.org>
234
235         * tests/test-file-has-acl.sh: Remove unused code.
236
237 2008-06-01  Bruno Haible  <bruno@clisp.org>
238
239         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
240         (copy_acl): Just a wrapper around qcopy_acl that emits the error
241         messages.
242         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
243
244 2008-06-01  Bruno Haible  <bruno@clisp.org>
245
246         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
247         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
248         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
249         APIs.
250         * modules/acl-tests (configure.ac): Remove tests now contained in
251         m4/acl.m4.
252
253 2008-06-02  Jim Meyering  <meyering@redhat.com>
254
255         announce-gen: use a better key-server host name
256         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
257         it may be more consistently reliable.  Suggested by Werner Koch
258         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
259
260 2008-06-01  Bruno Haible  <bruno@clisp.org>
261
262         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
263         Reported by Voroskoi Andras <voroskoi@gmail.com>.
264
265 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
266
267         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
268
269 2008-06-01  Bruno Haible  <bruno@clisp.org>
270
271         New ACL tests.
272         * tests/test-file-has-acl.sh: New file.
273         * tests/test-file-has-acl.c: New file.
274         * tests/test-set-mode-acl.sh: New file.
275         * tests/test-set-mode-acl.c: New file.
276         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
277         * tests/test-copy-acl.c: New file.
278         * modules/acl-tests: New file, based on modules/copy-file-tests.
279         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
280         (Depends-on): Add acl-tests.
281         (configure.ac): Remove checks.
282         (Makefile.am): Don't create test-sameacls program here any more.
283
284 2008-06-01  Bruno Haible  <bruno@clisp.org>
285
286         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
287         * tests/test-sameacls.c: Include progname.h.
288         (main): Invoke set_program_name. Portability fixes for MacOS X,
289         Solaris, HP-UX.
290
291 2008-06-01  Bruno Haible  <bruno@clisp.org>
292
293         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
294         function.
295         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
296
297 2008-06-01  Bruno Haible  <bruno@clisp.org>
298
299         * modules/rpmatch (Depends-on): Add strdup.
300
301 2008-06-01  Bruno Haible  <bruno@clisp.org>
302
303         * lib/pipe.c: Include unistd-safer.h.
304         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
305         * modules/pipe (Depends-on): Add unistd-safer.
306
307 2008-05-30  Simon Josefsson  <simon@josefsson.org>
308
309         * modules/autobuild (configure.ac): Call AB_INIT.
310
311 2008-05-30  Simon Josefsson  <simon@josefsson.org>
312
313         * tests/test-getaddrinfo.c: Don't print debug messages by default.
314         Suggested by Bruno Haible <bruno@clisp.org>.
315
316 2008-05-30  Simon Josefsson  <simon@josefsson.org>
317
318         * tests/test-base64.c: Cast size_t to unsigned long when invoking
319         printf.  Use %lu instead of %d.  Reported by Bruno Haible
320         <bruno@clisp.org>.
321
322 2008-05-29  Eric Blake  <ebb9@byu.net>
323
324         Prefer new POSIX 200x interfaces over futimesat.
325         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
326         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
327         when available.
328         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
329
330 2008-05-28  Bruno Haible  <bruno@clisp.org>
331
332         * modules/stpcpy (License): Change to LGPLv2+.
333         Requested by David Lutterkort <dlutter@redhat.com>.
334
335 2008-05-27  Bruno Haible  <bruno@clisp.org>
336
337         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
338         current mingw.
339         Reported by Jose E. Marchesi <jemarch@gnu.org>.
340
341 2008-05-27  Bruno Haible  <bruno@clisp.org>
342
343         * modules/iconv_open (Link): New section, from module 'iconv'.
344         * modules/striconv (Link): Likewise.
345         * modules/striconveh (Link): Likewise.
346         * modules/xstriconv (Link): Likewise.
347         * modules/unicodeio (Link): Likewise.
348         * modules/propername (Link): Likewise.
349         Reported by Jim Meyering.
350
351 2008-05-26  Jim Meyering  <meyering@redhat.com>
352
353         sha256: do not artificially restrict buffer length to be < 2^32
354         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
355         uint32_t to size_t.
356         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
357         to match.
358
359         avoid unaligned access errors, e.g., on sparc
360         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
361         direct access through a possibly-unaligned uint64* pointer.
362         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
363         direct access through a possibly-unaligned uint32* pointer.
364         Prompted by this patch from Tom "spot" Callaway:
365         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
366
367         sha512.c: fix typo in comment
368         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
369
370 2008-05-25  Bruno Haible  <bruno@clisp.org>
371
372         * lib/set-mode-acl.c: Renamed from lib/acl.c.
373         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
374         (Makefile.am): Update lib_SOURCES.
375
376 2008-05-25  Bruno Haible  <bruno@clisp.org>
377
378         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
379
380 2008-05-25  Jim Meyering  <meyering@redhat.com>
381
382         useless-if-before-free: freed expr may have white-space differences
383         * build-aux/useless-if-before-free: Recognize cases in which the
384         freed expression differs from the tested one in embedded white
385         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
386         $1 was used, so we can't make any regexp shy.  Improved tests now
387         detect this.
388
389         useless-if-before-free: accept white space in the expression.
390         * build-aux/useless-if-before-free: For now, any white space
391         in the expression must be identical in the free argument.
392
393         useless-if-before-free: efficiency tweak
394         * build-aux/useless-if-before-free: Make the expression-matching
395         regexp "shy".
396         Make the *outer* regexp shy, not the expr-matching one.
397
398         update code-in-comment to accept cast of free arg
399         * build-aux/useless-if-before-free: Update regexp.
400
401 2008-05-25  Bruno Haible  <bruno@clisp.org>
402
403         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
404         * modules/copy-file-tests (Files, Makefile.am): Update.
405         * tests/test-copy-file.c (func_test_copy): Update.
406
407 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
408
409         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
410
411 2008-05-23  Bruno Haible  <bruno@clisp.org>
412
413         Improve support for ACLs on OSF/1.
414         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
415         Remove fallback for unknown flavors of ACLs.
416
417 2008-05-22  Bruno Haible  <bruno@clisp.org>
418
419         Add support for ACLs on OSF/1.
420         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
421         replacements.
422         (acl_free_text): New macro fallback.
423         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
424         acl_free.
425         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
426         acl_free_text function. Require AC_C_INLINE.
427
428 2008-05-22  Bruno Haible  <bruno@clisp.org>
429
430         Make copy_acl work on MacOS X 10.5.
431         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
432         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
433         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
434         If MODE_INSIDE_ACL, don't assume that every system has the same text
435         representation for ACLs as FreeBSD.
436         * lib/copy-acl.c (copy_acl): Add support for platforms with
437         !MODE_INSIDE_ACL.
438         * lib/file-has-acl.c (file_has_acl): Likewise.
439         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
440         FreeBSD, MacOS X, or IRIX, respectively.
441
442 2008-05-22  Bruno Haible  <bruno@clisp.org>
443
444         * lib/acl.h: Don't include <sys/acl.h>.
445         (GETACLCNT): Move fallback to lib/acl-internal.h.
446         * lib/acl-internal.h: Include <sys/acl.h> here.
447         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
448
449 2008-05-22  Bruno Haible  <bruno@clisp.org>
450
451         Split off copy_acl function to separate file.
452         * lib/copy-acl.c: New file, extracted from lib/acl.c.
453         * lib/acl.c (copy_acl): Moved function to separate file.
454         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
455         * modules/acl (Files): Add lib/copy-acl.c.
456         (Makefiles.am): Augment lib_SOURCES.
457
458 2008-05-22  Bruno Haible  <bruno@clisp.org>
459
460         * modules/copy-file-tests: New file.
461         * tests/test-copy-file.sh: New file.
462         * tests/test-copy-file.c: New file.
463         * tests/test-copy-file-sameacls.c: New file.
464
465 2008-05-22  Eric Blake  <ebb9@byu.net>
466
467         Avoid gcc warning.
468         * tests/test-memcmp.c (main): Pass NULL indirectly.
469
470 2008-05-21  Bruno Haible  <bruno@clisp.org>
471
472         Add reference doc about ACLs.
473         * doc/acl-resources.txt: New file.
474         * doc/acl-cygwin.txt: New file.
475
476 2008-05-21  Bruno Haible  <bruno@clisp.org>
477
478         Avoid one more warning from gcc.
479         * lib/vasnprintf.c (IF_LINT): Update comments.
480         (VASNPRINTF): Use it also for the 'prefix' array initializer.
481
482 2008-05-21  Jim Meyering  <meyering@redhat.com>
483
484         avoid a warning from gcc
485         * lib/vasnprintf.c (IF_LINT): Define.
486         (scale10_round_decimal_long_double):
487         Use it to avoid a "may be used uninitialized" warning.
488         (scale10_round_decimal_double): Likewise.
489
490 2008-05-21  Simon Josefsson  <simon@josefsson.org>
491
492         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
493         declared.
494
495 2008-05-20  Bruno Haible  <bruno@clisp.org>
496
497         * tests/test-memcmp.c (main): Test also the sign of the result. Test
498         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
499
500 2008-05-20  Simon Josefsson  <simon@josefsson.org>
501
502         * modules/memcmp-tests: New file.
503         * tests/test-memcmp.c: New file.
504
505 2008-05-19  Bruno Haible  <bruno@clisp.org>
506
507         * modules/propername (Notice, configure.ac): Put quoted "..." into
508         --keyword option.
509         * lib/propername.h: Update comments accordingly.
510         Reported by Eric Blake.
511
512 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
513
514         * modules/getpass-gnu (Depends-on): Add fseeko.
515
516 2008-05-19  Simon Josefsson  <simon@josefsson.org>
517
518         * modules/base64-tests: New file.
519
520 2008-05-19  Bo Borgerson <gigabo@gmail.com>
521
522         * lib/base64.c (base64_decode_ctx): If a decode context structure
523         was passed in use it to ignore newlines.  If a context structure
524         was _not_ passed in, continue to treat newlines as garbage (this
525         is the historical behavior).  Formerly base64_decode.
526         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
527         takes a decode context structure.
528         * lib/base64.h (base64_decode): Macro for four-argument calls.
529         (base64_decode_alloc): Likewise.
530         * lib/base64.c (base64_decode_ctx): If a decode context structure
531         was passed in use it to ignore newlines.  If a context structure
532         was _not_ passed in, continue to treat newlines as garbage (this
533         is the historical behavior).  Formerly base64_decode.
534         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
535         takes a decode context structure.
536         * lib/base64.h (base64_decode): Macro for four-argument calls.
537         (base64_decode_alloc): Likewise.
538
539 2008-05-19  Jim Meyering  <meyering@redhat.com>
540
541         avoid a warning from gcc
542         * lib/trim.c (IF_LINT): Define.
543         (trim2): Use it to avoid a "may be used uninitialized" warning.
544
545         Fix doc typo.
546         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
547
548 2008-05-19  Bruno Haible  <bruno@clisp.org>
549
550         * doc/glibc-functions/getpass.texi: Document limits of other
551         implementations.
552
553 2008-05-19  Simon Josefsson  <simon@josefsson.org>
554             Bruno Haible <bruno@clisp.org>
555
556         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
557
558 2008-05-18  Bruno Haible  <bruno@clisp.org>
559
560         * modules/propername: New file, from GNU gettext.
561         * lib/propername.h: New file, from GNU gettext.
562         * lib/propername.c: New file, from GNU gettext.
563         * MODULES.html.sh (Internationalization functions): Add propername.
564
565 2008-05-16  Jim Meyering  <meyering@redhat.com>
566             Bruno Haible  <bruno@clisp.org>
567
568         Avoid some warnings from "gcc -Wshadow".
569         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
570
571 2008-05-15  Eric Blake  <ebb9@byu.net>
572
573         Extend previous patch to cygwin 1.7.0.
574         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
575         fast implementation in cygwin >= 1.7.0.
576         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
577         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
578
579 2008-05-15  Bruno Haible  <bruno@clisp.org>
580
581         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
582         implementation in glibc >= 2.9.
583         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
584         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
585
586 2008-05-15  Bruno Haible  <bruno@clisp.org>
587
588         * MODULES.html.sh (Internationalization functions): Remove linebreak.
589         (Unicode string functions): Add unilbrk/*.
590         Reported by Karl Berry.
591
592 2008-05-15  Eric Blake  <ebb9@byu.net>
593
594         Fix violation of <stdbool.h> replacement in regex.
595         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
596         * lib/regexec.c (re_search_internal): Likewise.
597         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
598
599 2008-05-15  Jim Meyering  <meyering@redhat.com>
600
601         avoid distracting test output when git or cvs is not found
602         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
603         * tests/test-vc-list-files-git.sh: Likewise.
604
605 2008-05-15  Eric Blake  <ebb9@byu.net>
606
607         Glibc finally accepted the memmem speedup code, bugzilla #5514.
608         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
609         glibc version.
610         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
611         * doc/posix-functions/strstr.texi (strstr): Likewise.
612         * lib/str-two-way.h (MAX): Sychronize with glibc.
613
614 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
615
616         * lib/regcomp.c (optimize_utf8): Add a note on why we test
617         opr.ctx_type.
618         (calc_first): Initialize constraint field.
619         (duplicate_node_closure): Use it instead of special casing ANCHORS.
620         Fix grammar.
621         (duplicate_node): Merge constraint field for all node types.
622         (calc_eclosure_iter): Look at constraint field for all node types.
623         * lib/regex_internal.c (create_cd_newstate): Don't look at
624         opr.ctx_type.
625
626 2008-05-14  Bruno Haible  <bruno@clisp.org>
627
628         Help GCC to do better code generation.
629         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
630         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
631         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
632         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
633         Declare with attribute 'malloc' if supported.
634
635 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
636
637         use "echo STR|wc -c" rather than unportable "expr length STR"
638         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
639         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
640
641 2008-05-14  Jim Meyering  <meyering@redhat.com>
642
643         use dd ibs=$n count=1 ... rather than less-portable head -c$n
644         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
645         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
646         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
647         via Collin Lasse.
648
649 2008-05-14  Eric Blake  <ebb9@byu.net>
650
651         Avoid quadratic growth in gl_LIBSOURCES.
652         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
653         Suggested by Bruno Haible.
654
655         Test xmemdup0.
656         * modules/xmemdup0-tests: New file.
657         * tests/test-xmemdup0.c: Likewise.
658
659 2008-05-13  Eric Blake  <ebb9@byu.net>
660
661         Split xmemdup0 into its own module.
662         * modules/xmemdup0: New file.
663         * lib/xmemdup0.h: Likewise.
664         * lib/xmemdup0.c: Likewise.
665         * MODULES.html.sh (Memory management functions): Add xmemdup0.
666         * lib/xalloc.h (xmemdup0): Remove.
667         * lib/xmalloc.c (xmemdup0): Likewise.
668
669 2008-05-13  Eric Blake  <ebb9@byu.net>
670             Bruno Haible  <bruno@clisp.org>
671
672         Reduce number of forks required during autoconf.
673         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
674         and gl_LIBSOURCES_DIR.
675         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
676         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
677         m4_syscmd per file.
678         <m4_foreach_w>: Move...
679         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
680
681 2008-05-13  Eric Blake  <ebb9@byu.net>
682
683         * gnulib-tool: Fix various comment typos.
684
685 2008-05-12  Bruno Haible  <bruno@clisp.org>
686
687         Tailor the linebreaking algorithm.
688         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
689
690 2008-05-12  Bruno Haible  <bruno@clisp.org>
691
692         Update to Unicode 5.0.0.
693         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
694         LBP_JV, LBP_JT. Redistribute values.
695         (unilbrk_table): Change size.
696         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
697         Unicode TR#14 rev. 22.
698         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
699         LBP_JV, LBP_JT. Redistribute values.
700         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
701         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
702         Update.
703         * lib/unilbrk/lbrkprop1.h: Regenerated.
704         * lib/unilbrk/lbrkprop2.h: Regenerated.
705         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
706         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
707         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
708         Likewise.
709         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
710         Likewise.
711         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
712         result.
713         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
714         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
715         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
716         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
717         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
718         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
719
720 2008-05-11  Bruno Haible  <bruno@clisp.org>
721
722         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
723
724 2008-05-11  Bruno Haible  <bruno@clisp.org>
725
726         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
727         * modules/unilbrk/gen-lbrk: New file.
728
729 2008-05-11  Bruno Haible  <bruno@clisp.org>
730
731         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
732         * m4/sha512.m4 (gl_SHA512): Likewise.
733
734 2008-05-11  Jim Meyering  <meyering@redhat.com>
735
736         New modules: crypto/sha256, crypto/sha512 (from coreutils)
737         * modules/crypto/sha256: New file.
738         * modules/crypto/sha512: Likewise.
739         * lib/sha256.c: Likewise.
740         * lib/sha256.h: Likewise.
741         * lib/sha512.c: Likewise.
742         * lib/sha512.h: Likewise.
743         * lib/u64.h: Likewise.
744         * m4/sha256.m4: Likewise.
745         * m4/sha512.m4: Likewise.
746         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
747
748 2008-05-10  Bruno Haible  <bruno@clisp.org>
749
750         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
751         (Input/Output <stdio.h>): Add xprintf.
752         (Signal handling <signal.h>): Add strsignal.
753         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
754         (Core language properties): Add func.
755         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
756         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
757         strings.
758         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
759         (Input/output): New section.
760         (File system functions): Add openat-die, stat-macros.
761         (Networking functions): Add sockets.
762         (Unicode string functions): Add unictype/*.
763         (Support for building libraries and executables): Add gperf.
764         (Support for building documentation): Add agpl-3.0.
765         (Misc): Add nocrash.
766
767 2008-05-10  Bruno Haible  <bruno@clisp.org>
768
769         * modules/unictype/gen-ctype: New file.
770
771 2008-05-10  Jim Meyering  <meyering@redhat.com>
772
773         Make chdir-safer.c more efficient on a system with no symlinks.
774         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
775         also if ELOOP is zero.  Suggested by Bruno Haible.
776
777         Make chdir-safer.c slightly safer.
778         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
779         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
780
781         Avoid compile failure on systems without ELOOP (like mingw).
782         * lib/chdir-safer.c (ELOOP): Define if not already defined.
783         Reported by Bruno Haible.
784
785 2008-05-10  Bruno Haible  <bruno@clisp.org>
786
787         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
788         (is_utf8_encoding): Use a case-insensitive comparison.
789         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
790         streq.
791
792 2008-05-10  Bruno Haible  <bruno@clisp.org>
793
794         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
795         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
796         * lib/unilbrk/ulc-common.h (iconv_string_length,
797         iconv_string_keeping_offsets): Remove declarations.
798         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
799         Don't include <iconv.h>, streq.h, xsize.h.
800         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
801         conversion.
802         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
803         <iconv.h>, streq.h, xsize.h.
804         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
805         conversion.
806         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
807         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
808         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
809         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
810
811 2008-05-10  Bruno Haible  <bruno@clisp.org>
812
813         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
814         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
815
816         * modules/unilbrk/u32-width-linebreaks-tests: New file.
817         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
818
819         * modules/unilbrk/u16-width-linebreaks-tests: New file.
820         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
821
822         * modules/unilbrk/u8-width-linebreaks-tests: New file.
823         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
824
825         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
826         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
827
828         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
829         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
830
831         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
832         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
833
834         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
835         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
836
837 2008-05-10  Bruno Haible  <bruno@clisp.org>
838
839         Split up 'linebreak' module.
840         * lib/unilbrk.h: New file, based on lib/linebreak.h.
841         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
842         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
843         modifications.
844         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
845         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
846         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
847         lib/linebreak.c.
848         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
849         lib/linebreak.c.
850         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
851         lib/linebreak.c.
852         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
853         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
854         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
855         lib/linebreak.c.
856         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
857         lib/linebreak.c.
858         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
859         lib/linebreak.c.
860         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
861         lib/linebreak.c.
862         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
863         lib/linebreak.c.
864         * modules/unilbrk/base: New file.
865         * modules/unilbrk/tables: New file.
866         * modules/unilbrk/u8-possible-linebreaks: New file.
867         * modules/unilbrk/u16-possible-linebreaks: New file.
868         * modules/unilbrk/u32-possible-linebreaks: New file.
869         * modules/unilbrk/ulc-common: New file.
870         * modules/unilbrk/ulc-possible-linebreaks: New file.
871         * modules/unilbrk/u8-width-linebreaks: New file.
872         * modules/unilbrk/u16-width-linebreaks: New file.
873         * modules/unilbrk/u32-width-linebreaks: New file.
874         * modules/unilbrk/ulc-width-linebreaks: New file.
875         * lib/linebreak.h: Remove file.
876         * lib/linebreak.c: Remove file.
877         * m4/linebreak.m4: Remove file.
878         * modules/linebreak: Remove file.
879         * NEWS: Mention the changes.
880
881 2008-05-09  Eric Blake  <ebb9@byu.net>
882
883         Add xmemdup0.
884         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
885         implementation.
886         * lib/xmalloc.c (xmemdup0): New C implementation.
887
888 2008-05-08  Bruno Haible  <bruno@clisp.org>
889
890         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
891
892 2008-05-07  Eric Blake  <ebb9@byu.net>
893
894         Support cross-compilation of <wctype.h>.
895         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
896         AC_CACHE_CHECK.
897
898 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
899
900         * build-aux/vc-list-files: Add support for bzr.
901
902 2008-05-03  Jim Meyering  <meyering@redhat.com>
903
904         avoid failed assertion with tight malloc
905         * tests/test-getndelim2.c: Correct an off-by-one assertion.
906
907 2008-05-03  Simon Josefsson  <simon@josefsson.org>
908
909         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
910         are needed from arpa/inet.h.
911         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
912         Reported by Bruno Haible.
913
914 2008-05-02  Jim Meyering  <meyering@redhat.com>
915
916         avoid compilation error on FreeBSD 6
917         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
918
919 2008-05-01  Jim Meyering  <meyering@redhat.com>
920
921         useless-if-before-free: correct --help's exit status description
922         * build-aux/useless-if-before-free (usage): Like grep, exit 0
923         for one or more matches, etc.  Reported by Bruno Haible.
924
925         vc-list-files: make the stand-alone gnulib test work
926         * modules/vc-list-files-tests (configure.ac):
927         Define and AC_SUBST abs_aux_dir.
928         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
929         $(abs_top_srcdir) to each script and having each of them
930         duplicate the work of setting PATH, set PATH here, using
931         the new variable, abs_aux_dir instead.
932         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
933         * tests/test-vc-list-files-git.sh: Likewise.
934         Reported by Bruno Haible.
935
936 2008-05-01  Bruno Haible  <bruno@clisp.org>
937
938         * lib/getndelim2.c (getndelim2): Fix newsize computation during
939         reallocation. Rename 'done' to 'found_delimiter'.
940
941 2008-05-01  Jim Meyering  <meyering@redhat.com>
942
943         vc-list-files: accommodate /bin/sh like the one from Solaris 10
944         * build-aux/vc-list-files: Use `...`, not $(...).
945
946 2008-04-30  Jim Meyering  <meyering@redhat.com>
947
948         add tests for vc-list-files
949         * modules/vc-list-files-tests: New module.
950         * tests/test-vc-list-files-cvs.sh: New file.
951         * tests/test-vc-list-files-git.sh: New file.
952
953         avoid a warning from gcc
954         * lib/getndelim2.c (IF_LINT): Define.
955         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
956
957         vc-list-files: work properly with build-aux/cvsu, too
958         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
959         to all cvs-based clauses.
960
961         vc-list-files: work properly in the CVS+awk case, too
962         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
963
964         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
965         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
966         take more than one file argument, so .  Add quotes, just in case $dir
967         ever contains a shell meta-character.  Prompted by Soren Hansen in
968         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
969
970 2008-04-29  Eric Blake  <ebb9@byu.net>
971
972         Optimize getndelim2 to use block operations when possible.
973         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
974         freadseek, and memchr2.
975         * lib/getndelim2.c (getndelim2): Use them for block reads.
976
977 2008-04-29  Bruno Haible  <bruno@clisp.org>
978
979         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
980         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
981         * modules/inet_ntop (Depends-on): Add extensions.
982         * modules/inet_pton (Depends-on): Likewise.
983         Reported by Simon Josefsson.
984
985 2008-04-29  Jim Meyering  <meyering@redhat.com>
986
987         When the is more than one match in a block, match all of them.
988         * build-aux/useless-if-before-free: Iterate through each block
989         until there are no more matches.
990
991         Fix broken useless-if-before-free script.
992         * build-aux/useless-if-before-free: Fix typo: missing "?" after
993         the expression to match cast of argument to free-like function.
994
995 2008-04-29  Eric Blake  <ebb9@byu.net>
996
997         Use new header.
998         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
999
1000 2008-04-29  Jim Meyering  <meyering@redhat.com>
1001
1002         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
1003         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
1004         by gnulib to exist and to declare e.g., inet_ntop.
1005         Don't include "inet_ntop.h", now removed.
1006
1007         * m4/arpa_inet_h.m4: Remove trailing blanks.
1008
1009 2008-04-29  Eric Blake  <ebb9@byu.net>
1010
1011         Silence valgrind on safe reads beyond potential array bounds.
1012         * lib/rawmemchr.valgrind: New file.
1013         * lib/strchrnul.valgrind: Likewise.
1014         * modules/rawmemchr (Files): Distribute new file.
1015         * modules/strchrnul (Files): Likewise.
1016         Suggested by Bruno Haible.
1017
1018 2008-04-29  Bruno Haible  <bruno@clisp.org>
1019
1020         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
1021         (inet_ntop, inet_pton): Change portability warning's wording.
1022         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
1023         Invoke gl_CHECK_NEXT_HEADERS.
1024         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
1025         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
1026         set ARPA_INET_H.
1027         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1028         * modules/arpa_inet (Description): No longer only for systems that
1029         lack it.
1030         (Depends-on): Add include_next.
1031         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
1032         HAVE_ARPA_INET_H.
1033
1034 2008-04-29  Jim Meyering  <meyering@redhat.com>
1035
1036         * modules/mkdir (License): Re-license as LGPLv2+.
1037
1038 2008-04-29  Bruno Haible  <bruno@clisp.org>
1039
1040         * modules/rawmemchr (Maintainer): Set to Eric.
1041         * modules/strchrnul (Maintainer): Likewise.
1042
1043 2008-04-29  Simon Josefsson  <simon@josefsson.org>
1044
1045         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
1046         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
1047
1048         * modules/arpa_inet (arpa/inet.h): Use them.
1049
1050 2008-04-28  Eric Blake  <ebb9@byu.net>
1051
1052         Test getndelim2.
1053         * modules/getndelim2-tests: New file.
1054         * tests/test-getndelim2.c: Likewise.
1055         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
1056         stream.
1057         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
1058
1059         * MODULES.html.sh: Document new module.
1060
1061 2008-04-20  Bruno Haible  <bruno@clisp.org>
1062
1063         * lib/c-stack.c (die): Use raise.
1064         * modules/c-stack (Depends-on): Add raise.
1065
1066 2008-04-28  Bruno Haible  <bruno@clisp.org>
1067
1068         Expect rpmatch to be declared.
1069         * lib/yesno.c (rpmatch): Remove declaration.
1070
1071         Declare rpmatch.
1072         * lib/stdlib.in.h (rpmatch): New declaration.
1073         * lib/rpmatch.c: Include <stdlib.h> first.
1074         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
1075         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
1076         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
1077         HAVE_RPMATCH.
1078         * modules/rpmatch (Depends-on): Add stdlib, extensions.
1079         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
1080         (Include): Set to <stdlib.h>.
1081         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
1082         HAVE_RPMATCH.
1083         * NEWS: Document the change.
1084
1085 2008-04-28  Bruno Haible  <bruno@clisp.org>
1086
1087         Change rpmatch to use nl_langinfo when appropriate.
1088         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
1089         (N_): New macro.
1090         (localized_pattern): New function/macro.
1091         (try): Remove match, nomatch arguments. Copy the pattern into safe
1092         memory before caching it.
1093         (rpmatch): Use localized_pattern. Add translator comments.
1094         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
1095         Suggested by Eric Blake.
1096         * modules/rpmatch (Depends-on): Add stdbool.
1097
1098 2008-04-28  Eric Blake  <ebb9@byu.net>
1099
1100         Add rawmemchr module, matching glibc.
1101         * modules/string (Makefile.am): New indicator.
1102         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
1103         * lib/string.in.h (rawmemchr): Declare when appropriate.
1104         * modules/rawmemchr: New file.
1105         * m4/rawmemchr.m4: Likewise.
1106         * lib/rawmemchr.c: Likewise.
1107         * modules/rawmemchr-tests: Likewise.
1108         * tests/test-rawmemchr.c: Likewise.
1109         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
1110         module.
1111         * modules/strchrnul (Depends-on): Add rawmemchr.
1112         * lib/strchrnul.c (strchrnul): Optimize a corner case.
1113
1114         Whitespace cleanup.
1115         * tests/test-strchrnul.c: Reindent.
1116         * lib/strchrnul.c: Likewise.
1117
1118         Optimize and test strchrnul.
1119         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
1120         * modules/strchrnul-tests: New file.
1121         * tests/test-strchrnul.c: Likewise.
1122
1123         Remove intprops dependency.
1124         * modules/memchr (Depends-on): Remove intprops.
1125         * modules/memrchr (Depends-on): Likewise.
1126         * modules/memchr2 (Depends-on): Likewise.
1127         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
1128         * lib/memrchr.c (__memrchr): Likewise.
1129         * lib/memrchr2.c (memchr2): Likewise.
1130         Reported by Simon Josefsson.
1131
1132 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1133
1134         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
1135         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1136
1137 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1138
1139         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
1140
1141         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
1142
1143         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
1144
1145         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
1146         declarations.
1147         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
1148
1149         * m4/inet_pton.m4: Don't check for header files.
1150
1151         * m4/inet_ntop.m4: Don't check for header files.
1152
1153 2008-04-28  Simon Josefsson  <simon@josefsson.org>
1154
1155         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
1156         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
1157         trigger for cygwin).
1158         Reported by Bruno Haible  <bruno@clisp.org>.
1159
1160 2008-04-28  Bruno Haible  <bruno@clisp.org>
1161
1162         * doc/posix-functions/strdup.texi: Mention mingw problem.
1163
1164 2008-04-27  Bruno Haible  <bruno@clisp.org>
1165
1166         * modules/stat-time-tests (Depends-on): Add sleep.
1167         * tests/test-stat-time.c (force_unlink): New function.
1168         (cleanup): Use it.
1169         (test_mtime): Remove the ctime related tests.
1170         (test_ctime): New function, containing the ctime related tests.
1171         (main): Call test_ctime, except on native Windows platforms.
1172
1173 2008-04-27  Bruno Haible  <bruno@clisp.org>
1174
1175         * lib/rpmatch.c (rpmatch): Add some comments.
1176         Reported by James Youngman <jay@gnu.org>.
1177
1178 2008-04-27  Bruno Haible  <bruno@clisp.org>
1179
1180         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
1181         quiet NaNs.
1182
1183 2008-04-27  Bruno Haible  <bruno@clisp.org>
1184
1185         Make test-yesno.sh work on mingw.
1186         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
1187         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
1188         (main): Set stdin to binary mode.
1189         * modules/yesno-tests (Depends-on): Add binary-io.
1190
1191 2008-04-27  Bruno Haible  <bruno@clisp.org>
1192
1193         Fix 'isfinite' on x86, x86_64, ia64 platforms.
1194         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
1195         argument that lie outside the IEEE 854 domain.
1196         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
1197         (gl_ISFINITE): Use it.
1198         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
1199
1200 2008-04-27  Bruno Haible  <bruno@clisp.org>
1201
1202         Allow local renaming in config.h.
1203         * lib/memrchr.c (memrchr): Don't undefine outside libc.
1204
1205 2008-04-27  Bruno Haible  <bruno@clisp.org>
1206
1207         * lib/memchr.c (__memchr): Change type of 'i'.
1208         * lib/memchr2.c (memchr2): Likewise.
1209
1210 2008-04-26  Eric Blake  <ebb9@byu.net>
1211         and Bruno Haible  <bruno@clisp.org>
1212
1213         Optimize and test memrchr.
1214         * modules/memrchr (Depends-on): Add intprops.
1215         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
1216         * modules/memrchr-tests: New file.
1217         * tests/test-memrchr.c: New file.
1218
1219 2008-04-26  Bruno Haible  <bruno@clisp.org>
1220
1221         Add tentative support for DragonFly BSD.
1222         * lib/stdio-impl.h: Add macros for DragonFly BSD.
1223         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
1224         fp.
1225         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
1226         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
1227         * lib/fpurge.c (fpurge): Likewise.
1228         * lib/freadable.c (freaadable): Likewise.
1229         * lib/freadahead.c (freadahead): Likewise.
1230         * lib/freading.c (freading): Likewise.
1231         * lib/freadptr.c (freadptr): Likewise.
1232         * lib/freadseek.c (freadptrinc): Likewise.
1233         * lib/fseeko.c (fseeko): Likewise.
1234         * lib/fseterr.c (fseterr): Likewise.
1235         * lib/fwritable.c (fwritable): Likewise.
1236         * lib/fwriting.c (fwriting): Likewise.
1237
1238 2008-04-26  Bruno Haible  <bruno@clisp.org>
1239
1240         * lib/stdio-impl.h: New file.
1241         * lib/fbufmode.c: Include stdio-impl.h.
1242         (fbufmode): Use fp_, remove redundant #defines.
1243         * lib/fflush.c: Include stdio-impl.h.
1244         (clear_ungetc_buffer): Remove redundant #defines.
1245         * lib/fpurge.c: Include stdio-impl.h.
1246         (fpurge): Remove redundant #defines.
1247         * lib/freadable.c: Include stdio-impl.h.
1248         (freadable): Remove redundant #defines.
1249         * lib/freadahead.c: Include stdio-impl.h.
1250         (freadahead): Remove redundant #defines.
1251         * lib/freading.c: Include stdio-impl.h.
1252         (freading): Remove redundant #defines.
1253         * lib/freadptr.c: Include stdio-impl.h.
1254         (freadptr): Remove redundant #defines.
1255         * lib/freadseek.c: Include stdio-impl.h.
1256         (freadptrinc): Remove redundant #defines.
1257         * lib/fseeko.c: Include stdio-impl.h.
1258         (rpl_fseeko): Remove redundant #defines.
1259         * lib/fseterr.c: Include stdio-impl.h.
1260         (fseterr): Remove redundant #defines.
1261         * lib/fwritable.c: Include stdio-impl.h.
1262         (fwritable: Remove redundant #defines.
1263         * lib/fwriting.c: Include stdio-impl.h.
1264         (fwriting): Remove redundant #defines.
1265         * modules/fbufmode (Files): Add lib/stdio-impl.h.
1266         * modules/fflush (Files): Likewise.
1267         * modules/fpurge (Files): Likewise.
1268         * modules/freadable (Files): Likewise.
1269         * modules/freadahead (Files): Likewise.
1270         * modules/freading (Files): Likewise.
1271         * modules/freadptr (Files): Likewise.
1272         * modules/freadseek (Files): Likewise.
1273         * modules/fseeko (Files): Likewise.
1274         * modules/fseterr (Files): Likewise.
1275         * modules/fwritable (Files): Likewise.
1276         * modules/fwriting (Files): Likewise.
1277
1278 2008-04-26  Bruno Haible  <bruno@clisp.org>
1279
1280         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
1281         restore_seek_optimization, update_fpos_cache): New functions, extracted
1282         from rpl_fflush.
1283         (rpl_fflush): Use them.
1284         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
1285         (gl_REPLACE_FFLUSH): Use it.
1286
1287 2008-04-26  Bruno Haible  <bruno@clisp.org>
1288
1289         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
1290         on Solaris.
1291         * tests/test-xstrtoimax.sh: Likewise.
1292         * tests/test-xstrtoumax.sh: Likewise.
1293         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1294
1295 2008-04-26  Bruno Haible  <bruno@clisp.org>
1296
1297         * modules/memchr-tests: New file.
1298         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
1299
1300 2008-04-26  Eric Blake  <ebb9@byu.net>
1301             Bruno Haible  <bruno@clisp.org>
1302
1303         * lib/memchr.c: Include intprops.h.
1304         (__memchr): Optimize parallel detection of matching bytes. Rename local
1305         variables. Add explanatory comments.
1306
1307 2008-04-26  Bruno Haible  <bruno@clisp.org>
1308
1309         Fix module 'memchr', broken since 2000-10-28.
1310         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
1311
1312 2008-04-26  Bruno Haible  <bruno@clisp.org>
1313
1314         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
1315         comments.
1316
1317 2008-04-25  Eric Blake  <ebb9@byu.net>
1318
1319         Use native fstatat on cygwin 1.7.0.
1320         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
1321         first.
1322
1323 2008-04-23  Eric Blake  <ebb9@byu.net>
1324
1325         Improve memchr2 performance.
1326         * lib/memchr2.c (memchr2): Further optimize parallel detection of
1327         NUL bytes.
1328         * modules/memchr2 (Depends-on): Use intprops.h.
1329
1330 2008-04-23  Simon Josefsson  <simon@josefsson.org>
1331
1332         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
1333         an inline function instead of a CPP macro.  Patch by Ben Pfaff
1334         <blp@cs.stanford.edu>.
1335
1336 2008-04-23  Simon Josefsson  <simon@josefsson.org>
1337
1338         * lib/arpa_inet.in.h: New file.
1339
1340         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
1341         (Makefile.am): Sed in substitute header file.
1342
1343         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
1344         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
1345
1346         * modules/inet_ntop (configure.ac): Use
1347         gl_ARPA_INET_MODULE_INDICATOR.
1348
1349         * modules/inet_pton (configure.ac): Use
1350         gl_ARPA_INET_MODULE_INDICATOR.
1351
1352 2008-04-22  Jim Meyering  <meyering@redhat.com>
1353
1354         * modules/verify (License): Re-license as LGPLv2+.
1355
1356 2008-04-22  Simon Josefsson  <simon@josefsson.org>
1357
1358         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
1359         parameter to void* as per POSIX standard (MinGW uses char*).
1360
1361 2008-04-21  Bruno Haible  <bruno@clisp.org>
1362
1363         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
1364         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
1365         Define to replacements if REPLACE_ISWCNTRL is 1.
1366         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
1367         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
1368         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
1369         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
1370         what it fixes.
1371         * doc/posix-functions/iswalpha.texi: Likewise.
1372         * doc/posix-functions/iswblank.texi: Likewise.
1373         * doc/posix-functions/iswcntrl.texi: Likewise.
1374         * doc/posix-functions/iswdigit.texi: Likewise.
1375         * doc/posix-functions/iswgraph.texi: Likewise.
1376         * doc/posix-functions/iswlower.texi: Likewise.
1377         * doc/posix-functions/iswprint.texi: Likewise.
1378         * doc/posix-functions/iswpunct.texi: Likewise.
1379         * doc/posix-functions/iswspace.texi: Likewise.
1380         * doc/posix-functions/iswupper.texi: Likewise.
1381         * doc/posix-functions/iswxdigit.texi: Likewise.
1382         Reported by Alain Guibert.
1383
1384 2008-04-21  Bruno Haible  <bruno@clisp.org>
1385
1386         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
1387         Patch by Alain Guibert.
1388
1389 2008-04-21  Bruno Haible  <bruno@clisp.org>
1390
1391         Fix test failures on mingw.
1392         * tests/test-xstrtol.c (print_no_progname): New function.
1393         (main): Install it in error_print_progname hook.
1394         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
1395         * tests/test-xstrtoimax.sh: Likewise.
1396         * tests/test-xstrtoumax.sh: Likewise.
1397
1398 2008-04-21  Bruno Haible  <bruno@clisp.org>
1399
1400         Fix test failure on mingw.
1401         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
1402
1403 2008-04-21  Bruno Haible  <bruno@clisp.org>
1404
1405         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
1406         Actually assign a value.
1407
1408 2008-04-20  Bruno Haible  <bruno@clisp.org>
1409
1410         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
1411         take 2.
1412         * lib/canonicalize.c (canonicalize_file_name): Elide if the
1413         'canonicalize-lgpl' module is also used.
1414         * lib/canonicalize-lgpl.c: Undo last change.
1415         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
1416
1417 2008-04-20  Bruno Haible  <bruno@clisp.org>
1418
1419         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
1420         config.h. Provide _mkdir based fallback for mingw.
1421         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
1422         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
1423         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
1424         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
1425         rather than defining mkdir in config.h.
1426         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
1427         (gl_SYS_STAT_H_DEFAULTS): New macro.
1428         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
1429         HAVE_IO_H any more.
1430         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
1431         HAVE_DECL_MKDIR and HAVE_IO_H.
1432
1433 2008-04-20  Bruno Haible  <bruno@clisp.org>
1434
1435         * lib/isapipe.c: Port to native Windows platforms.
1436
1437 2008-04-20  Bruno Haible  <bruno@clisp.org>
1438
1439         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
1440
1441 2008-04-21  Eric Blake  <ebb9@byu.net>
1442
1443         Work around preprocessors that don't handle UINTMAX_MAX.
1444         * lib/memchr2.c (memchr2): Avoid embedded #if.
1445         Reported by Alain Guibert, fix suggested by Bruno Haible.
1446
1447 2008-04-21  Simon Josefsson  <simon@josefsson.org>
1448
1449         * doc/posix-functions/strftime.texi (strftime): Explain better
1450         Windows incompatibility.  Suggested by Micah Cowan
1451         <micah@cowan.name>.
1452
1453 2008-04-20  Bruno Haible  <bruno@clisp.org>
1454
1455         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
1456         unistr/u8-mblen.
1457
1458 2008-04-20  Bruno Haible  <bruno@clisp.org>
1459
1460         Fix test failure on platforms with non-GNU iconv.
1461         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
1462         (U_TO_U8): Use it, rather than u16_to_u8.
1463         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
1464         units at the end of the input string.
1465         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
1466
1467 2008-04-20  Bruno Haible  <bruno@clisp.org>
1468
1469         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
1470         when the resulting length is 0.
1471         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
1472
1473 2008-04-20  Bruno Haible  <bruno@clisp.org>
1474
1475         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
1476         works.
1477         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
1478
1479 2008-04-20  Bruno Haible  <bruno@clisp.org>
1480
1481         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
1482         * modules/tsearch-tests (configure.ac): Test for initstate function.
1483
1484 2008-04-20  Bruno Haible  <bruno@clisp.org>
1485
1486         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
1487         for nlink_t if missing.
1488         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
1489
1490 2008-04-19  Bruno Haible  <bruno@clisp.org>
1491
1492         Work around snprintf bug on Linux libc5.
1493         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
1494         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
1495         gl_SNPRINTF_SIZE1.
1496         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1497         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
1498         that test failed.
1499         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
1500         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
1501         * modules/snprintf (Files): Add m4/printf.m4.
1502         * modules/vsnprintf (Files): Likewise.
1503         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
1504         * doc/posix-functions/vsnprintf.texi: Likewise.
1505
1506 2008-04-19  Bruno Haible  <bruno@clisp.org>
1507
1508         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
1509         from 0.0058 to less than 10^-7.
1510
1511 2008-04-19  Bruno Haible  <bruno@clisp.org>
1512
1513         Fix rounding when a precision is given.
1514         * lib/vasnprintf.c (is_borderline): New function.
1515         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
1516         9...9x.
1517         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
1518         %e, %g.
1519         * tests/test-vasprintf-posix.c (test_function): Likewise.
1520         * tests/test-snprintf-posix.h (test_function): Likewise.
1521         * tests/test-sprintf-posix.h (test_function): Likewise.
1522         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
1523         * tests/test-printf-posix.h (test_function): Likewise.
1524         * tests/test-printf-posix.output: Update.
1525         Reported by John Darrington <john@darrington.wattle.id.au> via
1526         Ben Pfaff <blp@cs.stanford.edu>.
1527
1528 2008-04-18  Simon Josefsson  <simon@josefsson.org>
1529
1530         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
1531         Suggested by Bruno Haible <bruno@clisp.org>.
1532
1533 2008-04-17  Bruno Haible  <bruno@clisp.org>
1534
1535         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
1536         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
1537         implementation.
1538         Patch by Bruce Merry <bmerry@gmail.com>.
1539
1540 2008-04-17  Simon Josefsson  <simon@josefsson.org>
1541
1542         * doc/posix-functions/strftime.texi (strftime): Mention that %e
1543         doesn't work under Windows.
1544
1545 2008-04-16  Bruno Haible  <bruno@clisp.org>
1546
1547         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
1548         New macros.
1549         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
1550         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
1551         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
1552         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
1553         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
1554         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
1555         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
1556         macros.
1557         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
1558         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
1559         Northern Sotho, Uighur.
1560
1561 2008-04-16  Bruno Haible  <bruno@clisp.org>
1562
1563         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
1564         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
1565         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
1566         Reported by Daniel Bergström <daniel@octocode.com>.
1567
1568 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
1569             Bruno Haible  <bruno@clisp.org>
1570
1571         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
1572         function.
1573         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
1574         New functions, mostly extracted from gl_locale_name_default.
1575         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
1576
1577 2008-04-16  Eric Blake  <ebb9@byu.net>
1578
1579         Adjust strtod detection to catch glibc 2.7 bug.
1580         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
1581         Reported by John Gatewood Ham.
1582
1583 2008-04-16  Bruno Haible  <bruno@clisp.org>
1584
1585         Add tentative support for Linux libc5.
1586         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
1587         * lib/fpurge.c (fpurge): Likewise.
1588         * lib/freadable.c (freadable): Likewise.
1589         * lib/freadahead.c (freadahead): Likewise.
1590         * lib/freading.c (freading): Likewise.
1591         * lib/freadptr.c (freadptr): Likewise.
1592         * lib/freadseek.c (freadptrinc): Likewise.
1593         * lib/fseeko.c (rpl_fseeko): Likewise.
1594         * lib/fseterr.c (fseterr): Likewise.
1595         * lib/fwritable.c (fwritable): Likewise.
1596         * lib/fwriting.c (fwriting): Likewise.
1597         Reported by Alain Guibert <alguibert+bts@free.fr>.
1598
1599 2008-04-15  Bruno Haible  <bruno@clisp.org>
1600
1601         * modules/mathl (configure.ac): Define module indicator.
1602
1603 2008-04-15  Bruno Haible  <bruno@clisp.org>
1604
1605         * lib/logl.c (logl): Remove unused variables.
1606
1607 2008-04-15  Bruno Haible  <bruno@clisp.org>
1608
1609         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
1610         fails.
1611
1612 2008-04-15  Bruno Haible  <bruno@clisp.org>
1613
1614         * lib/trim.c (trim2): Fix argument of isspace() macro.
1615
1616 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
1617
1618         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
1619         to 0.
1620         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
1621
1622 2008-04-14  Bruno Haible  <bruno@clisp.org>
1623
1624         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
1625         AC_LANG_PROGRAM argument.
1626         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
1627         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
1628         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
1629         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
1630         * m4/math_h.m4 (gl_MATH_H): Likewise.
1631         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
1632         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1633         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
1634         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
1635         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
1636         * m4/regex.m4 (gl_REGEX): Likewise.
1637         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
1638         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
1639         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1640         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
1641         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1642         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1643         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
1644         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
1645
1646 2008-04-14  Jim Meyering  <meyering@redhat.com>
1647
1648         test-strtod: fix typos: s/abs/fabs/
1649         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
1650
1651 2008-04-13  Bruno Haible  <bruno@clisp.org>
1652
1653         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
1654         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
1655         module is also used and while not building the reloc-wrapper.
1656
1657 2008-04-13  Bruno Haible  <bruno@clisp.org>
1658
1659         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
1660
1661 2008-04-13  Bruno Haible  <bruno@clisp.org>
1662
1663         Fix AIX compilation failure introduced on 2008-04-02.
1664         * tests/test-frexp.c (exp): Undefine before redefining.
1665         * tests/test-frexpl.c (exp): Likewise.
1666
1667 2008-04-13  Bruno Haible  <bruno@clisp.org>
1668
1669         Work around a HP-UX stdio bug.
1670         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
1671         * tests/test-ftello.c (main): Likewise.
1672         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
1673         * doc/posix-functions/ftello.texi: Likewise.
1674
1675 2008-04-13  Bruno Haible  <bruno@clisp.org>
1676
1677         Make test-signbit pass on HP-UX/hppa.
1678         * tests/test-signbit.c (minus_zerol): New variable.
1679         (test_signbitl): Use it.
1680
1681 2008-04-13  Bruno Haible  <bruno@clisp.org>
1682
1683         Make truncl work on OSF/1 4.0.
1684         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
1685         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1686         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
1687         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
1688         HAVE_DECL_TRUNCL.
1689         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
1690         HAVE_DECL_TRUNCL.
1691         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
1692
1693 2008-04-13  Bruno Haible  <bruno@clisp.org>
1694
1695         * lib/unictype.h: Remove trailing comma from enumeration definitions.
1696
1697 2008-04-13  Bruno Haible  <bruno@clisp.org>
1698
1699         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
1700         expression, so as to avoid HP-UX 11 cc compiler bug.
1701
1702 2008-04-13  Bruno Haible  <bruno@clisp.org>
1703
1704         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
1705
1706 2008-04-13  Bruno Haible  <bruno@clisp.org>
1707
1708         * lib/git-merge-changelog.c: Remove empty declaration outside of
1709         functions.
1710
1711 2008-04-13  Bruno Haible  <bruno@clisp.org>
1712
1713         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
1714
1715 2008-04-13  Bruno Haible  <bruno@clisp.org>
1716
1717         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
1718         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
1719         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
1720         also if it exists but lacks definitions of the SHUT_* macros.
1721         * modules/sys_socket (Description): Update.
1722         Reported by Elbert Pol <e.pol@chello.nl>.
1723
1724 2008-04-13  Bruno Haible  <bruno@clisp.org>
1725
1726         * lib/localcharset.c (OS2): Don't redefine if already defined.
1727         Reported by Elbert Pol <e.pol@chello.nl>.
1728
1729 2008-04-13  Bruno Haible  <bruno@clisp.org>
1730
1731         * lib/binary-io.h [__EMX__]: Include <io.h>.
1732         Reported by Elbert Pol <e.pol@chello.nl>.
1733
1734 2008-04-12  Bruno Haible  <bruno@clisp.org>
1735
1736         * lib/fpucw.h: Enable the definitions also for x86_64.
1737         Needed for NetBSD/x86_64.
1738         Reported by Thomas Klausner <tk@giga.or.at>.
1739
1740 2008-04-12  Bruno Haible  <bruno@clisp.org>
1741
1742         * tests/test-strtod.c: Include isnand.h.
1743         (main): Use isnand instead of isnan.
1744         Reported by Jim Meyering.
1745
1746 2008-04-12  Bruno Haible  <bruno@clisp.org>
1747
1748         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
1749         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
1750
1751 2008-04-12  Jim Meyering  <meyering@redhat.com>
1752
1753         * m4/math_h.m4 (gl_MATH_H): Fix typos.
1754
1755 2008-04-12  Bruno Haible  <bruno@clisp.org>
1756
1757         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
1758         Reported by Elbert Pol <e.pol@chello.nl>.
1759
1760 2008-04-12  Eric Blake  <ebb9@byu.net>
1761
1762         Work around Solaris 10 math.h bug.
1763         * m4/math_h.m4 (gl_MATH_H): Check for bug.
1764         (gl_MATH_H_DEFAULTS): Set up default.
1765         * modules/math (Makefile.am): Replace new indicators.
1766         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
1767         * tests/test-math.c (main): Test this.
1768         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
1769         * doc/posix-headers/math.texi (math.h): Mention bug.
1770         Reported by Nelson H. F. Beebe and Jim Meyering.
1771
1772 2008-04-11  Bruno Haible  <bruno@clisp.org>
1773
1774         Adapt to future versions of Apple GCC.
1775         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
1776         Reported by Peter O'Gorman <peter@pogma.com>.
1777
1778 2008-04-11  Bruno Haible  <bruno@clisp.org>
1779
1780         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
1781
1782 2008-04-11  Bruno Haible  <bruno@clisp.org>
1783
1784         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
1785
1786         * modules/getaddrinfo-tests (Makefile.am): Define
1787         test_getaddrinfo_LDADD.
1788
1789 2008-04-11  Bruno Haible  <bruno@clisp.org>
1790
1791         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
1792         (init): Fix syntax error.
1793         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
1794         is declared.
1795
1796 2008-04-11  Bruno Haible  <bruno@clisp.org>
1797
1798         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
1799         * modules/glob (Depends-on): Add stdbool.
1800
1801 2008-04-11  Bruno Haible  <bruno@clisp.org>
1802
1803         * lib/trim.c: Include <string.h>.
1804
1805 2008-04-11  Eric Blake  <ebb9@byu.net>
1806
1807         Avoid compile failure on OS/2.
1808         * lib/regex_internal.h (internal_function): Disable optimization
1809         on OS/2 (__EMX__), where it caused compiler error.
1810         Reported by Elbert Pol.
1811
1812 2008-04-11  Bruno Haible  <bruno@clisp.org>
1813
1814         Flush the standard error stream before aborting. Needed on mingw.
1815         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
1816         * tests/test-array_list.c (ASSERT): Likewise.
1817         * tests/test-array_oset.c (ASSERT): Likewise.
1818         * tests/test-avltree_list.c (ASSERT): Likewise.
1819         * tests/test-avltree_oset.c (ASSERT): Likewise.
1820         * tests/test-avltreehash_list.c (ASSERT): Likewise.
1821         * tests/test-binary-io.c (ASSERT): Likewise.
1822         * tests/test-byteswap.c (ASSERT): Likewise.
1823         * tests/test-c-ctype.c (ASSERT): Likewise.
1824         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
1825         * tests/test-c-strcasestr.c (ASSERT): Likewise.
1826         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
1827         * tests/test-c-strstr.c (ASSERT): Likewise.
1828         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
1829         * tests/test-canonicalize.c (ASSERT): Likewise.
1830         * tests/test-carray_list.c (ASSERT): Likewise.
1831         * tests/test-ceilf1.c (ASSERT): Likewise.
1832         * tests/test-ceilf2.c (ASSERT): Likewise.
1833         * tests/test-ceill.c (ASSERT): Likewise.
1834         * tests/test-count-one-bits.c (ASSERT): Likewise.
1835         * tests/test-fbufmode.c (ASSERT): Likewise.
1836         * tests/test-fflush2.c (ASSERT): Likewise.
1837         * tests/test-floorf1.c (ASSERT): Likewise.
1838         * tests/test-floorf2.c (ASSERT): Likewise.
1839         * tests/test-floorl.c (ASSERT): Likewise.
1840         * tests/test-fopen.c (ASSERT): Likewise.
1841         * tests/test-fpending.c (ASSERT): Likewise.
1842         * tests/test-fprintf-posix.c (ASSERT): Likewise.
1843         * tests/test-fpurge.c (ASSERT): Likewise.
1844         * tests/test-freadable.c (ASSERT): Likewise.
1845         * tests/test-freadahead.c (ASSERT): Likewise.
1846         * tests/test-freading.c (ASSERT): Likewise.
1847         * tests/test-freadptr.c (ASSERT): Likewise.
1848         * tests/test-freadptr2.c (ASSERT): Likewise.
1849         * tests/test-freadseek.c (ASSERT): Likewise.
1850         * tests/test-freopen.c (ASSERT): Likewise.
1851         * tests/test-frexp.c (ASSERT): Likewise.
1852         * tests/test-frexpl.c (ASSERT): Likewise.
1853         * tests/test-fseek.c (ASSERT): Likewise.
1854         * tests/test-fseeko.c (ASSERT): Likewise.
1855         * tests/test-fstrcmp.c (ASSERT): Likewise.
1856         * tests/test-ftell.c (ASSERT): Likewise.
1857         * tests/test-ftello.c (ASSERT): Likewise.
1858         * tests/test-func.c (ASSERT): Likewise.
1859         * tests/test-fwritable.c (ASSERT): Likewise.
1860         * tests/test-fwriting.c (ASSERT): Likewise.
1861         * tests/test-getdelim.c (ASSERT): Likewise.
1862         * tests/test-getline.c (ASSERT): Likewise.
1863         * tests/test-i-ring.c (ASSERT): Likewise.
1864         * tests/test-iconv-utf.c (ASSERT): Likewise.
1865         * tests/test-iconv.c (ASSERT): Likewise.
1866         * tests/test-isfinite.c (ASSERT): Likewise.
1867         * tests/test-isnand.c (ASSERT): Likewise.
1868         * tests/test-isnanf.c (ASSERT): Likewise.
1869         * tests/test-isnanl.h (ASSERT): Likewise.
1870         * tests/test-ldexpl.c (ASSERT): Likewise.
1871         * tests/test-linked_list.c (ASSERT): Likewise.
1872         * tests/test-linkedhash_list.c (ASSERT): Likewise.
1873         * tests/test-localename.c (ASSERT): Likewise.
1874         * tests/test-lseek.c (ASSERT): Likewise.
1875         * tests/test-mbscasecmp.c (ASSERT): Likewise.
1876         * tests/test-mbscasestr1.c (ASSERT): Likewise.
1877         * tests/test-mbscasestr2.c (ASSERT): Likewise.
1878         * tests/test-mbscasestr3.c (ASSERT): Likewise.
1879         * tests/test-mbscasestr4.c (ASSERT): Likewise.
1880         * tests/test-mbschr.c (ASSERT): Likewise.
1881         * tests/test-mbscspn.c (ASSERT): Likewise.
1882         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
1883         * tests/test-mbspbrk.c (ASSERT): Likewise.
1884         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
1885         * tests/test-mbsrchr.c (ASSERT): Likewise.
1886         * tests/test-mbsspn.c (ASSERT): Likewise.
1887         * tests/test-mbsstr1.c (ASSERT): Likewise.
1888         * tests/test-mbsstr2.c (ASSERT): Likewise.
1889         * tests/test-mbsstr3.c (ASSERT): Likewise.
1890         * tests/test-memchr2.c (ASSERT): Likewise.
1891         * tests/test-memmem.c (ASSERT): Likewise.
1892         * tests/test-open.c (ASSERT): Likewise.
1893         * tests/test-printf-frexp.c (ASSERT): Likewise.
1894         * tests/test-printf-frexpl.c (ASSERT): Likewise.
1895         * tests/test-printf-posix.c (ASSERT): Likewise.
1896         * tests/test-quotearg.c (ASSERT): Likewise.
1897         * tests/test-rbtree_list.c (ASSERT): Likewise.
1898         * tests/test-rbtree_oset.c (ASSERT): Likewise.
1899         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
1900         * tests/test-round1.c (ASSERT): Likewise.
1901         * tests/test-roundf1.c (ASSERT): Likewise.
1902         * tests/test-roundl.c (ASSERT): Likewise.
1903         * tests/test-signbit.c (ASSERT): Likewise.
1904         * tests/test-sleep.c (ASSERT): Likewise.
1905         * tests/test-snprintf-posix.c (ASSERT): Likewise.
1906         * tests/test-snprintf.c (ASSERT): Likewise.
1907         * tests/test-sprintf-posix.c (ASSERT): Likewise.
1908         * tests/test-stat-time.c (ASSERT): Likewise.
1909         * tests/test-strcasestr.c (ASSERT): Likewise.
1910         * tests/test-strerror.c (ASSERT): Likewise.
1911         * tests/test-striconv.c (ASSERT): Likewise.
1912         * tests/test-striconveh.c (ASSERT): Likewise.
1913         * tests/test-striconveha.c (ASSERT): Likewise.
1914         * tests/test-strsignal.c (ASSERT): Likewise.
1915         * tests/test-strstr.c (ASSERT): Likewise.
1916         * tests/test-strtod.c (ASSERT): Likewise.
1917         * tests/test-trunc1.c (ASSERT): Likewise.
1918         * tests/test-trunc2.c (ASSERT): Likewise.
1919         * tests/test-truncf1.c (ASSERT): Likewise.
1920         * tests/test-truncf2.c (ASSERT): Likewise.
1921         * tests/test-truncl.c (ASSERT): Likewise.
1922         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
1923         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
1924         * tests/test-vasnprintf.c (ASSERT): Likewise.
1925         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
1926         * tests/test-vasprintf.c (ASSERT): Likewise.
1927         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
1928         * tests/test-vprintf-posix.c (ASSERT): Likewise.
1929         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
1930         * tests/test-vsnprintf.c (ASSERT): Likewise.
1931         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
1932         * tests/test-wcwidth.c (ASSERT): Likewise.
1933         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
1934         * tests/test-xprintf-posix.c (ASSERT): Likewise.
1935         * tests/test-xvasprintf.c (ASSERT): Likewise.
1936         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
1937         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
1938         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
1939         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
1940         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
1941         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
1942         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
1943         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
1944         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
1945         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
1946         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
1947         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
1948         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
1949         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
1950         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
1951         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
1952         * tests/unictype/test-block_list.c (ASSERT): Likewise.
1953         * tests/unictype/test-block_of.c (ASSERT): Likewise.
1954         * tests/unictype/test-block_test.c (ASSERT): Likewise.
1955         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
1956         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
1957         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
1958         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
1959         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
1960         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
1961         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
1962         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
1963         * tests/unictype/test-combining.c (ASSERT): Likewise.
1964         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
1965         * tests/unictype/test-digit.c (ASSERT): Likewise.
1966         * tests/unictype/test-mirror.c (ASSERT): Likewise.
1967         * tests/unictype/test-numeric.c (ASSERT): Likewise.
1968         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
1969         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
1970         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
1971         * tests/unictype/test-scripts.c (ASSERT): Likewise.
1972         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
1973         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
1974         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
1975         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
1976         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
1977         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
1978         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
1979         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
1980         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
1981         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
1982         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
1983         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
1984         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
1985         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
1986         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
1987         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
1988         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
1989         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
1990         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
1991         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
1992         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
1993         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
1994         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
1995         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
1996         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
1997         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
1998         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
1999         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
2000         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
2001         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
2002         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
2003         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
2004         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
2005         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
2006         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
2007         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
2008         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
2009         Reported by Eric Blake.
2010
2011 2008-04-11  Bruno Haible  <bruno@clisp.org>
2012
2013         * lib/wchar.in.h: Tweak comment.
2014
2015 2008-04-11  Bruno Haible  <bruno@clisp.org>
2016
2017         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
2018         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
2019         gl_COMMON.
2020         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
2021
2022 2008-04-11  Bruno Haible  <bruno@clisp.org>
2023
2024         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
2025
2026 2008-04-11  Simon Josefsson  <simon@josefsson.org>
2027
2028         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
2029         of attempting to use non-existing /dev/*random.  Based on patch
2030         from Adam Strzelecki <ono@java.pl> in
2031         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
2032
2033 2008-04-08  Bruno Haible  <bruno@clisp.org>
2034
2035         Add tentative support for emx+gcc.
2036         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
2037         * lib/fpurge.c (fpurge): Likewise.
2038         * lib/freadable.c (freadable): Likewise.
2039         * lib/freadahead.c (freadahead): Likewise.
2040         * lib/freading.c (freading): Likewise.
2041         * lib/freadptr.c (freadptr): Likewise.
2042         * lib/freadseek.c (freadptrinc): Likewise.
2043         * lib/fseeko.c (rpl_fseeko): Likewise.
2044         * lib/fseterr.c (fseterr): Likewise.
2045         * lib/fwritable.c (fwritable): Likewise.
2046         * lib/fwriting.c (fwriting): Likewise.
2047         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
2048
2049 2008-04-09  Eric Blake  <ebb9@byu.net>
2050
2051         Avoid some autoconf warnings.
2052         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
2053         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
2054         * m4/afs.m4 (gl_AFS): Likewise.
2055         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
2056         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
2057         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2058         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
2059         (gl_INTEGER_TYPE_SUFFIX): Likewise.
2060         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
2061         (AC_CHECK_DECLS_ONCE): Likewise.
2062         Rename file...
2063         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
2064         gnulib-tool requires autoconf 2.59 or better.
2065         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
2066
2067 2008-04-08  Eric Blake  <ebb9@byu.net>
2068
2069         Use 'git describe --match' if present (added in git 1.5.5).
2070         * build-aux/git-version-gen: Limit result to tags that match 'v*'
2071         if possible.
2072
2073 2008-04-08  Bruno Haible  <bruno@clisp.org>
2074
2075         Add tentative support for OpenServer.
2076         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
2077         _ptr, _cnt.
2078         * lib/fpurge.c (fpurge): Likewise.
2079         * lib/freadable.c (freadable): Likewise.
2080         * lib/freadahead.c (freadahead): Likewise.
2081         * lib/freading.c (freading): Likewise.
2082         * lib/freadptr.c (freadptr): Likewise.
2083         * lib/freadseek.c (freadptrinc): Likewise.
2084         * lib/fseeko.c (rpl_fseeko): Likewise.
2085         * lib/fseterr.c (fseterr): Likewise.
2086         * lib/fwritable.c (fwritable): Likewise.
2087         * lib/fwriting.c (fwriting): Likewise.
2088         Reported by Roger Cornelius <rac@tenzing.org> and
2089         Brian K. White <brian@aljex.com>.
2090
2091 2008-04-06  Jim Meyering  <meyering@redhat.com>
2092
2093         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
2094
2095 2008-04-06  Bruno Haible  <bruno@clisp.org>
2096
2097         Avoid possible error with non-ASCII bytes in UTF-8 locales.
2098         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
2099         * tests/test-printf-posix.sh: Likewise.
2100         * tests/test-vfprintf-posix.sh: Likewise.
2101         * tests/test-vprintf-posix.sh: Likewise.
2102         * tests/test-xprintf-posix.sh: Likewise.
2103
2104 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2105
2106         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
2107         hide error from 'ls', needed on OS/2.
2108         Report by Elbert Pol <elbert.pol@gmail.com>.
2109
2110 2008-04-04  Eric Blake  <ebb9@byu.net>
2111
2112         Make test-fseeko.c failures meaningful.
2113         * tests/test-fseeko.c: Print line number on failure.
2114         * tests/test-fseek.c: Likewise.
2115         Reported by Nelson H. F. Beebe.
2116
2117         Improve strtod bug detection check.
2118         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
2119         required for Solaris 10.
2120         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
2121
2122 2008-04-04  Bruno Haible  <bruno@clisp.org>
2123
2124         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
2125         by m4/setenv.m4.
2126
2127 2008-04-03  Eric Blake  <ebb9@byu.net>
2128
2129         Ensure sane .version contents.
2130         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
2131         version string.
2132         * build-aux/git-version-gen: Improve documentation.
2133
2134         Make GNU make output nicer.
2135         * top/GNUmakefile [!_have-Makefile]: Add dependency on
2136         MAKECMDGOALS to enforce message for all command line targets.  Set
2137         srcdir for use in maint.mk.
2138
2139         Another maintainer tweak.
2140         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
2141         a target that regenerates version.
2142
2143 2008-04-03  Jim Meyering  <meyering@redhat.com>
2144
2145         vc-list-files: don't cause coreutils "make po-check" failure
2146         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
2147
2148 2008-04-03  Eric Blake  <ebb9@byu.net>
2149
2150         Allow VPATH usage of vc-list-files.
2151         * build-aux/vc-list-files (scriptversion): Add timestamp.
2152         (options): Add --help, --version, -C.
2153         (CVS): Support installed cvsu.
2154
2155 2008-04-02  Bruno Haible  <bruno@clisp.org>
2156
2157         Avoid some "statement with no effect" warnings from gcc.
2158         * tests/test-wctype.c (main): Explicitly ignore unused values.
2159         Reported by Jim Meyering.
2160
2161 2008-04-02  Jim Meyering  <meyering@redhat.com>
2162
2163         Avoid some warnings from "gcc -Wshadow".
2164         * tests/test-frexp.c (exp): Define to a different identifier.
2165         * tests/test-frexpl.c (exp): Likewise.
2166
2167 2008-04-03  Jim Meyering  <meyering@redhat.com>
2168
2169         bootstrap: remove dangling *.[ch] symlinks from lib
2170         * build-aux/bootstrap [dangling symlink removal]: Move find's
2171         -depth option to precede all others, to avoid a warning.
2172         Remove *.[ch] files too, and from "$source_base" (usually lib/).
2173
2174 2008-04-02  Bruno Haible  <bruno@clisp.org>
2175
2176         Avoid some warnings from "gcc -Wshadow".
2177         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
2178         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
2179         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
2180         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
2181         Reported by Jim Meyering.
2182
2183 2008-04-01  Bruno Haible  <bruno@clisp.org>
2184
2185         Fix test to work on IRIX 6.5 with cc.
2186         * tests/test-math.c (numeric_equal): New function.
2187         (main): Use it.
2188
2189 2008-04-01  Bruno Haible  <bruno@clisp.org>
2190
2191         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
2192
2193 2008-04-01  Bruno Haible  <bruno@clisp.org>
2194
2195         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
2196         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2197         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
2198         (Depends-on): Remove math.
2199
2200         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
2201         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2202         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
2203         (Depends-on): Remove math.
2204
2205         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
2206         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2207         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
2208         (Depends-on): Remove math.
2209         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
2210         (Depends-on): Remove math.
2211
2212         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
2213         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
2214         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
2215         (Depends-on): Remove math.
2216         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
2217         (Depends-on): Remove math.
2218
2219         * tests/test-round1.c: Include nan.h.
2220         (main): Use NaNd instead of NAN.
2221         * modules/round-tests (Files): Add tests/nan.h.
2222
2223         * tests/test-trunc1.c: Include nan.h.
2224         (main): Use NaNd instead of NAN.
2225         * modules/trunc-tests (Files): Add tests/nan.h.
2226
2227         * tests/test-roundf1.c: Include nan.h.
2228         (main): Use NaNf instead of NAN.
2229         * modules/roundf-tests (Files): Add tests/nan.h.
2230
2231         * tests/test-truncf1.c: Include nan.h.
2232         (main): Use NaNf instead of NAN.
2233         * modules/truncf-tests (Files): Add tests/nan.h.
2234
2235         * tests/test-ceilf1.c: Include nan.h.
2236         (main): Use NaNf instead of NAN.
2237         * modules/ceilf-tests (Files): Add tests/nan.h.
2238
2239         * tests/test-floorf1.c: Include nan.h.
2240         (main): Use NaNf instead of NAN.
2241         * modules/floorf-tests (Files): Add tests/nan.h.
2242
2243         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
2244         (main): Use NaNf instead of NAN.
2245         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
2246
2247         * tests/test-isnand.c: Include nan.h instead of <math.h>.
2248         (main): Use NaNd instead of NAN.
2249         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
2250
2251         * tests/test-frexp.c: Include nan.h.
2252         (main): Use NaNd instead of NAN.
2253         * modules/frexp-tests (Files): Add tests/nan.h.
2254
2255         * lib/isnan.c: Don't include <math.h>.
2256         (FUNC): Don't use NAN macro.
2257         * modules/isnand-nolibm (Depends-on): Remove math.
2258         * modules/isnanf-nolibm (Depends-on): Remove math.
2259         * modules/isnanl (Depends-on): Remove math.
2260         * modules/isnanl-nolibm (Depends-on): Remove math.
2261
2262         * tests/nan.h: New file.
2263
2264 2008-04-01  Eric Blake  <ebb9@byu.net>
2265
2266         Fix typos.
2267         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
2268         values to be the right type.
2269
2270         For now, cater to gnulib strtod inaccuracies.
2271         * tests/test-strtod.c (main): Allow 1-ulp error on expected
2272         fractional results.  While not as nice from a QoI perspective, it
2273         is a quicker patch than correctly implementing decimal to binary
2274         rounding.
2275
2276 2008-03-31  Eric Blake  <ebb9@byu.net>
2277
2278         Guarantee a definition of NAN.
2279         * lib/math.in.h (NAN): Define if missing.
2280         * tests/test-math.c (main): Test it.
2281         * doc/posix-headers/math.texi (math.h): Document this.
2282         * lib/isnan.c (rpl_isnand): Use it.
2283         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
2284         * tests/test-floorf1.c (NaN): Likewise.
2285         * tests/test-frexp.c (NaN): Likewise.
2286         * tests/test-isnand.c (NaN): Likewise.
2287         * tests/test-isnanf.c (NaN): Likewise.
2288         * tests/test-round1.c (NaN): Likewise.
2289         * tests/test-roundf1.c (NaN): Likewise.
2290         * tests/test-snprintf-posix.h (NaN): Likewise.
2291         * tests/test-sprintf-posix.h (NaN): Likewise.
2292         * tests/test-trunc1.c (NaN): Likewise.
2293         * tests/test-truncf1.c (NaN): Likewise.
2294         * tests/test-vasnprintf-posix.c (NaN): Likewise.
2295         * tests/test-vasprintf-posix.c (NaN): Likewise.
2296         * modules/isnand-nolibm (Depends-on): Add math.
2297         * modules/isnanf-nolibm (Depends-on): Likewise.
2298         * modules/isnanl (Depends-on): Likewise.
2299         * modules/isnanl-nolibm (Depends-on): Likewise.
2300         * modules/snprintf-posix-tests (Depends-on): Likewise.
2301         * modules/sprintf-posix-tests (Depends-on): Likewise.
2302         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
2303         * modules/vsprintf-posix-tests (Depends-on): Likewise.
2304         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
2305         * modules/vasprintf-posix-tests (Depends-on): Likewise.
2306
2307 2008-03-31  Bruno Haible  <bruno@clisp.org>
2308
2309         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
2310         * doc/posix-functions/strtod.texi: Likewise.
2311
2312 2008-03-31  Bruno Haible  <bruno@clisp.org>
2313
2314         * tests/test-strtod.c (main): Don't use C99 syntax.
2315
2316 2008-03-31  Bruno Haible  <bruno@clisp.org>
2317
2318         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
2319         Reported by Eric Blake.
2320
2321 2008-03-31  Jim Meyering  <meyering@redhat.com>
2322
2323         Don't compare actual signbit return values.
2324         * tests/test-strtod.c (main): Rather, compare only their
2325         zero/non-zero nature.
2326
2327 2008-03-31  Eric Blake  <ebb9@byu.net>
2328
2329         More strtod documentation.
2330         * doc/posix-functions/strtod.texi (strtod): Interpret more test
2331         failures as distinct bugs.
2332
2333 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
2334
2335         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
2336         Problem reported by Erik Benada in
2337         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
2338
2339 2008-03-30  Bruno Haible  <bruno@clisp.org>
2340
2341         * tests/test-strtod.c: Add comments about which assertion fails on which
2342         platform.
2343         * doc/posix-functions/strtod.texi: Add info about many more platforms.
2344
2345 2008-03-30  Eric Blake  <ebb9@byu.net>
2346
2347         Test signbit behavior on zeros.
2348         * tests/test-signbit.c (test_signbitf): Add tests for zero.
2349         (test_signbitd, test_signbitl): Likewise.
2350
2351         More strtod touchups.
2352         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
2353         sign of negative underflow, for now.  Use .5, not .1.
2354         * doc/posix-functions/strtod.texi (strtod): Mention these
2355         limitations.
2356         Reported by Jim Meyering.
2357
2358 2008-03-30  Bruno Haible  <bruno@clisp.org>
2359
2360         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
2361         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
2362
2363 2008-03-30  Bruno Haible  <bruno@clisp.org>
2364
2365         Avoid failure when attempting to return empty iconv results on some
2366         platforms.
2367         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
2368         allocation, don't report ENOMEM when the resulting string is empty.
2369
2370 2008-03-30  Bruno Haible  <bruno@clisp.org>
2371
2372         Fix buffer overrun.
2373         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
2374         Don't consider the width for tmp_length. Check count against tmp_length
2375         before doing the padding. Ensure enough allocation during padding.
2376
2377 2008-03-30  Eric Blake  <ebb9@byu.net>
2378
2379         strtod touchups.
2380         * lib/strtod.c (strtod): Avoid compiler warnings.
2381         Reported by Jim Meyering.
2382
2383 2008-03-30  Bruno Haible  <bruno@clisp.org>
2384
2385         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
2386         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
2387         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
2388         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
2389         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
2390         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
2391         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
2392         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
2393
2394         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
2395         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
2396         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
2397         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
2398         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
2399         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
2400         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
2401         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
2402
2403         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
2404         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
2405         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
2406         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
2407         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
2408         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
2409         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
2410         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
2411
2412         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
2413         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
2414
2415         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
2416         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
2417
2418         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
2419         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
2420
2421         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
2422         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
2423         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
2424
2425         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
2426         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
2427         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
2428
2429         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
2430         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
2431         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
2432
2433         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
2434         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
2435         * modules/vasprintf (Depends-on): Add EOVERFLOW.
2436
2437         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
2438         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
2439         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
2440         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
2441         (Depends-on): Add EOVERFLOW.
2442         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
2443         (Depends-on): Add EOVERFLOW.
2444         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
2445         (Depends-on): Add EOVERFLOW.
2446         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
2447         (Depends-on): Add EOVERFLOW.
2448         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
2449         (Depends-on): Add EOVERFLOW.
2450         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
2451         (Depends-on): Add EOVERFLOW.
2452         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
2453         (Depends-on): Add EOVERFLOW.
2454         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
2455         (Depends-on): Add EOVERFLOW.
2456
2457         * lib/sprintf.c (EOVERFLOW): Remove fallback.
2458         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
2459         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
2460
2461         * lib/snprintf.c (EOVERFLOW): Remove fallback.
2462         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
2463         * modules/snprintf (Depends-on): Add EOVERFLOW.
2464
2465         * lib/poll.c (EOVERFLOW): Remove fallback.
2466         * modules/poll (Depends-on): Add EOVERFLOW.
2467
2468         * lib/getugroups.c (EOVERFLOW): Remove fallback.
2469         * modules/getugroups (Depends-on): Add EOVERFLOW.
2470
2471         * lib/getdelim.c (EOVERFLOW): Remove fallback.
2472         * modules/getdelim (Depends-on): Add EOVERFLOW.
2473
2474         * lib/ftell.c (EOVERFLOW): Remove fallback.
2475         * modules/ftell (Depends-on): Add EOVERFLOW.
2476
2477         * lib/fprintf.c (EOVERFLOW): Remove fallback.
2478         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
2479         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
2480
2481         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
2482
2483         * modules/EOVERFLOW-tests: New file.
2484         * tests/test-EOVERFLOW.c: New file.
2485
2486         * modules/EOVERFLOW: New file.
2487         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
2488
2489 2008-03-30  Bruno Haible  <bruno@clisp.org>
2490
2491         Fix bug introduced on 2007-06-10.
2492         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
2493         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
2494
2495 2008-03-30  Bruno Haible  <bruno@clisp.org>
2496
2497         Improve freadseek's efficiency after ungetc.
2498         * lib/freadseek.c: Include freadahead.h.
2499         (freadptrinc): New function, extracted from freadseek.
2500         (freadseek): Use it in a loop. Use freadahead to determine the number
2501         of loop iterations.
2502         * modules/freadseek (Depends-on): Add freadahead.
2503         (configure.ac): Require AC_C_INLINE.
2504
2505 2008-03-30  Bruno Haible  <bruno@clisp.org>
2506
2507         * lib/freadseek.c (freadseek): Don't ignore the return value of
2508         freadptr.
2509
2510 2008-03-29  Eric Blake  <ebb9@byu.net>
2511
2512         Add hex float support.
2513         * modules/strtod (Depends-on): Add c-ctype.
2514         (Link): Mention POW_LIB.
2515         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
2516         whitespace between 'e' and exponent.
2517         * tests/test-strtod.c (main): Enable hex float tests.
2518         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
2519         now provides.
2520
2521         Document various strtod bugs, with some fixes.
2522         * doc/posix-functions/strtod.texi (strtod): Document bugs with
2523         "-0x", "inf", "nan", and hex constants.
2524         * doc/posix-functions/atof.texi (atof): Likewise.
2525         * modules/stdlib (Makefile.am): Support strtod.
2526         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
2527         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
2528         detect additional strtod bugs.
2529         * lib/stdlib.in.h (rpl_strtod): Add declarations.
2530         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
2531         bool where appropriate.  Parse 'inf' and 'nan'.
2532         * tests/test-strtod.c: New file.
2533         * modules/strtod (Depends-on): Add stdbool, stdlib.
2534         (configure.ac): Turn on module indicator.
2535         * modules/strtod-tests: New module.
2536
2537 2008-03-29  Eric Blake  <ebb9@byu.net>
2538
2539         Fix ftell on mingw.
2540         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
2541         * modules/ftell-tests (Depends-on): Add binary-io.
2542         * modules/ftello-tests (Depends-on): Likewise.
2543         * tests/test-ftell.c (main): Enhance test to cover behavior after
2544         ungetc.  Enforce binary mode.
2545         * tests/test-ftello.c (main): Likewise.
2546
2547         Pass test-freadseek on cygwin.
2548         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
2549         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
2550         ungetc buffer.
2551
2552         * tests/test-fflush2.c (main): Fix typo.
2553
2554 2008-03-29  Bruno Haible  <bruno@clisp.org>
2555
2556         * tests/test-fflush2.c (main): Temporarily disable the contents of
2557         this test.
2558         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
2559         Reported by Eric Blake.
2560
2561 2008-03-28  Simon Josefsson  <simon@josefsson.org>
2562
2563         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
2564         (GC_SHA224_DIGEST_SIZE): Add.
2565
2566         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
2567         (gc_hash_digest_length): Likewise.
2568         (gc_hash_buffer): Likewise.
2569
2570 2008-03-25  Bruno Haible  <bruno@clisp.org>
2571
2572         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
2573         detail which gettext release to use.
2574         Reported by Simon Josefsson.
2575
2576 2008-03-26  Jim Meyering  <meyering@redhat.com>
2577
2578         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
2579         * modules/gnumakefile (clean-GNUmakefile): Also, use
2580         test ... && ... || : syntax rather than if-then ... fi.
2581
2582         gnumakefile: Don't double-quote-expand $(VPATH) value.
2583         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
2584
2585 2008-03-24  Eric Blake  <ebb9@byu.net>
2586
2587         Alter GNUmakefile to install into top directory.
2588         * modules/maintainer-makefile: Split, and add dependency...
2589         * modules/gnumakefile: to this new module.
2590         * build-aux/GNUmakefile: Move...
2591         * top/GNUmakefile: ...here.
2592         * build-aux/maint.mk: Move...
2593         * top/maint.mk: ...here.
2594         * MODULES.html.sh (Support for maintaining...): Document new
2595         module.
2596
2597 2008-03-23  Bruno Haible  <bruno@clisp.org>
2598
2599         * gnulib-tool: New options --vc-files, --no-vc-files.
2600         (func_usage): Document them.
2601         (vc_files): New variable.
2602         (func_import): Consider vc_files.
2603         (func_create_testdir): Set vc_files to empty.
2604         Suggested by Jim Meyering and Karl Berry.
2605
2606 2008-03-23  Bruno Haible  <bruno@clisp.org>
2607
2608         Fix regex compilation error on HP-UX 11.
2609         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
2610         * modules/regex (Files): Add m4/mbstate_t.m4.
2611         Reported by Ton Voon <ton.voon@altinity.com>.
2612
2613 2008-03-23  Bruno Haible  <bruno@clisp.org>
2614
2615         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
2616
2617 2008-03-23  Eric Blake  <ebb9@byu.net>
2618             Bruno Haible  <bruno@clisp.org>
2619
2620         Install files from top/ in the destination directory.
2621         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
2622         augmentation also for the files from top/.
2623         (func_import, func_create_testdir): Rewrite file names:
2624         top/filename -> filename.
2625
2626 2008-03-23  Bruno Haible  <bruno@clisp.org>
2627
2628         Tweak "gnulib --version" output.
2629         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
2630
2631 2008-03-23  Bruno Haible  <bruno@clisp.org>
2632
2633         Tweak "gnulib --version" output.
2634         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
2635         rather than contents of ChangeLog, when possible.
2636
2637 2008-03-21  Eric Blake  <ebb9@byu.net>
2638
2639         More --version tweaks.
2640         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
2641         date of last ChangeLog entry.
2642
2643 2008-03-21  Jim Meyering  <meyering@redhat.com>
2644
2645         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
2646
2647 2008-03-20  Eric Blake  <ebb9@byu.net>
2648
2649         VPATH fix.
2650         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
2651
2652 2008-03-20  Simon Josefsson  <simon@josefsson.org>
2653
2654         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
2655         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
2656
2657 2008-03-20  Eric Blake  <ebb9@byu.net>
2658
2659         Sync GNUmakefile with coreutils.
2660         * build-aux/GNUmakefile (have-Makefile): Rename...
2661         (_have-Makefile): ...to this, for namespace consideration.
2662         (GNUmakefile.cfg): Include, if present.
2663         (_autoreconf): Define a default.
2664         (_is-dist-target): New rule for rebuilds to pick up intra-release
2665         version.
2666         (maint-cfg.mk): Rename...
2667         (cfg.mk): ...to this.
2668
2669 2008-03-18  Jim Meyering  <meyering@redhat.com>
2670
2671         New script and module: mktempd
2672         * MODULES.html.sh (maint+release support): Add mktempd.
2673         * build-aux/mktempd: New file.
2674         * modules/mktempd: New file.
2675
2676 2008-03-15  Jim Meyering  <meyering@redhat.com>
2677
2678         Undo last change.
2679         * lib/sha1.c, lib/md5.c: 63 != ~63.
2680         Reported by Andreas Schwab.
2681
2682         sha1.c, md5.c: Hoist a redundant expression.
2683         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
2684         "ctx->buflen" only once, before calling *_process_block.
2685         * lib/md5.c (md5_process_bytes): Likewise.
2686
2687 2008-03-14  Eric Blake  <ebb9@byu.net>
2688
2689         Bump copyright year in files generated by gnulib-tool.
2690         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
2691         gnulib-tool, rather than hard-coding it.
2692
2693         Fix 'gnulib-tool --version' output to work with git.
2694         * gnulib-tool (func_gnulib_dir): New function, extracted from...
2695         (startup): ...here.
2696         (func_version): Use it to invoke git-version-gen, rather than
2697         relying on CVS keyword expansion.  Modernize wording.
2698         (cvsdatestamp, last_checkin_date, version): Kill unused
2699         variables.
2700
2701 2008-03-12  Jim Meyering  <meyering@redhat.com>
2702
2703         Recognize optional cast of the argument to free.
2704         * build-aux/useless-if-before-free: Update regexps.
2705
2706         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
2707
2708 2008-03-11  Bruno Haible  <bruno@clisp.org>
2709
2710         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
2711         by a single package.
2712         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
2713         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
2714         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
2715         Reported by Sam Steingold <sds@gnu.org>.
2716
2717 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
2718
2719         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
2720         repositories.
2721
2722 2008-03-11  Bruno Haible  <bruno@clisp.org>
2723
2724         Avoid conflicts between local macro definitions.
2725         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
2726         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
2727
2728 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
2729             Bruno Haible  <bruno@clisp.org>
2730
2731         Make va_copy work with some version of xlc on AIX 5.1.
2732         * lib/stdarg.in.h: New file.
2733         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
2734         On AIX, use a <stdarg.h> file substitute.
2735         * modules/stdarg (Files): Add lib/stdarg.in.h.
2736         (Depends-on): Add include_next.
2737         (Makefile.am): Build a stdarg.h substitute if requested.
2738         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
2739
2740 2008-03-10  Bruno Haible  <bruno@clisp.org>
2741
2742         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
2743         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2744         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
2745
2746 2008-03-10  Bruno Haible  <bruno@clisp.org>
2747
2748         * modules/stdlib (Depends-on): Add include_next, remove
2749         absolute-header.
2750
2751 2008-03-09  Bruno Haible  <bruno@clisp.org>
2752
2753         * lib/freadahead.h (freadahead): Document more precisely.
2754         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
2755         the sum of both buffer sizes.
2756         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
2757         * NEWS: Document the change.
2758
2759 2008-03-09  Bruno Haible  <bruno@clisp.org>
2760
2761         Extend freadptr to return also the buffer size.
2762         * lib/freadptr.h (freadptr): Add sizep argument.
2763         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
2764         (freadptr): Add sizep argument. Determine buffer size like freadahead
2765         does.
2766         * tests/test-freadptr.c: Don't include freadahead.h.
2767         (main): Adapt for new calling convention of freadptr.
2768         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
2769         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
2770         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
2771         tests/test-freadptr2.sh.
2772         (Depends): Remove freadahead.
2773         (TESTS): Add test-freadptr2.sh.
2774         (check_PROGRAMS): Add test-freadptr2.
2775
2776 2008-03-09  Bruno Haible  <bruno@clisp.org>
2777
2778         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
2779         Report and solution by Simon Josefsson.
2780
2781 2008-03-06  Bruno Haible  <bruno@clisp.org>
2782
2783         Make fflush after ungetc work on BSD platforms.
2784         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
2785         * tests/test-fflush2.c: New file.
2786         * tests/test-fflush2.sh: New file.
2787         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
2788         tests/test-fflush2.c.
2789         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
2790         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
2791
2792 2008-03-06  Eric Blake  <ebb9@byu.net>
2793
2794         Likewise for ftello.
2795         * modules/ftello (Dependencies): Add extensions.
2796         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
2797
2798 2008-03-06  Bruno Haible  <bruno@clisp.org>
2799
2800         * modules/fseeko (Dependencies): Add extensions.
2801         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
2802         Needed on glibc systems.
2803
2804 2008-03-06  Bruno Haible  <bruno@clisp.org>
2805
2806         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
2807         email address.
2808         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
2809
2810 2008-03-06  Bruno Haible  <bruno@clisp.org>
2811
2812         * users.txt: Add libgnupdf.
2813
2814 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
2815
2816         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
2817         (Header File Substitutes, Function Substitutes,
2818         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
2819         (Build robot for gnulib): Fix typo.
2820
2821 2008-03-06  Bruno Haible  <bruno@clisp.org>
2822
2823         * doc/gnulib-tool.texi (VCS Issues): Small updates.
2824         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
2825
2826 2008-03-06  Bruno Haible  <bruno@clisp.org>
2827
2828         * doc/func.texi: New file, extracted from doc/gnulib.texi.
2829         * doc/gnulib.texi: Include it.
2830
2831 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2832
2833         * modules/func (License): Change license to unlimited; there was
2834         no LGPL parts in the module anyway.
2835
2836 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2837
2838         * modules/__func__: Renamed to modules/func.
2839         * modules/__func__-tests: Renamed to modules/func-tests.
2840         * tests/test-__func__.c: Renamed to tests/test-func.c.
2841         * m4/__func__.m4: Renamed to m4/func.m4.
2842         * doc/gnulib.texi (__func__): Section renamed to func.
2843         Suggested by Eric Blake <ebb9@byu.net>.
2844
2845 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2846
2847         * doc/gnulib.texi (__func__): Use C99 terminology when talking
2848         about __func__.  Make example self-contained.  Suggested by Eric
2849         Blake <ebb9@byu.net>.
2850
2851         * tests/test-__func__.c (main): Avoid extraneous () around __func.
2852         Suggested by Eric Blake <ebb9@byu.net>.
2853
2854 2008-03-06  Simon Josefsson  <simon@josefsson.org>
2855
2856         * modules/__func__: New file.
2857         * modules/__func__-tests: New file.
2858         * tests/test-__func__.c: New file.
2859         * m4/__func__.m4: New file.
2860         * doc/gnulib.texi (__func__): Document __func__ module.
2861
2862 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2863
2864         * modules/byteswap (License): Re-license as LGPLv2+.
2865
2866 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2867
2868         * doc/Makefile: Add pdf target.
2869
2870 2008-03-05  Simon Josefsson  <simon@josefsson.org>
2871
2872         * modules/inline (License): Use 'unlimited', since there are only
2873         *.m4 files in this module.
2874
2875 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
2876             Bruno Haible  <bruno@clisp.org>
2877
2878         Add support for HP C 7.1 on OpenVMS 8.3.
2879         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
2880
2881 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
2882
2883         Update VMS specifics.
2884         * lib/getopt.c [VMS]: Remove include of unixlib.h.
2885
2886 2008-03-02  Jim Meyering  <meyering@redhat.com>
2887
2888         Remove the last dependency on the "free" module.
2889         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
2890         Reported by Bob Proulx.
2891
2892         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
2893
2894         Remove useless "if" tests before free.  Deprecate "free" module.
2895         * doc/posix-functions/free.texi: Mention that this
2896         module is no longer useful.
2897         * modules/free (Notice): Say this module is obsolete.
2898         * modules/readutmp (Depends-on): Remove free.
2899         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
2900         * lib/putenv.c (putenv): Likewise.
2901         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
2902         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
2903         * tests/test-c-strcasestr.c (main): Likewise.
2904         * tests/test-c-strstr.c (main): Likewise.
2905         * tests/test-mbscasestr1.c (main): Likewise.
2906         * tests/test-mbscasestr2.c (main): Likewise.
2907         * tests/test-mbsstr1.c (main): Likewise.
2908         * tests/test-mbsstr2.c (main): Likewise.
2909         * tests/test-memmem.c (main): Likewise.
2910         * tests/test-strcasestr.c (main): Likewise.
2911         * tests/test-striconv.c (main): Likewise.
2912         * tests/test-striconveh.c (main): Likewise.
2913         * tests/test-striconveha.c (main): Likewise.
2914         * tests/test-strstr.c (main): Likewise.
2915
2916         * build-aux/git-version-gen: Adjust a comment and the Usage string.
2917
2918         bootstrap: sync from coreutils again
2919         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
2920
2921 2008-03-01  Jim Meyering  <meyering@redhat.com>
2922
2923         bootstrap: sync from coreutils
2924         * build-aux/bootstrap (update_po_files): Copy a .po file into place
2925         also when the target doesn't exist.
2926
2927 2008-03-01  Eric Blake  <ebb9@byu.net>
2928
2929         Fix bugs in last patch.
2930         * lib/memchr2.c (memchr2): Fix typo.
2931         * tests/test-memchr2.c: Test previous bug, and don't use GNU
2932         extension.
2933         Reported by Bruce Korb.
2934
2935         New module 'memchr2'.
2936         * modules/memchr2: New file.
2937         * modules/memchr2-tests: Likewise.
2938         * lib/memchr2.h: Likewise.
2939         * lib/memchr2.c: Likewise, based on memchr.c.
2940         * tests/test-memchr2.c: New test.
2941         * MODULES.html.sh (String handling): Add memchr2.
2942
2943 2008-02-29  Bruno Haible  <bruno@clisp.org>
2944
2945         * modules/freadseek-tests: New file.
2946         * tests/test-freadseek.sh: New file.
2947         * tests/test-freadseek.c: New file.
2948
2949         New module 'freadseek'.
2950         * modules/freadseek: New file.
2951         * lib/freadseek.h: New file.
2952         * lib/freadseek.c: New file.
2953         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
2954
2955 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
2956
2957         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
2958         wydawca.
2959
2960         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
2961         program_invocation_name and program_invocation_short_name are
2962         present.
2963
2964 2008-02-28  Bruno Haible  <bruno@clisp.org>
2965
2966         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
2967         * tests/test-freadptr.sh: Also test non-seekable stdin.
2968
2969 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
2970
2971         * build-aux/bootstrap (source_base, m4_base)
2972         (doc_base, tests_base): New variables.
2973         (gnulib_tool_options): Do not hardcode base directories, use
2974         the above variables instead.
2975
2976 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
2977
2978         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
2979
2980 2008-02-28  Bruno Haible  <bruno@clisp.org>
2981
2982         * modules/freadptr-tests: New file.
2983         * tests/test-freadptr.sh: New file.
2984         * tests/test-freadptr.c: New file.
2985
2986         New module 'freadptr'.
2987         * modules/freadptr: New file.
2988         * lib/freadptr.h: New file.
2989         * lib/freadptr.c: New file.
2990         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
2991
2992 2008-02-26  Karl Berry  <karl@freefriends.org>
2993
2994         Sync from Libtool:
2995         * libltdl/argz.c (argz_add, argz_count): New functions.
2996         * libltdl/argz.in.h: Declare them.
2997         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
2998
2999 2008-02-22  Bruno Haible  <bruno@clisp.org>
3000
3001         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
3002         is a pointer type.  Needed for HP-UX 10.
3003         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
3004         * doc/posix-functions/gmtime_r.texi: Likewise.
3005         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
3006
3007 2008-02-24  Bruno Haible  <bruno@clisp.org>
3008
3009         * modules/environ-tests: New file.
3010         * tests/test-environ.c: New file.
3011
3012         New module 'environ'.
3013         * modules/environ: New file.
3014         * lib/unistd.in.h (environ): New declaration.
3015         * m4/environ.m4: New file.
3016         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
3017         after use.
3018         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
3019         HAVE_DECL_ENVIRON.
3020         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
3021         HAVE_DECL_ENVIRON.
3022         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
3023         wrong claim that 'environ' is missing on some systems.
3024         * modules/execute (Depends-on): Add environ.
3025         * lib/execute.c (environ): Remove fallback declaration.
3026         * modules/pipe (Depends-on): Add environ.
3027         * lib/pipe.c (environ): Remove fallback declaration.
3028         * modules/setenv (Depends-on): Add environ.
3029         * lib/setenv.c (environ): Remove fallback declaration.
3030         * modules/unsetenv (Depends-on): Add environ.
3031         * lib/unsetenv.c (environ): Remove fallback declaration.
3032         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
3033         m4/environ.m4.
3034         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
3035         (gl_PREREQ_UNSETENV): Likewise.
3036
3037 2008-02-24  Bruno Haible  <bruno@clisp.org>
3038
3039         * doc/posix-functions/environ.texi: Document the MacOS X problem.
3040
3041 2008-02-20  Bob Proulx  <bob@proulx.com>
3042
3043         Enable use of older two part flavor 'git describe'.
3044         * build-aux/git-version-gen: If using the older two part flavor of
3045         git version then recreate the third part now present in the
3046         newer three part flavor of git describe.
3047
3048 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
3049
3050         * lib/fts.c (fts_build): Typo correction to comment.
3051
3052 2008-02-17  Bruno Haible  <bruno@clisp.org>
3053
3054         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
3055         generating no-op conflicts.
3056
3057 2008-02-17  Bruno Haible  <bruno@clisp.org>
3058
3059         Speed up by 10%.
3060         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
3061         result_entries, rather than an index-based loop.
3062
3063 2008-02-17  Bruno Haible  <bruno@clisp.org>
3064
3065         Speed up by 25%.
3066         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
3067         'hashcode_cached'.
3068         (entry_create): New function.
3069         (entry_hashcode): Use the cached hashcode if possible.
3070         (read_changelog_file, try_split_merged_entry): Use entry_create.
3071
3072 2008-02-17  Bruno Haible  <bruno@clisp.org>
3073
3074         Speed up from O(n^2) to O(n) for long ChangeLog files.
3075         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
3076         (read_changelog_file): Change implementation of entries_reversed list
3077         to rbtreehash.
3078         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
3079
3080 2008-02-17  Bruno Haible  <bruno@clisp.org>
3081
3082         New option --split-merged-entry.
3083         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
3084         (find_paragraph_end, try_split_merged_entry): New functions.
3085         (long_options): Add option --split-merged-entry.
3086         (usage): Document option --split-merged-entry.
3087         (main): Implement option --split-merged-entry.
3088         Reported by Eric Blake.
3089
3090 2008-02-17  Bruno Haible  <bruno@clisp.org>
3091
3092         * lib/git-merge-changelog.c: Include c-strstr.h.
3093         (main): Support the "git pull --rebase" situation.
3094         * modules/git-merge-changelog (Depends-on): Add c-strstr.
3095         Reported by Eric Blake.
3096
3097 2008-02-16  Eric Blake  <ebb9@byu.net>
3098
3099         Avoid doubling \ in common case of "c-maybe" quoting style.
3100         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
3101         eliding outer quotes.
3102         * lib/quotearg.h: Document this.
3103         * tests/test-quotearg.c (result_strings, inputs, results_g)
3104         (flag_results, locale_results): Test it by adding a new string to
3105         each test group.
3106         (compare_strings): Test new string.
3107
3108 2008-02-13  Eric Blake  <ebb9@byu.net>
3109
3110         Avoid trigraph quoting in default output.
3111         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
3112         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
3113         unless explicitly requested.
3114         * tests/test-quotearg.c (flag_results, main): Add additional tests.
3115
3116 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
3117
3118         Don't rely on signed integer overflowing to negative value.
3119         * lib/getugroups.c (getugroups): Include <limits.h>.
3120         Instead, compare against INT_MAX, and increment only if the test passes.
3121
3122 2008-02-13  Jim Meyering  <meyering@redhat.com>
3123         and Eric Blake  <ebb9@byu.net>
3124
3125         Avoid shadowing warning and compile errors on Linux.
3126         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
3127         forwarding macros on Linux.
3128         (dcgettext): Define a stub, for Linux.
3129         (results_g, main): Avoid warnings.
3130
3131 2008-02-12  Eric Blake  <ebb9@byu.net>
3132
3133         Silence warning in last patch.
3134         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
3135
3136         Quotearg part 4: add tests, fix c-maybe colon quoting.
3137         * lib/quotearg.h: Improve documentation.
3138         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
3139         escapes when adding outer quotes.  When quoting trigraphs, use
3140         valid C notation.  When quoting NUL, omit extra characters if next
3141         character is not digit.  Alter prototype.
3142         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
3143         callers.
3144         * modules/quotearg-tests: New module.
3145         * tests/test-quotearg.c: New test.
3146
3147 2008-02-07  Eric Blake  <ebb9@byu.net>
3148
3149         Quotearg part 3: add flag to control outer quote elision.
3150         * lib/quotearg.h (c_maybe_quoting_style): New style.
3151         (enum quoting_flags): Better documentation of flags.
3152         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
3153         c-maybe style.
3154         (quotearg_buffer_restyled): Handle new flag to elide outer
3155         quotes.
3156
3157         Quotearg part 2: add flag that can control NUL elision.
3158         * lib/quotearg.h (set_quoting_flags): New prototype.
3159         * lib/quotearg.c (struct quoting_options): Add flag field.
3160         (set_quoting_flags): New function.
3161         (quotearg_buffer_restyled): Add flags parameter.
3162         (quotearg_alloc_mem): Set the flag if length cannot be returned.
3163         (quotearg_n_options): Set the flag, since length cannot be
3164         returned.
3165         (quoting_options_from_style): Default flags correctly.
3166
3167         Quotearg part 1: more wrappers, restore quotearg_char state.
3168         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
3169         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
3170         (quotearg_colon_mem): New wrappers.
3171         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
3172         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
3173         functions.
3174         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
3175         (quotearg_colon_mem): New functions.
3176
3177 2008-02-11  Bruno Haible  <bruno@clisp.org>
3178
3179         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
3180         library in the current directory: it does not work with parallel make.
3181         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3182
3183 2008-02-11  Bruno Haible  <bruno@clisp.org>
3184
3185         * .gitattributes: New file.
3186
3187 2008-02-11  Jim Meyering  <meyering@redhat.com>
3188
3189         useless-if-before-free: Fix reversed exit values.
3190         * build-aux/useless-if-before-free: Use correct values
3191         for EXIT_MATCH and EXIT_NO_MATCH.
3192
3193         * build-aux/useless-if-before-free: Close stdout carefully.
3194
3195 2008-02-10  Bruno Haible  <bruno@clisp.org>
3196
3197         New module 'git-merge-changelog'.
3198         * modules/git-merge-changelog: New file.
3199         * lib/git-merge-changelog.c: New file.
3200
3201 2008-02-10  Jim Meyering  <meyering@redhat.com>
3202
3203         useless-if-before-free: New option: --list (-l).
3204
3205         useless-if-before-free: Don't exit immediately upon open failure.
3206         * build-aux/useless-if-before-free: Exit 2 for errors.
3207         Upon failure to open a file, don't exit immediately.
3208         Rather, just warn and continue with any remaining files.
3209
3210 2008-02-10  Bruno Haible  <bruno@clisp.org>
3211
3212         New abstract list operation 'node_set_value'.
3213         * lib/gl_list.h (gl_list_node_set_value): New function.
3214         (struct gl_list_implementation): New field node_set_value.
3215         * lib/gl_list.c (gl_list_node_set_value): New function.
3216         * lib/gl_array_list.c (gl_array_node_set_value): New function.
3217         (gl_array_list_implementation): Update.
3218         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
3219         (gl_carray_list_implementation): Update.
3220         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
3221         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
3222         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
3223         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
3224         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
3225         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
3226         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
3227         Update.
3228         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
3229         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
3230         (gl_sublist_list_implementation): Update.
3231
3232 2008-02-10  Bruno Haible  <bruno@clisp.org>
3233
3234         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
3235         Needed when ELEMENT is #defined to 'some_type *'.
3236
3237 2008-02-10  Jim Meyering  <meyering@redhat.com>
3238
3239         New script and module: useless-if-before-free
3240         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
3241         * build-aux/useless-if-before-free: New file.
3242         * modules/useless-if-before-free: New file.
3243
3244         * build-aux/gitlog-to-changelog: Use committer date, not author date.
3245
3246         xstrtol_error: Fix typo.
3247         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
3248         s/exit_failure/exit_status/.
3249
3250 2008-02-09  Jim Meyering  <meyering@redhat.com>
3251
3252         New script and module: gitlog-to-changelog
3253         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
3254         * modules/gitlog-to-changelog: New file.
3255         * build-aux/gitlog-to-changelog: New file.
3256
3257 2008-02-08  Jim Meyering  <meyering@redhat.com>
3258
3259         Avoid two "parameter unused" warnings.
3260         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
3261         Mark "st" as used.
3262
3263         Use "git COMMAND", not "git-COMMAND".
3264         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
3265         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
3266         * build-aux/git-version-gen: Use "git status", not "git-status".
3267
3268 2008-02-07  Bruno Haible  <bruno@clisp.org>
3269
3270         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
3271         Avoids a crash on Windows Vista.
3272         Reported by Adam Strzelecki <ono@java.pl> via
3273         Simon Josefsson <simon@josefsson.org>.
3274
3275 2008-02-06  Bruno Haible  <bruno@clisp.org>
3276
3277         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
3278         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
3279         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
3280         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
3281         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
3282         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3283         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
3284         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
3285         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3286         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3287         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3288         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3289         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3290         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3291         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3292         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
3293         left-adjust flag.
3294         * tests/test-snprintf-posix.h (test_function): Likewise.
3295         * tests/test-sprintf-posix.h (test_function): Likewise.
3296         * tests/test-vasprintf-posix.c (test_function): Likewise.
3297         * doc/posix-functions/fprintf.texi: Update.
3298         * doc/posix-functions/printf.texi: Update.
3299         * doc/posix-functions/snprintf.texi: Update.
3300         * doc/posix-functions/sprintf.texi: Update.
3301         * doc/posix-functions/vfprintf.texi: Update.
3302         * doc/posix-functions/vprintf.texi: Update.
3303         * doc/posix-functions/vsnprintf.texi: Update.
3304         * doc/posix-functions/vsprintf.texi: Update.
3305         Reported by Peter Fales <psfales@alcatel-lucent.com>.
3306
3307 2008-02-06  Bruno Haible  <bruno@clisp.org>
3308
3309         Fix bug introduced on 2008-01-26.
3310         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
3311
3312 2008-02-06  Bruno Haible  <bruno@clisp.org>
3313
3314         Fix bug introduced on 2007-06-10.
3315         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
3316         !NEED_PRINTF_FLAG_ZERO.
3317
3318 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
3319
3320         getloadavg: use libperfstat on AIX5
3321         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
3322
3323 2008-02-03  Bruno Haible  <bruno@clisp.org>
3324
3325         * lib/diffseq.h: Add comments about required #includes.
3326         Reported by Michael Biggs <gnulib@doubleplum.net>.
3327
3328 2008-02-01  Bruno Haible  <bruno@clisp.org>
3329
3330         * users.txt: Add gnuit.
3331
3332 2008-01-31  Bruno Haible  <bruno@clisp.org>
3333
3334         * lib/md4.c (set_uint32): Mark as inline.
3335         * lib/md5.c (set_uint32): Likewise.
3336         * lib/sha1.c (set_uint32): Likewise.
3337         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
3338         * m4/md5.m4 (gl_MD5): Likewise.
3339         * m4/sha1.m4 (gl_SHA1): Likewise.
3340
3341 2008-01-31  Jim Meyering  <meyering@redhat.com>
3342
3343         Use "sizeof VAR", rather than a literal "4".
3344         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
3345         * lib/md4.c (md4_read_ctx): Likewise.
3346         * lib/sha1.c (sha1_read_ctx): Likewise.
3347
3348 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3349
3350         * tests/test-sha1.c: New file, based on test-md5.c.
3351
3352         * modules/crypto/sha1-tests: New file.
3353
3354 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3355
3356         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
3357
3358 2008-01-31  Jim Meyering  <meyering@redhat.com>
3359
3360         Prefer "sizeof v" over the equivalent "4".
3361         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
3362         * lib/md5.c (set_uint32): Likewise.
3363         * lib/sha1.c (set_uint32): Likewise.
3364
3365 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3366
3367         * lib/sha1.c (set_uint32): Mark function as static.
3368
3369 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3370
3371         md2: clarify comments to say that alignment is not required.
3372         * lib/md2.h: Remove warning about alignment in comment.
3373         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
3374         never been required.
3375
3376 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3377
3378         md4: adapt alignment constraint fix from sha1.
3379         * lib/md4.c (set_uint32): New function, from sha1.c
3380         (md4_read_ctx): Use it.
3381         (md4_finish_ctx): Doc fix.
3382         * lib/md4.h: Doc fix.
3383
3384 2008-01-31  Simon Josefsson  <simon@josefsson.org>
3385
3386         md5: adapt alignment constraint fix from sha1.
3387         * lib/md5.c (set_uint32): New function, from sha1.c
3388         (md5_read_ctx): Use it.
3389         (md5_finish_ctx): Doc fix.
3390         * lib/md5.h: Doc fix.
3391
3392 2008-01-30  Peter Palfrader  <weasel@debian.org>
3393
3394         sha1: remove the result buffer alignment constraint
3395         * lib/sha1.c (set_uint32): New function.
3396         (sha1_read_ctx): Rewrite to remove the result buffer alignment
3397         constraint.
3398         (sha1_finish_ctx): Remove comment warning about alignment constraint.
3399         * lib/sha1.h: Likewise.
3400
3401 2008-01-30  Andreas Schwab  <schwab@suse.de>
3402             Bruno Haible  <bruno@clisp.org>
3403
3404         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
3405         correct definition of LDBL_MIN_EXP.
3406
3407 2008-01-30  Karl Berry  <karl@gnu.org>
3408
3409         * config/srclist-update: try to preserve x bit on updates.
3410         * config/srclistvars.sh: update for karl.
3411
3412 2008-01-29  Jim Meyering  <meyering@redhat.com>
3413
3414         vasnprintf.c: Avoid warning about unused label
3415         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
3416         "overflow" label definition and associated code with the
3417         same cpp condition that guards the sole use of that label.
3418
3419 2008-01-26  Bruno Haible  <bruno@clisp.org>
3420
3421         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
3422         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
3423         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
3424         * lib/isnanl-nolibm.h (isnanl): Likewise.
3425         Reported by Paul Eggert <eggert@cs.ucla.edu>.
3426
3427 2008-01-26  Bruno Haible  <bruno@clisp.org>
3428
3429         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
3430         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
3431
3432 2008-01-26  Bruno Haible  <bruno@clisp.org>
3433
3434         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
3435         GCC >= 4.0 built-in.
3436         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
3437
3438 2008-01-26  Bruno Haible  <bruno@clisp.org>
3439
3440         Rename isnan, applicable to 'double' only, to isnand.
3441         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
3442         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
3443         (configure.ac): Update.
3444         (Include): Replace "isnan.h" with "isnand.h".
3445         * m4/isnand.m4: Renamed from m4/isnan.m4.
3446         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
3447         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
3448         instead of isnan.c.
3449         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
3450         instead of HAVE_ISNAN_IN_LIBC.
3451         (isnand): Renamed from isnan.
3452         * lib/isnand.c: New file.
3453         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
3454         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
3455         (Makefile.am): Update.
3456         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
3457         Include isnand.h instead of isnan.h.
3458         (main): Test isnand instead of isnan.
3459         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
3460         isnan-nolibm.
3461         * modules/frexp (Depends-on): Likewise.
3462         * modules/frexp-tests (Depends-on): Likewise.
3463         * modules/frexp-nolibm (Depends-on): Likewise.
3464         * modules/frexp-nolibm-tests (Depends-on): Likewise.
3465         * modules/isfinite (Depends-on): Likewise.
3466         * modules/round-tests (Depends-on): Likewise.
3467         * modules/signbit (Depends-on): Likewise.
3468         * modules/signbit-tests (Depends-on): Likewise.
3469         * modules/snprintf-posix (Depends-on): Likewise.
3470         * modules/sprintf-posix (Depends-on): Likewise.
3471         * modules/trunc-tests (Depends-on): Likewise.
3472         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
3473         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
3474         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
3475         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
3476         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
3477         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
3478         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
3479         * modules/vasnprintf-posix (Depends-on): Likewise.
3480         * modules/vasprintf-posix (Depends-on): Likewise.
3481         * modules/vfprintf-posix (Depends-on): Likewise.
3482         * modules/vsnprintf-posix (Depends-on): Likewise.
3483         * modules/vsprintf-posix (Depends-on): Likewise.
3484         * lib/frexp.c: Include isnand.h instead of isnan.h.
3485         (ISNAN): Set to isnand instead of isnan.
3486         * lib/isfinite.c: Include isnand.h instead of isnan.h.
3487         (gl_isfinited): Use isnand instead of isnan.
3488         * lib/signbitd.c: Include isnand.h instead of isnan.h.
3489         (gl_signbitd): Use isnand instead of isnan.
3490         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
3491         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
3492         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
3493         (main): Use isnand instead of isnan.
3494         * tests/test-round1.c: Include isnand.h.
3495         (main): Use isnand instead of isnan.
3496         * tests/test-round2.c: Include isnand.h instead of isnan.h.
3497         (ISNAN): Set to isnand instead of isnan.
3498         * tests/test-trunc1.c: Include isnand.h.
3499         (main): Use isnand instead of isnan.
3500         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
3501         (equal): Use isnand instead of isnan.
3502         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
3503         isnand-nolibm.
3504         * NEWS: Mention the change.
3505
3506 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
3507             Bruno Haible  <bruno@clisp.org>
3508
3509         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
3510         the GCC builtins for signbits are present and set
3511         REPLACE_SIGNBIT_USING_GCC if so.
3512         * lib/math.in.h (signbit): Define using GCC builtins if
3513         REPLACE_SIGNBIT_USING_GCC is set.
3514         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
3515         REPLACE_SIGNBIT_USING_GCC.
3516         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
3517
3518 2008-01-25  Jim Meyering  <meyering@redhat.com>
3519
3520         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
3521         * lib/poll.c: Include <config.h>, not "config.h".
3522         * tests/test-getaddrinfo.c: Likewise.
3523
3524 2008-01-25  Simon Josefsson  <simon@josefsson.org>
3525
3526         * modules/sockets-tests: New file.
3527
3528 2008-01-24  Simon Josefsson  <simon@josefsson.org>
3529
3530         * modules/sockets: New module, can be used to call WSA_Startup and
3531         WSA_Cleanup when needed.
3532
3533         * lib/sockets.h, lib/sockets.c: New files.
3534
3535         * m4/sockets.m4: New file.
3536
3537         * tests/test-sockets.c: New file.
3538
3539 2008-01-19  Bruno Haible  <bruno@clisp.org>
3540
3541         * doc/posix-headers: Renamed from doc/headers.
3542         * doc/posix-functions: Renamed from doc/functions.
3543         * doc/gnulib.texi: Update.
3544
3545 2008-01-19  Bruno Haible  <bruno@clisp.org>
3546
3547         * doc/glibc-functions/strcasestr.texi: Include contents of
3548         doc/functions/strcasestr.texi, fixing the list of platforms.
3549         * doc/functions/strcasestr.texi: Remove file.
3550
3551 2008-01-19  Bruno Haible  <bruno@clisp.org>
3552
3553         * doc/glibc-functions/memmem.texi: Include contents of
3554         doc/functions/memmem.texi.
3555         * doc/functions/memmem.texi: Remove file.
3556
3557 2008-01-18  Bruno Haible  <bruno@clisp.org>
3558
3559         * doc/glibc-functions/*.texi: New files.
3560         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
3561         to use the new files.
3562
3563 2008-01-17  Bruno Haible  <bruno@clisp.org>
3564
3565         * tests/test-gethostname.c (main): Fix printf statement.
3566
3567 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3568
3569         * modules/gethostname-tests: New file.
3570
3571         * tests/test-gethostname.c: New file.
3572
3573 2008-01-17  Simon Josefsson  <simon@josefsson.org>
3574
3575         * lib/gethostname.c: Include string.h unconditionally, strncpy is
3576         used by the UNAME case.  Reported by Bruno Haible
3577         <bruno@clisp.org>.
3578
3579 2008-01-17  Eric Blake  <ebb9@byu.net>
3580
3581         Convert c-strcasestr to be more efficient.
3582         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
3583         (Depends-on): Add c-strcase, remove malloca, strnlen.
3584         * tests/test-c-strcasestr.c (main): Enhance test.
3585         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
3586
3587 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
3588
3589         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
3590         Use it in creating po/Makevars.
3591
3592 2008-01-15  Simon Josefsson  <simon@josefsson.org>
3593
3594         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
3595         Applications that requires it should initialize libgcrypt
3596         manually.
3597
3598 2008-01-16  Simon Josefsson  <simon@josefsson.org>
3599
3600         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
3601
3602 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
3603
3604         Fix problem with getdate on mingw32 reported by Simon Josefsson
3605         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
3606         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
3607         tzname", when deciding whether to declare tzname.
3608         * lib/strftime.c (tzname): Likewise.
3609
3610 2008-01-15  Bruno Haible  <bruno@clisp.org>
3611
3612         Work around a MacOS X 10.5 bug in frexpl().
3613         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
3614         * doc/functions/frexpl.texi: Document the bug.
3615         Reported by Elias Pipping <pipping@gentoo.org>.
3616
3617 2008-01-14  Eric Blake  <ebb9@byu.net>
3618
3619         Touch up previous patch.
3620         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
3621         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
3622
3623         Convert strcasestr module to use Two-Way algorithm.
3624         * modules/strcasestr-simple: New module, based on the old
3625         strcasestr, but with Two-Way rather than KMP.
3626         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
3627         * lib/string.in.h (rpl_strcasestr): Declare.
3628         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
3629         performance.
3630         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
3631         * modules/string (Makefile.am): Support strcasestr.
3632         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
3633         * modules/strcasestr-tests (Depends-on): Check for alarm.
3634         * tests/test-strcasestr.c: Augment test.
3635         * lib/str-two-way.h: Clean up stray macro.
3636         * NEWS: Document new module.
3637         * MODULES.html.sh (string handling): Likewise.
3638         * doc/functions/strcasestr.texi: New file.
3639         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
3640         here, since it is not a POSIX function.
3641
3642 2008-01-14  Colin Watson  <cjwatson@debian.org>
3643             Bruno Haible  <bruno@clisp.org>
3644
3645         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
3646         works fine; if not, set REPLACE_STRSIGNAL.
3647         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
3648         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3649         REPLACE_STRSIGNAL.
3650         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
3651         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
3652         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
3653
3654 2008-01-14  Bruno Haible  <bruno@clisp.org>
3655
3656         * modules/strsignal (Include): Change to <string.h>.
3657
3658 2008-01-14  Colin Watson  <cjwatson@debian.org>
3659
3660         * modules/argp (Notice): Add a notice recommending to change
3661         XGETTEXT_OPTIONS.
3662         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
3663
3664 2008-01-13  Colin Watson  <cjwatson@debian.org>
3665
3666         * modules/strsignal-tests: New file.
3667         * tests/test-strsignal.c: New file.
3668
3669         * lib/strsignal.c: New file, from glibc with modifications.
3670         * lib/siglist.h: New file, from glibc with modifications.
3671         * lib/string.in.h (strsignal): New declaration.
3672         * m4/strsignal.m4: New file.
3673         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
3674         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
3675         * modules/strsignal: New file.
3676         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
3677         HAVE_DECL_STRSIGNAL.
3678
3679 2008-01-13  Bruno Haible  <bruno@clisp.org>
3680
3681         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
3682         locale encoding is not ASCII. Needed for OpenBSD 4.0.
3683         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
3684         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
3685
3686 2008-01-13  Bruno Haible  <bruno@clisp.org>
3687
3688         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
3689         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
3690         * lib/argp.h (__attribute__): Likewise.
3691         * lib/c-stack.c (__attribute__): Likewise.
3692         * lib/error.h (__attribute__): Likewise.
3693         * lib/fts.c (__attribute__): Likewise.
3694         * lib/openat.h (__attribute__): Likewise.
3695         * lib/stdio.in.h (__attribute__): Likewise.
3696         * lib/string.in.h (__attribute__): Likewise.
3697         * lib/utimens.c (__attribute__): Likewise.
3698         * lib/vasnprintf.h (__attribute__): Likewise.
3699         * lib/xalloc.h (__attribute__): Likewise.
3700         * lib/xprintf.h (__attribute__): Likewise.
3701         * lib/xstrtol.h (__attribute__): Likewise.
3702         * lib/xvasprintf.h (__attribute__): Likewise.
3703
3704 2008-01-12  Bruno Haible  <bruno@clisp.org>
3705
3706         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
3707         * doc/glibc-headers/a.out.texi: New file.
3708         * doc/glibc-headers/aliases.texi: New file.
3709         * doc/glibc-headers/alloca.texi: New file.
3710         * doc/glibc-headers/ar.texi: New file.
3711         * doc/glibc-headers/argp.texi: New file.
3712         * doc/glibc-headers/argz.texi: New file.
3713         * doc/glibc-headers/byteswap.texi: New file.
3714         * doc/glibc-headers/crypt.texi: New file.
3715         * doc/glibc-headers/endian.texi: New file.
3716         * doc/glibc-headers/envz.texi: New file.
3717         * doc/glibc-headers/err.texi: New file.
3718         * doc/glibc-headers/error.texi: New file.
3719         * doc/glibc-headers/execinfo.texi: New file.
3720         * doc/glibc-headers/fpu_control.texi: New file.
3721         * doc/glibc-headers/fstab.texi: New file.
3722         * doc/glibc-headers/fts.texi: New file.
3723         * doc/glibc-headers/getopt.texi: New file.
3724         * doc/glibc-headers/ieee754.texi: New file.
3725         * doc/glibc-headers/ifaddrs.texi: New file.
3726         * doc/glibc-headers/libintl.texi: New file.
3727         * doc/glibc-headers/mcheck.texi: New file.
3728         * doc/glibc-headers/mntent.texi: New file.
3729         * doc/glibc-headers/obstack.texi: New file.
3730         * doc/glibc-headers/paths.texi: New file.
3731         * doc/glibc-headers/printf.texi: New file.
3732         * doc/glibc-headers/pty.texi: New file.
3733         * doc/glibc-headers/resolv.texi: New file.
3734         * doc/glibc-headers/shadow.texi: New file.
3735         * doc/glibc-headers/sysexits.texi: New file.
3736         * doc/glibc-headers/ttyent.texi: New file.
3737
3738 2008-01-12  Jim Meyering  <meyering@redhat.com>
3739
3740         announce-gen: emit Gnulib's git-based version string.
3741         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
3742         New option --gnulib-version=V, where V is expected to be
3743         the output of running git describe in the gnulib directory.
3744         (get_tool_versions): Request feedback on xdelta.  I suspect it's
3745         not useful, and plan to stop publishing an xdelta file with each
3746         coreutils release.
3747
3748         * build-aux/announce-gen: Also check for lzma-compressed files.
3749
3750 2008-01-11  Bruno Haible  <bruno@clisp.org>
3751
3752         * tests/test-memmem.c (main): Increase maximum allowed time.
3753         * tests/test-strstr.c (main): Likewise.
3754
3755 2008-01-11  Bruno Haible  <bruno@clisp.org>
3756
3757         * doc/functions/memmem.texi: Add more precisions about platforms.
3758         * doc/functions/strstr.texi: Likewise.
3759
3760 2008-01-10  Eric Blake  <ebb9@byu.net>
3761
3762         * m4/strstr.m4: Delete cruft from copy-n-paste.
3763         Reported by Bruno Haible.
3764
3765 2008-01-10  Bruno Haible  <bruno@clisp.org>
3766
3767         Make c-strstr rely on strstr.
3768         * lib/c-strstr.c: Don't include str-kmp.h.
3769         (c_strstr): Define in terms of strstr.
3770         * modules/c-strstr (Files): Remove lib/str-kmp.h.
3771         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
3772
3773 2008-01-10  Bruno Haible  <bruno@clisp.org>
3774
3775         * doc/gnulib.texi (String Functions in C Locale): New section.
3776         * doc/c-ctype.texi: New file.
3777         * doc/c-strcase.texi: New file.
3778         * doc/c-strcaseeq.texi: New file.
3779         * doc/c-strcasestr.texi: New file.
3780         * doc/c-strstr.texi: New file.
3781         * doc/c-strtod.texi: New file.
3782         * doc/c-strtold.texi: New file.
3783
3784 2008-01-10  Eric Blake  <ebb9@byu.net>
3785
3786         * lib/relocatable.h: Fix a comment.
3787
3788 2008-01-10  Eric Blake  <ebb9@byu.net>
3789
3790         Share two-way algorithm.
3791         * lib/str-two-way.h: New file, merged from...
3792         * lib/memmem.c: ...here...
3793         * lib/strstr.c: ...and here.
3794         * modules/memmem (Files): Use it.
3795         * modules/strstr (Files): Likewise.
3796
3797         Avoid quadratic strstr implementations.
3798         * lib/strstr.c: New file.
3799         * m4/strstr.m4: Likewise.
3800         * modules/strstr: Likewise.
3801         * modules/strstr-tests: Likewise.
3802         * tests/test-strstr.c: Likewise.
3803         * lib/string.in.h (rpl_strstr): Declare.
3804         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
3805         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
3806         * modules/string (Makefile.am): Likewise.
3807         * MODULES.html.sh (string handling): Mention new module.
3808         * doc/functions/strstr.texi (strstr): Document the bug.
3809
3810 2008-01-10  Bruno Haible  <bruno@clisp.org>
3811
3812         * lib/relocatable.h (relocate): State whether result is freshly
3813         allocated or not.
3814         * lib/relocatable.c (relocate): Return a freshly allocated string
3815         instead of a pointer to a privately held string.
3816         Reported by Sylvain Beucler <beuc@gnu.org>.
3817
3818 2008-01-10  Colin Watson  <cjwatson@debian.org>
3819
3820         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
3821         s/S_ISNLK/S_ISLNK/.
3822
3823 2008-01-09  Bruno Haible  <bruno@clisp.org>
3824
3825         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
3826         and other files.
3827         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
3828         if it's only a guess.
3829         * modules/memmem: Simplify by depending on memmem-simple.
3830
3831 2008-01-09  Bruno Haible  <bruno@clisp.org>
3832
3833         Work around OpenBSD 4.0 tdelete() bug.
3834         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
3835         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
3836         macros and don't redefine the enum values.
3837         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
3838         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
3839         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
3840
3841 2008-01-09  Bruno Haible  <bruno@clisp.org>
3842
3843         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
3844         (main): Don't perform the tests if setlocale did not install a UTF-8
3845         locale. Needed on OpenBSD 4.0.
3846         * modules/wcwidth-tests (Depends-on): Add localcharset.
3847
3848 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
3849
3850         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
3851         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
3852         * NEWS: announce this.
3853         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
3854
3855 2008-01-09  Simon Josefsson  <simon@josefsson.org>
3856         and Eric Blake  <ebb9@byu.net>
3857
3858         Add memmem-simple module.
3859         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
3860         (gl_FUNC_MEMMEM): Separate performance from presence checks.
3861         * modules/memmem-simple: New file.
3862         * modules/memmem (Description): Tweak.
3863         * MODULES.html.sh (string handling): Mention new module.
3864         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
3865         addressed by memmem-simple.
3866         * NEWS: Document the difference.
3867
3868 2008-01-09  Eric Blake  <ebb9@byu.net>
3869
3870         Give gcc some memmem optimization hints.
3871         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
3872         (strcasestr): Declare as pure.
3873         * modules/memmem (Maintainer): Claim my implementation.
3874
3875 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3876
3877         Support AIX 6.1 and higher.
3878         * build-aux/config.libpath: Likewise.
3879         * build-aux/config.rpath: Likewise.
3880
3881 2008-01-08  Jim Meyering  <meyering@redhat.com>
3882             Bruno Haible  <bruno@clisp.org>
3883
3884         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
3885         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
3886         Reported by Peter Fales in
3887         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
3888
3889 2008-01-08  Bruno Haible  <bruno@clisp.org>
3890
3891         * modules/unictype/category-of (Depends-on): Add
3892         unictype/category-none.
3893         * modules/unictype/category-and-tests (Depends-on): Add
3894         unictype/category-{L,N,Lu,Nd}.
3895         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
3896         * modules/unictype/category-or-tests (Depends-on): Add
3897         unictype/category-{L,N}.
3898         * modules/unictype/category-name-tests (Depends-on): Add
3899         unictype/category-{Z,Nl}.
3900         Reported by Simon Josefsson.
3901
3902 2008-01-08  Bruno Haible  <bruno@clisp.org>
3903
3904         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
3905         convention better.
3906         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
3907         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
3908         Reported by Peter Miller <millerp@canb.auug.org.au>.
3909
3910 2008-01-08  Eric Blake  <ebb9@byu.net>
3911
3912         Rewrite memmem to guarantee linear complexity without malloc.
3913         * lib/memmem.c (memmem): Use Two-Way rather than
3914         Knuth-Morris-Pratt, to allow O(1) space usage.
3915         (critical_factorization, two_way_short_needle)
3916         (two_way_long_needle): New functions.
3917         (knuth_morris_pratt): Delete.
3918         * modules/memmem (Depends-on): No longer need malloca or stdbool.
3919         Add stdint.
3920         * tests/test-memmem.c (main): Add tests for periodic needle and
3921         sublinear performance.
3922         * doc/functions/memmem.texi (memmem): Document other deficiencies
3923         in cygwin and older glibc.
3924
3925 2008-01-08  Bruno Haible  <bruno@clisp.org>
3926
3927         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
3928         augmentation.
3929
3930 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
3931
3932         Add a configure time option: --disable-acl.
3933         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
3934         AC_ARG_ENABLE(acl).
3935
3936 2008-01-06  Simon Josefsson  <simon@josefsson.org>
3937
3938         * tests/test-localename.c: Don't include obsolete "setenv.h".
3939
3940         * modules/localename-tests (Depends-on): Need unsetenv.
3941
3942 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3943
3944         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
3945
3946 2008-01-06  Colin Watson  <cjwatson@debian.org>
3947
3948         * users.txt: Add man-db.
3949
3950 2008-01-07  Bruno Haible  <bruno@clisp.org>
3951
3952         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
3953         previous section name.
3954
3955 2008-01-07  Bruno Haible  <bruno@clisp.org>
3956
3957         * lib/progname.c (set_program_name): Don't strip off a leading
3958         "lt-" prefix outside a .libs directory.
3959         Suggested by Paul Eggert.
3960
3961 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
3962             Bruno Haible  <bruno@clisp.org>
3963
3964         Improve memory cleanup in 'relocatable' module.
3965         * lib/relocatable.h (compute_curr_prefix): Change return type to
3966         'char *'.
3967         * lib/relocatable.c (compute_curr_prefix): Change return type to
3968         'char *'. Free curr_installdir after use.
3969         (relocate): Free curr_prefix_better after use.
3970         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
3971
3972 2008-01-01  Bruno Haible  <bruno@clisp.org>
3973
3974         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
3975         failure on older glibc systems.
3976         Reported by Peter Fales <psfales@alcatel-lucent.com>.
3977
3978 2008-01-05  Eric Blake  <ebb9@byu.net>
3979
3980         Avoid quadratic system memmem.
3981         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
3982         Reported by Ralf Wildenhues.
3983
3984         Fix memmem test for mingw.
3985         * modules/memmem-tests (configure.ac): Check for alarm.
3986         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
3987         it.
3988         * doc/functions/memmem.texi: New file.
3989         * doc/gnulib.texi (Function Substitutes): Add memmem.
3990         Reported by Bruno Haible.
3991
3992 2008-01-04  Bruno Haible  <bruno@clisp.org>
3993
3994         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
3995         Require gl_HEADER_STRINGS_H_DEFAULTS, not
3996         gl_HEADER_STRING_H_DEFAULTS.
3997
3998 2008-01-04  Eric Blake  <ebb9@byu.net>
3999
4000         Shorten duration of memmem test.
4001         * tests/test-memmem.c (main): Use alarm to declare failure if test
4002         is taking too long.
4003         Reported by Ralf Wildenhues.
4004
4005 2007-12-21  Simon Josefsson  <simon@josefsson.org>
4006
4007         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
4008         string, needed by strerror.
4009
4010 2008-01-03  Colin Watson  <cjwatson@debian.org>
4011             Bruno Haible  <bruno@clisp.org>
4012
4013         * doc/gnulib-tool.texi (Localization): New section.
4014
4015 2008-01-02  Bruno Haible  <bruno@clisp.org>
4016
4017         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
4018         variables to 'unsigned char *' type.
4019         Reported by Paul Eggert.
4020
4021 2008-01-02  Jim Meyering  <jim@meyering.net>
4022
4023         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
4024
4025 2007-12-31  Jim Meyering  <jim@meyering.net>
4026
4027         Avoid use of private FTS type name.
4028         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
4029
4030 2007-12-30  Karl Berry  <karl@gnu.org>
4031
4032         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
4033         work around defect in Texinfo and/or the standalone Info browser.
4034
4035 2007-12-30  Bruno Haible  <bruno@clisp.org>
4036
4037         Unify 5 copies of the KMP code.
4038         * lib/str-kmp.h: New file.
4039         * lib/c-strcasestr.c: Include str-kmp.h.
4040         (knuth_morris_pratt): Remove function.
4041         (c_strcasestr): Update.
4042         * lib/c-strstr.c: Include str-kmp.h.
4043         (knuth_morris_pratt): Remove function.
4044         (c_strcasestr): Update.
4045         * lib/mbscasestr.c: Include str-kmp.h.
4046         (knuth_morris_pratt_unibyte): Remove function.
4047         * lib/mbsstr.c: Include str-kmp.h.
4048         (knuth_morris_pratt_unibyte): Remove function.
4049         * lib/strcasestr.c: Include str-kmp.h.
4050         (knuth_morris_pratt): Remove function.
4051         (strcasestr): Update.
4052         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
4053         * modules/c-strstr (Files): Likewise.
4054         * modules/mbscasestr (Files): Likewise.
4055         * modules/mbsstr (Files): Likewise.
4056         * modules/strcasestr (Files): Likewise.
4057         Suggested by Paul Eggert.
4058
4059 2007-12-30  Bruno Haible  <bruno@clisp.org>
4060
4061         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
4062         defined.
4063
4064 2007-12-30  Bruno Haible  <bruno@clisp.org>
4065
4066         * lib/xmalloca.h: Include xalloc.h.
4067         (xnmalloca): New macro.
4068
4069 2007-12-30  Bruno Haible  <bruno@clisp.org>
4070
4071         * lib/malloca.h (nmalloca): New macro.
4072         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
4073         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
4074         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
4075         knuth_morris_pratt_multibyte): Likewise.
4076         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
4077         knuth_morris_pratt_multibyte): Likewise.
4078         * lib/memmem.c (knuth_morris_pratt): Likewise.
4079         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
4080
4081 2007-12-25  Bruno Haible  <bruno@clisp.org>
4082
4083         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
4084         * lib/glob.c: Don't include openat.h.
4085         (link_exists2_p): Add back the code that deals with the
4086         !GLOB_ALTDIRFUNC case.
4087         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
4088         let it do the filename concatenation.
4089         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
4090         * modules/glob (Depends-on): Remove openat.
4091
4092 2007-12-31  Bruno Haible  <bruno@clisp.org>
4093
4094         * modules/dirfd (License): Change to LGPLv2+.
4095         Approved by Jim Meyering.
4096
4097 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
4098
4099         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
4100         when multiplying M by sizeof (size_t).
4101
4102 2007-12-10  Martin Lambers  <marlam@marlam.de>
4103
4104         Override getpagesize on mingw.
4105         * lib/getpagesize.c: New file.
4106         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
4107         * modules/getpagesize (Files): Add lib/getpagesize.c.
4108         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
4109         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4110         REPLACE_GETPAGESIZE.
4111         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
4112
4113 2007-12-25  Bruno Haible  <bruno@clisp.org>
4114
4115         * modules/localcharset (Notice): New field.
4116         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
4117         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
4118
4119 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
4120             Bruno Haible  <bruno@clisp.org>
4121
4122         Avoid using the syntax symbol() in formatted documentation.
4123         * MODULES.html.sh (func_module): When replacing symbol() with a
4124         hyperlink, remove the parentheses. Show an error if some remain.
4125         Recognize and render the '...' syntax.
4126         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
4127         Rework. Add paragraph about GCC's inlining.
4128         * doc/alloca.texi: Likewise.
4129         * doc/error.texi: Remove parentheses from symbol reference.
4130         * doc/gnulib-intro.texi: Likewise.
4131         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
4132         * modules/fnmatch (Description): Reword to say "the ... function".
4133         * modules/full-read (Description): Likewise.
4134         * modules/full-write (Description): Likewise.
4135         * modules/safe-read (Description): Likewise.
4136         * modules/safe-write (Description): Likewise.
4137         * modules/strchrnul (Description): Likewise.
4138         * modules/trim (Description): Likewise.
4139         * modules/error (Description): Remove parentheses from symbol
4140         references.
4141         * modules/verror (Description): Likewise.
4142         Reported by Karl Berry.
4143
4144 2007-12-25  Bruno Haible  <bruno@clisp.org>
4145
4146         Fixup after 2007-10-16 commit.
4147         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
4148
4149 2007-12-24  Bruno Haible  <bruno@clisp.org>
4150
4151         Make --enable-relocatable work with DESTDIR.
4152         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
4153         to compute installdir from destprog.
4154         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
4155         also set the RELOC_DESTDIR variable.
4156         Reported by Левашев Иван <octagram@bluebottle.com>.
4157
4158 2007-12-24  Bruno Haible  <bruno@clisp.org>
4159
4160         Fix link error due to xalloc_die().
4161         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
4162         of xreadlink.
4163         * lib/relocwrapper.c: Update comments.
4164         * build-aux/install-reloc: Remove xreadlink.c from file list.
4165         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
4166         xreadlink.c.
4167         Reported by Левашев Иван <octagram@bluebottle.com>.
4168
4169 2007-12-24  Bruno Haible  <bruno@clisp.org>
4170
4171         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
4172         * lib/setenv.h: Remove file.
4173         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
4174         lib/setenv.h.
4175         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
4176         (Depends-on): Add stdlib.
4177         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
4178         gl_FUNC_UNSETENV.
4179         (Include): Replace setenv.h with <stdlib.h>.
4180         * modules/unsetenv: New file.
4181         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
4182         * lib/unsetenv.c: Include <stdlib.h> first.
4183         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
4184         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
4185         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
4186         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
4187         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
4188         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
4189         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
4190         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
4191         * doc/functions/unsetenv.texi: Update.
4192         * modules/xsetenv (Depends-on): Add unsetenv.
4193         * modules/getdate (Depends-on): Likewise.
4194         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
4195         * lib/xsetenv.c: Don't include setenv.h.
4196         * lib/getdate.y: Likewise.
4197         * lib/relocwrapper.c: Likewise.
4198         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
4199         (Depends-on): Add stdlib.
4200         * NEWS: Mention the changes.
4201         Reported by Левашев Иван <octagram@bluebottle.com>.
4202
4203 2007-12-23  Bruno Haible  <bruno@clisp.org>
4204
4205         * lib/memmem.c (memmem): Use lowercase variable names. Tab
4206         indentation.
4207
4208 2007-12-23  Bruno Haible  <bruno@clisp.org>
4209
4210         * lib/c-strcasestr.c: Add more comments.
4211         * lib/c-strstr.c: Likewise.
4212         * lib/mbscasestr.c: Likewise.
4213         * lib/mbsstr.c: Likewise.
4214         * lib/strcasestr.c: Likewise.
4215         * lib/memmem.c: Likewise.
4216
4217 2007-12-23  Bruno Haible  <bruno@clisp.org>
4218
4219         * tests/test-memmem.c: Include <string.h> first.
4220
4221 2007-12-22  Bruno Haible  <bruno@clisp.org>
4222
4223         * gnulib-tool (func_create_testdir): Change $auxdir while generating
4224         the contents of $testsbase.
4225         Reported by Ralf Wildenhues.
4226
4227 2007-12-22  Bruno Haible  <bruno@clisp.org>
4228
4229         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
4230         two variables local_ldadd_before, local_ldadd_last.
4231
4232 2007-12-20  Eric Blake  <ebb9@byu.net>
4233
4234         Work around circular library issue when cross-compiling.
4235         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
4236         that progname.o does not need to pull in rpl_memcmp.
4237
4238 2007-12-19  Eric Blake  <ebb9@byu.net>
4239
4240         Fix memmem to avoid O(n^2) worst-case complexity.
4241         * lib/memmem.c (knuth_morris_pratt): New function.
4242         (memmem): Use it if first few naive iterations fail.
4243         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
4244         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
4245         * modules/memchr (License): Likewise.
4246         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
4247         malloca.
4248         * tests/test-memmem.c: Rewrite, borrowing ideas from
4249         test-mbsstr1.c; the old version wouldn't even compile!
4250         * modules/memmem-tests: New file.
4251         * lib/string.in.h (rpl_memmem): Add declaration.
4252         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
4253         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
4254         REPLACE_MEMMEM.
4255
4256 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
4257
4258         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
4259         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
4260         before any system include files, and undef after them all.  This
4261         should fix a problem on VMS reported by John E. Malmberg in
4262         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
4263
4264 2007-12-17  Eric Blake  <ebb9@byu.net>
4265
4266         Revert addition of verify, for BSD/OS.
4267         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
4268         can't handle large files, for the sake of obsolete platforms.
4269         * modules/fseeko (Depends-on): Remove verify.
4270         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
4271         * doc/functions/ftello.texi (ftello): Likewise.
4272         * doc/functions/fgetpos.texi (fgetpos): Likewise.
4273         Reported by Larry Jones.
4274
4275 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
4276
4277         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
4278         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
4279
4280 2007-12-17  Jim Meyering  <meyering@redhat.com>
4281
4282         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
4283         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
4284         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
4285         * modules/getcwd (Depends-on): Add openat.
4286         Reported by Petr Salinger.
4287
4288 2007-12-17  Bruno Haible  <bruno@clisp.org>
4289
4290         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
4291         avoid a segmentation fault of the configure test on x86_64 systems.
4292
4293 2007-12-15  Jim Meyering  <meyering@redhat.com>
4294
4295         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
4296
4297 2007-12-13  Eric Blake  <ebb9@byu.net>
4298
4299         Another fseek test.
4300         * tests/test-fseek.c (main): Also test ungetc handling.
4301         * tests/test-fseeko.c (main): Likewise.
4302         * modules/fseeko (Depends-on): Add verify.
4303         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
4304         large.
4305         Reported by Larry Jones.
4306
4307         Fix fseeko on mingw.
4308         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
4309         seek.
4310
4311         Beef up fseek tests.
4312         * tests/test-fseek.c (main): Also test eof handling.
4313         * tests/test-fseeko.c (main): Likewise.
4314         Reported by Larry Jones.
4315
4316 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
4317
4318         Fix fseeko on BSD-based platforms.
4319         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
4320         successful seek.
4321
4322 2007-12-12  Eric Blake  <ebb9@byu.net>
4323
4324         Allow circular dependency of separate libtests.a
4325         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
4326         when use_libtests.
4327
4328 2007-12-11  Eric Blake  <ebb9@byu.net>
4329
4330         Fix bug with -0.0L in previous patch.
4331         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
4332         * tests/test-isnan.c (main): Also test on zeroes.
4333         * tests/test-isnanf.c (main): Likewise.
4334         * tests/test-isnanl.h (main): Likewise.
4335
4336         Detect pseudo-denormals on x86 even when cross-compiling.
4337         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
4338         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
4339         invalid bit patterns that happen to satisfy ==.
4340
4341         Avoid link failures with separate libtests.a.
4342         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
4343         last, to satisfy circular dependencies.
4344
4345 2007-12-11  Eric Blake  <ebb9@byu.net>
4346         and Bruno Haible  <bruno@clisp.org>
4347
4348         Fix OpenBSD 4.0 <float.h> handling of long double.
4349         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
4350         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
4351         * doc/headers/float.texi (float.h): Document OpenBSD bug.
4352
4353 2007-12-11  Jim Meyering  <meyering@redhat.com>
4354
4355         * users.txt: Add libvirt.
4356
4357         Support versions of autoconf prior to 2.59c.
4358         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
4359         if it is not already defined.
4360
4361 2007-12-09  Bruno Haible  <bruno@clisp.org>
4362
4363         Let 'gnulib-tool --import' collect sources needed for the tests in
4364         tests/ rather than in lib/.
4365         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
4366         argument. If true, add rules to generate libtests.a, and put libtests.a
4367         into $(LDADD). Consider source files in subdirectories and set
4368         uses_subdirs.
4369         (func_emit_initmacro_start, func_emit_initmacro_end,
4370         func_emit_initmacro_done): Pass all arguments explicitly.
4371         (func_import): Determine two module lists main_modules,
4372         testsrelated_modules. Determine use_libtests. Determine two variables
4373         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
4374         instead of just sed_transform_lib_file. Determine two variables
4375         main_files and testsrelated_files. Compute 'files' as the union of
4376         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
4377         func_add_or_update. In the generated gnulib-comp.m4, collect the
4378         object files for tests/ in different variables than those for lib/.
4379         Substitute LIBTESTS_LIBDEPS.
4380         (func_create_testdir): Combine the uses_subdirs results from
4381         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
4382
4383 2007-12-09  Bruno Haible  <bruno@clisp.org>
4384
4385         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
4386         the build-aux directory.
4387
4388 2007-12-09  Bruno Haible  <bruno@clisp.org>
4389
4390         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
4391         introduced on 2006-09-09.
4392
4393 2007-12-07  Jim Meyering  <meyering@redhat.com>
4394
4395         Let these macros work also with autoconf-2.59.
4396         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
4397         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
4398         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
4399
4400 2007-12-06  Jim Meyering  <meyering@redhat.com>
4401
4402         Avoid a configure-time syntax error in gl_FUNC_ACL.
4403         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
4404         function in each branch, before testing the cache variable.
4405
4406 2007-12-04  Eric Blake  <ebb9@byu.net>
4407
4408         Make scripts executable.
4409         * build-aux/config.guess: Add execute permissions.
4410         * build-aux/config.sub: Likewise.
4411         * build-aux/gendocs.sh: Likewise.
4412
4413         Fix frexp on mingw.
4414         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
4415         cross-compiling.
4416         * doc/functions/frexp.texi (frexp): Document the bug.
4417
4418         Make cygwin fseeko check more reliable.
4419         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
4420         version numbers, rather than unrelated feature check.
4421         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
4422         * doc/functions/ftello.texi (ftello): Likewise.
4423         Reported by Bruno Haible.
4424
4425         * m4/strerror.m4: Bump version number.
4426
4427 2007-12-03  Bruno Haible  <bruno@clisp.org>
4428
4429         * doc/functions/mprotect.texi: Mention the mingw problem.
4430
4431 2007-12-03  Eric Blake  <ebb9@byu.net>
4432
4433         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
4434         REPLACE_STRERROR is initialized before this macro.
4435
4436 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
4437
4438         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
4439         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
4440         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
4441         put -lsec in even for programs other than 'ls'.  This fixes a problem
4442         for gettext reported by Bruno Haible in
4443         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
4444         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
4445         Add support for Solaris 10.  This isn't efficient, but should get the
4446         job done for now.
4447
4448 2007-12-03  James Youngman  <jay@gnu.org>
4449
4450         * doc/regexprops-generic.texi: change "an close-group" to "a
4451         close-group" and "illegal" to "not allowed".
4452
4453 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4454
4455         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
4456         pr_byname.h. Needed for the rare case when the maintainer has done
4457         "make maintainer-clean" in the source directory and then attempts a
4458         build outside the source directory.
4459         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
4460         scripts_byname.h.
4461
4462 2007-12-02  Martin Lambers <marlam@marlam.de>
4463             Bruno Haible  <bruno@clisp.org>
4464
4465         * lib/getpagesize.h: Remove file.
4466         * lib/unistd.in.h: Include declaration of getpagesize here.
4467         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
4468         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
4469         HAVE_SYS_PARAM_H.
4470         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
4471         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
4472         * modules/getpagesize (Files): Remove lib/getpagesize.h.
4473         (Depends-on): Add unistd.
4474         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4475         (Include): Use <unistd.h> instead of getpagesize.h.
4476         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
4477         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
4478         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
4479         gl_GETPAGESIZE invocation, already handled by module dependency.
4480         * lib/pagealign_alloc.c: Don't include getpagesize.h.
4481
4482 2007-12-02  Bruno Haible  <bruno@clisp.org>
4483
4484         * modules/strings-tests: New file.
4485         * tests/test-strings.c: New file.
4486
4487         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
4488         * lib/strings.in.h: New file.
4489         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
4490         * m4/strings_h.m4: New file.
4491         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
4492         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
4493         * modules/strings: New file.
4494         * modules/string (Makefile.am): Update.
4495         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
4496         Reported by Karl Berry.
4497
4498 2007-12-01  Eric Blake  <ebb9@byu.net>
4499
4500         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
4501         accomodate fix in cygwin 1.5.25.
4502
4503 2007-12-01  Jim Meyering  <meyering@redhat.com>
4504
4505         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
4506         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
4507         that would inhibit utf8-optimization of a regexp containing line-
4508         or buffer-anchors, e.g., `^', `$'.
4509
4510 2007-11-30  Bruno Haible  <bruno@clisp.org>
4511
4512         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
4513         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
4514         glthread_recursive_lock_init.
4515         * lib/lock.c (glthread_recursive_lock_init)
4516         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
4517         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4518
4519 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
4520
4521         New function qset_acl, like set_acl but with syscall semantics.
4522         * lib/acl.h (qset_acl): New decl.
4523         * lib/acl.c (qset_acl): New function.
4524         (set_acl): Use new function.  Use more-consistent diagnostics.
4525
4526 2007-11-28  Jim Meyering  <meyering@redhat.com>
4527
4528         * modules/physmem (License): Change from GPL to LGPLv2+.
4529
4530 2007-11-26  Bruno Haible  <bruno@clisp.org>
4531
4532         * lib/vasnprintf.c (decode_long_double): Don't abort if the
4533         'long double' type has excess precision.
4534         Reported by Jim Meyering in
4535         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
4536
4537 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4538
4539         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
4540         Sync from <http://gnu.org/licenses>.
4541         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
4542         with license text from same location.
4543         * doc/maintain.texi, doc/standards.texi:  Sync from
4544         <http://savannah.gnu.org/projects/gnustandards>.
4545
4546 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
4547         and Jim Meyering  <meyering@redhat.com>
4548
4549         Adjust getdate' grammar to accept a slightly more regular language.
4550         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
4551         Before, the former was rejected.
4552         * lib/getdate.y (digits_to_date_time): New function, factored
4553         out of ...
4554         (number): ...here.  Just call digits_to_date_time.
4555         (hybrid): New non-terminal to handle an <unsigned number,
4556         signed relative offset> sequence consistently.
4557
4558 2007-11-18  Jim Meyering  <meyering@redhat.com>
4559
4560         Pull my changes from coreutils:
4561         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
4562         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
4563         use of $gnulib_tool_option_extras, so that it's separated from the
4564         preceding argument.
4565
4566         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
4567         * build-aux/bootstrap (cp_mark_as_generated): Create any required
4568         parent destination directories before copying a file into place.
4569
4570 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
4571
4572         bootstrap: work also with 4-argument variant of AC_INIT
4573         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
4574
4575 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
4576
4577         Port test-getaddrinfo to Solaris.
4578         Problem reported by Bruno Haible in
4579         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
4580         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
4581         explanation of setting 'hints'.
4582         Don't reject an implementation merely because it returns EAI_SERVICE.
4583         (EAI_SERVICE): Define to 0 if not defined.
4584
4585 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
4586
4587         The license of gnu-make and posix-shell is now "GPLed build tool".
4588         * modules/gnu-make (License): Likewise.
4589         * modules/posix-shell (License): Likewise.
4590
4591         New module posix-shell, for determining a POSIX shell
4592         or perhaps something that is close enough to a POSIX shell.
4593         * m4/posix-shell.m4: New file.
4594         * modules/posix-shell: New file.
4595
4596         * MODULES.html.sh: Mention new module.
4597
4598         New module gnu-make, for determining whether we're using GNU Make.
4599         * m4/gnu-make.m4: New file.
4600         * modules/gnu-make: New file.
4601         * MODULES.html.sh: Mention new module.
4602
4603 2007-11-14  Jim Meyering  <meyering@redhat.com>
4604
4605         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
4606         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
4607         use this macro to create a function _definition_.
4608         Remove useless "#undef ARGMATCH_DIE".
4609
4610 2007-11-14  Bruno Haible  <bruno@clisp.org>
4611
4612         * lib/config.charset: Update for OpenBSD 4.1.
4613         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
4614
4615 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
4616
4617         Document 64-bit #if problems in stdint.texi.
4618         * doc/headers/stdint.texi (stdint.h): Mention problems with
4619         64-bit-#if, and how to work around them.
4620
4621         Don't insist on 'long long int' support in the preprocessor.  It
4622         breaks too many things.  For example, PRIdMAX still uses a 'long
4623         long int' format with the latest Sun compiler, even though
4624         HAVE_LONG_LONG_INT isn't defined due to that compiler's
4625         preprocessor problem.  This causes the latest coreutils to dump
4626         core on Solaris 10 sparc with the Sun C compiler.
4627         Instead, fix the 2007-10-16 problem in a different way, by evaluating
4628         the troublesome expressions at configure-time, not at #if-time.
4629         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
4630         preprocessor.
4631         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
4632         compile-time C checks, done at 'configure'-time.
4633         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
4634         * modules/inttypes (Makefile): Substitute the new symbols that
4635         gl_INTTYPES_H now generates.
4636         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
4637
4638 2007-11-12  Bruno Haible  <bruno@clisp.org>
4639
4640         Tests for Unicode character classification functions.
4641
4642         * modules/unictype/bidicategory-byname-tests: New file.
4643         * modules/unictype/bidicategory-name-tests: New file.
4644         * modules/unictype/bidicategory-of-tests: New file.
4645         * modules/unictype/bidicategory-test-tests: New file.
4646         * modules/unictype/block-list-tests: New file.
4647         * modules/unictype/block-of-tests: New file.
4648         * modules/unictype/block-test-tests: New file.
4649         * modules/unictype/category-C-tests: New file.
4650         * modules/unictype/category-Cc-tests: New file.
4651         * modules/unictype/category-Cf-tests: New file.
4652         * modules/unictype/category-Cn-tests: New file.
4653         * modules/unictype/category-Co-tests: New file.
4654         * modules/unictype/category-Cs-tests: New file.
4655         * modules/unictype/category-L-tests: New file.
4656         * modules/unictype/category-Ll-tests: New file.
4657         * modules/unictype/category-Lm-tests: New file.
4658         * modules/unictype/category-Lo-tests: New file.
4659         * modules/unictype/category-Lt-tests: New file.
4660         * modules/unictype/category-Lu-tests: New file.
4661         * modules/unictype/category-M-tests: New file.
4662         * modules/unictype/category-Mc-tests: New file.
4663         * modules/unictype/category-Me-tests: New file.
4664         * modules/unictype/category-Mn-tests: New file.
4665         * modules/unictype/category-N-tests: New file.
4666         * modules/unictype/category-Nd-tests: New file.
4667         * modules/unictype/category-Nl-tests: New file.
4668         * modules/unictype/category-No-tests: New file.
4669         * modules/unictype/category-P-tests: New file.
4670         * modules/unictype/category-Pc-tests: New file.
4671         * modules/unictype/category-Pd-tests: New file.
4672         * modules/unictype/category-Pe-tests: New file.
4673         * modules/unictype/category-Pf-tests: New file.
4674         * modules/unictype/category-Pi-tests: New file.
4675         * modules/unictype/category-Po-tests: New file.
4676         * modules/unictype/category-Ps-tests: New file.
4677         * modules/unictype/category-S-tests: New file.
4678         * modules/unictype/category-Sc-tests: New file.
4679         * modules/unictype/category-Sk-tests: New file.
4680         * modules/unictype/category-Sm-tests: New file.
4681         * modules/unictype/category-So-tests: New file.
4682         * modules/unictype/category-Z-tests: New file.
4683         * modules/unictype/category-Zl-tests: New file.
4684         * modules/unictype/category-Zp-tests: New file.
4685         * modules/unictype/category-Zs-tests: New file.
4686         * modules/unictype/category-and-not-tests: New file.
4687         * modules/unictype/category-and-tests: New file.
4688         * modules/unictype/category-byname-tests: New file.
4689         * modules/unictype/category-name-tests: New file.
4690         * modules/unictype/category-none-tests: New file.
4691         * modules/unictype/category-of-tests: New file.
4692         * modules/unictype/category-or-tests: New file.
4693         * modules/unictype/category-test-withtable-tests: New file.
4694         * modules/unictype/combining-class-tests: New file.
4695         * modules/unictype/ctype-alnum-tests: New file.
4696         * modules/unictype/ctype-alpha-tests: New file.
4697         * modules/unictype/ctype-blank-tests: New file.
4698         * modules/unictype/ctype-cntrl-tests: New file.
4699         * modules/unictype/ctype-digit-tests: New file.
4700         * modules/unictype/ctype-graph-tests: New file.
4701         * modules/unictype/ctype-lower-tests: New file.
4702         * modules/unictype/ctype-print-tests: New file.
4703         * modules/unictype/ctype-punct-tests: New file.
4704         * modules/unictype/ctype-space-tests: New file.
4705         * modules/unictype/ctype-upper-tests: New file.
4706         * modules/unictype/ctype-xdigit-tests: New file.
4707         * modules/unictype/decimal-digit-tests: New file.
4708         * modules/unictype/digit-tests: New file.
4709         * modules/unictype/mirror-tests: New file.
4710         * modules/unictype/numeric-tests: New file.
4711         * modules/unictype/property-alphabetic-tests: New file.
4712         * modules/unictype/property-ascii-hex-digit-tests: New file.
4713         * modules/unictype/property-bidi-arabic-digit-tests: New file.
4714         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
4715         * modules/unictype/property-bidi-block-separator-tests: New file.
4716         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
4717         * modules/unictype/property-bidi-common-separator-tests: New file.
4718         * modules/unictype/property-bidi-control-tests: New file.
4719         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
4720         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
4721         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
4722         * modules/unictype/property-bidi-european-digit-tests: New file.
4723         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
4724         * modules/unictype/property-bidi-left-to-right-tests: New file.
4725         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
4726         * modules/unictype/property-bidi-other-neutral-tests: New file.
4727         * modules/unictype/property-bidi-pdf-tests: New file.
4728         * modules/unictype/property-bidi-segment-separator-tests: New file.
4729         * modules/unictype/property-bidi-whitespace-tests: New file.
4730         * modules/unictype/property-byname-tests: New file.
4731         * modules/unictype/property-combining-tests: New file.
4732         * modules/unictype/property-composite-tests: New file.
4733         * modules/unictype/property-currency-symbol-tests: New file.
4734         * modules/unictype/property-dash-tests: New file.
4735         * modules/unictype/property-decimal-digit-tests: New file.
4736         * modules/unictype/property-default-ignorable-code-point-tests: New file.
4737         * modules/unictype/property-deprecated-tests: New file.
4738         * modules/unictype/property-diacritic-tests: New file.
4739         * modules/unictype/property-extender-tests: New file.
4740         * modules/unictype/property-format-control-tests: New file.
4741         * modules/unictype/property-grapheme-base-tests: New file.
4742         * modules/unictype/property-grapheme-extend-tests: New file.
4743         * modules/unictype/property-grapheme-link-tests: New file.
4744         * modules/unictype/property-hex-digit-tests: New file.
4745         * modules/unictype/property-hyphen-tests: New file.
4746         * modules/unictype/property-id-continue-tests: New file.
4747         * modules/unictype/property-id-start-tests: New file.
4748         * modules/unictype/property-ideographic-tests: New file.
4749         * modules/unictype/property-ids-binary-operator-tests: New file.
4750         * modules/unictype/property-ids-trinary-operator-tests: New file.
4751         * modules/unictype/property-ignorable-control-tests: New file.
4752         * modules/unictype/property-iso-control-tests: New file.
4753         * modules/unictype/property-join-control-tests: New file.
4754         * modules/unictype/property-left-of-pair-tests: New file.
4755         * modules/unictype/property-line-separator-tests: New file.
4756         * modules/unictype/property-logical-order-exception-tests: New file.
4757         * modules/unictype/property-lowercase-tests: New file.
4758         * modules/unictype/property-math-tests: New file.
4759         * modules/unictype/property-non-break-tests: New file.
4760         * modules/unictype/property-not-a-character-tests: New file.
4761         * modules/unictype/property-numeric-tests: New file.
4762         * modules/unictype/property-other-alphabetic-tests: New file.
4763         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
4764         * modules/unictype/property-other-grapheme-extend-tests: New file.
4765         * modules/unictype/property-other-id-continue-tests: New file.
4766         * modules/unictype/property-other-id-start-tests: New file.
4767         * modules/unictype/property-other-lowercase-tests: New file.
4768         * modules/unictype/property-other-math-tests: New file.
4769         * modules/unictype/property-other-uppercase-tests: New file.
4770         * modules/unictype/property-paired-punctuation-tests: New file.
4771         * modules/unictype/property-paragraph-separator-tests: New file.
4772         * modules/unictype/property-pattern-syntax-tests: New file.
4773         * modules/unictype/property-pattern-white-space-tests: New file.
4774         * modules/unictype/property-private-use-tests: New file.
4775         * modules/unictype/property-punctuation-tests: New file.
4776         * modules/unictype/property-quotation-mark-tests: New file.
4777         * modules/unictype/property-radical-tests: New file.
4778         * modules/unictype/property-sentence-terminal-tests: New file.
4779         * modules/unictype/property-soft-dotted-tests: New file.
4780         * modules/unictype/property-space-tests: New file.
4781         * modules/unictype/property-terminal-punctuation-tests: New file.
4782         * modules/unictype/property-test-tests: New file.
4783         * modules/unictype/property-titlecase-tests: New file.
4784         * modules/unictype/property-unassigned-code-value-tests: New file.
4785         * modules/unictype/property-unified-ideograph-tests: New file.
4786         * modules/unictype/property-uppercase-tests: New file.
4787         * modules/unictype/property-variation-selector-tests: New file.
4788         * modules/unictype/property-white-space-tests: New file.
4789         * modules/unictype/property-xid-continue-tests: New file.
4790         * modules/unictype/property-xid-start-tests: New file.
4791         * modules/unictype/property-zero-width-tests: New file.
4792         * modules/unictype/scripts-tests: New file.
4793         * modules/unictype/syntax-c-ident-tests: New file.
4794         * modules/unictype/syntax-c-whitespace-tests: New file.
4795         * modules/unictype/syntax-java-ident-tests: New file.
4796         * modules/unictype/syntax-java-whitespace-tests: New file.
4797         * tests/unictype/test-bidi_byname.c: New file.
4798         * tests/unictype/test-bidi_name.c: New file.
4799         * tests/unictype/test-bidi_of.c: New file.
4800         * tests/unictype/test-bidi_test.c: New file.
4801         * tests/unictype/test-block_list.c: New file.
4802         * tests/unictype/test-block_of.c: New file.
4803         * tests/unictype/test-block_test.c: New file.
4804         * tests/unictype/test-categ_and.c: New file.
4805         * tests/unictype/test-categ_and_not.c: New file.
4806         * tests/unictype/test-categ_byname.c: New file.
4807         * tests/unictype/test-categ_name.c: New file.
4808         * tests/unictype/test-categ_none.c: New file.
4809         * tests/unictype/test-categ_of.c: New file.
4810         * tests/unictype/test-categ_or.c: New file.
4811         * tests/unictype/test-categ_test_withtable.c: New file.
4812         * tests/unictype/test-combining.c: New file.
4813         * tests/unictype/test-decdigit.c: New file.
4814         * tests/unictype/test-digit.c: New file.
4815         * tests/unictype/test-mirror.c: New file.
4816         * tests/unictype/test-numeric.c: New file.
4817         * tests/unictype/test-pr_byname.c: New file.
4818         * tests/unictype/test-pr_test.c: New file.
4819         * tests/unictype/test-predicate-part1.h: New file.
4820         * tests/unictype/test-predicate-part2.h: New file.
4821         * tests/unictype/test-scripts.c: New file.
4822         * tests/unictype/test-sy_c_ident.c: New file.
4823         * tests/unictype/test-sy_java_ident.c: New file.
4824
4825         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
4826         for Unicode 5.0.0.
4827         * tests/unictype/test-categ_Cc.c: Likewise.
4828         * tests/unictype/test-categ_Cf.c: Likewise.
4829         * tests/unictype/test-categ_Cn.c: Likewise.
4830         * tests/unictype/test-categ_Co.c: Likewise.
4831         * tests/unictype/test-categ_Cs.c: Likewise.
4832         * tests/unictype/test-categ_L.c: Likewise.
4833         * tests/unictype/test-categ_Ll.c: Likewise.
4834         * tests/unictype/test-categ_Lm.c: Likewise.
4835         * tests/unictype/test-categ_Lo.c: Likewise.
4836         * tests/unictype/test-categ_Lt.c: Likewise.
4837         * tests/unictype/test-categ_Lu.c: Likewise.
4838         * tests/unictype/test-categ_M.c: Likewise.
4839         * tests/unictype/test-categ_Mc.c: Likewise.
4840         * tests/unictype/test-categ_Me.c: Likewise.
4841         * tests/unictype/test-categ_Mn.c: Likewise.
4842         * tests/unictype/test-categ_N.c: Likewise.
4843         * tests/unictype/test-categ_Nd.c: Likewise.
4844         * tests/unictype/test-categ_Nl.c: Likewise.
4845         * tests/unictype/test-categ_No.c: Likewise.
4846         * tests/unictype/test-categ_P.c: Likewise.
4847         * tests/unictype/test-categ_Pc.c: Likewise.
4848         * tests/unictype/test-categ_Pd.c: Likewise.
4849         * tests/unictype/test-categ_Pe.c: Likewise.
4850         * tests/unictype/test-categ_Pf.c: Likewise.
4851         * tests/unictype/test-categ_Pi.c: Likewise.
4852         * tests/unictype/test-categ_Po.c: Likewise.
4853         * tests/unictype/test-categ_Ps.c: Likewise.
4854         * tests/unictype/test-categ_S.c: Likewise.
4855         * tests/unictype/test-categ_Sc.c: Likewise.
4856         * tests/unictype/test-categ_Sk.c: Likewise.
4857         * tests/unictype/test-categ_Sm.c: Likewise.
4858         * tests/unictype/test-categ_So.c: Likewise.
4859         * tests/unictype/test-categ_Z.c: Likewise.
4860         * tests/unictype/test-categ_Zl.c: Likewise.
4861         * tests/unictype/test-categ_Zp.c: Likewise.
4862         * tests/unictype/test-categ_Zs.c: Likewise.
4863         * tests/unictype/test-ctype_alnum.c: Likewise.
4864         * tests/unictype/test-ctype_alpha.c: Likewise.
4865         * tests/unictype/test-ctype_blank.c: Likewise.
4866         * tests/unictype/test-ctype_cntrl.c: Likewise.
4867         * tests/unictype/test-ctype_digit.c: Likewise.
4868         * tests/unictype/test-ctype_graph.c: Likewise.
4869         * tests/unictype/test-ctype_lower.c: Likewise.
4870         * tests/unictype/test-ctype_print.c: Likewise.
4871         * tests/unictype/test-ctype_punct.c: Likewise.
4872         * tests/unictype/test-ctype_space.c: Likewise.
4873         * tests/unictype/test-ctype_upper.c: Likewise.
4874         * tests/unictype/test-ctype_xdigit.c: Likewise.
4875         * tests/unictype/test-decdigit.h: Likewise.
4876         * tests/unictype/test-digit.h: Likewise.
4877         * tests/unictype/test-numeric.h: Likewise.
4878         * tests/unictype/test-pr_alphabetic.c: Likewise.
4879         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
4880         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
4881         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
4882         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
4883         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
4884         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
4885         * tests/unictype/test-pr_bidi_control.c: Likewise.
4886         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
4887         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
4888         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
4889         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
4890         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
4891         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
4892         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
4893         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
4894         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
4895         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
4896         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
4897         * tests/unictype/test-pr_combining.c: Likewise.
4898         * tests/unictype/test-pr_composite.c: Likewise.
4899         * tests/unictype/test-pr_currency_symbol.c: Likewise.
4900         * tests/unictype/test-pr_dash.c: Likewise.
4901         * tests/unictype/test-pr_decimal_digit.c: Likewise.
4902         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
4903         * tests/unictype/test-pr_deprecated.c: Likewise.
4904         * tests/unictype/test-pr_diacritic.c: Likewise.
4905         * tests/unictype/test-pr_extender.c: Likewise.
4906         * tests/unictype/test-pr_format_control.c: Likewise.
4907         * tests/unictype/test-pr_grapheme_base.c: Likewise.
4908         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
4909         * tests/unictype/test-pr_grapheme_link.c: Likewise.
4910         * tests/unictype/test-pr_hex_digit.c: Likewise.
4911         * tests/unictype/test-pr_hyphen.c: Likewise.
4912         * tests/unictype/test-pr_id_continue.c: Likewise.
4913         * tests/unictype/test-pr_id_start.c: Likewise.
4914         * tests/unictype/test-pr_ideographic.c: Likewise.
4915         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
4916         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
4917         * tests/unictype/test-pr_ignorable_control.c: Likewise.
4918         * tests/unictype/test-pr_iso_control.c: Likewise.
4919         * tests/unictype/test-pr_join_control.c: Likewise.
4920         * tests/unictype/test-pr_left_of_pair.c: Likewise.
4921         * tests/unictype/test-pr_line_separator.c: Likewise.
4922         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
4923         * tests/unictype/test-pr_lowercase.c: Likewise.
4924         * tests/unictype/test-pr_math.c: Likewise.
4925         * tests/unictype/test-pr_non_break.c: Likewise.
4926         * tests/unictype/test-pr_not_a_character.c: Likewise.
4927         * tests/unictype/test-pr_numeric.c: Likewise.
4928         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
4929         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
4930         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
4931         * tests/unictype/test-pr_other_id_continue.c: Likewise.
4932         * tests/unictype/test-pr_other_id_start.c: Likewise.
4933         * tests/unictype/test-pr_other_lowercase.c: Likewise.
4934         * tests/unictype/test-pr_other_math.c: Likewise.
4935         * tests/unictype/test-pr_other_uppercase.c: Likewise.
4936         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
4937         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
4938         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
4939         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
4940         * tests/unictype/test-pr_private_use.c: Likewise.
4941         * tests/unictype/test-pr_punctuation.c: Likewise.
4942         * tests/unictype/test-pr_quotation_mark.c: Likewise.
4943         * tests/unictype/test-pr_radical.c: Likewise.
4944         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
4945         * tests/unictype/test-pr_soft_dotted.c: Likewise.
4946         * tests/unictype/test-pr_space.c: Likewise.
4947         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
4948         * tests/unictype/test-pr_titlecase.c: Likewise.
4949         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
4950         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
4951         * tests/unictype/test-pr_uppercase.c: Likewise.
4952         * tests/unictype/test-pr_variation_selector.c: Likewise.
4953         * tests/unictype/test-pr_white_space.c: Likewise.
4954         * tests/unictype/test-pr_xid_continue.c: Likewise.
4955         * tests/unictype/test-pr_xid_start.c: Likewise.
4956         * tests/unictype/test-pr_zero_width.c: Likewise.
4957         * tests/unictype/test-sy_c_whitespace.c: Likewise.
4958         * tests/unictype/test-sy_java_whitespace.c: Likewise.
4959
4960 2007-11-12  Bruno Haible  <bruno@clisp.org>
4961
4962         Unicode character classification functions.
4963         * lib/unictype.h: New file.
4964         * modules/unictype/base: New file.
4965         * modules/unictype/category-L: New file.
4966         * modules/unictype/category-Lu: New file.
4967         * modules/unictype/category-Ll: New file.
4968         * modules/unictype/category-Lt: New file.
4969         * modules/unictype/category-Lm: New file.
4970         * modules/unictype/category-Lo: New file.
4971         * modules/unictype/category-M: New file.
4972         * modules/unictype/category-Mn: New file.
4973         * modules/unictype/category-Mc: New file.
4974         * modules/unictype/category-Me: New file.
4975         * modules/unictype/category-N: New file.
4976         * modules/unictype/category-Nd: New file.
4977         * modules/unictype/category-Nl: New file.
4978         * modules/unictype/category-No: New file.
4979         * modules/unictype/category-P: New file.
4980         * modules/unictype/category-Pc: New file.
4981         * modules/unictype/category-Pd: New file.
4982         * modules/unictype/category-Ps: New file.
4983         * modules/unictype/category-Pe: New file.
4984         * modules/unictype/category-Pi: New file.
4985         * modules/unictype/category-Pf: New file.
4986         * modules/unictype/category-Po: New file.
4987         * modules/unictype/category-S: New file.
4988         * modules/unictype/category-Sm: New file.
4989         * modules/unictype/category-Sc: New file.
4990         * modules/unictype/category-Sk: New file.
4991         * modules/unictype/category-So: New file.
4992         * modules/unictype/category-Z: New file.
4993         * modules/unictype/category-Zs: New file.
4994         * modules/unictype/category-Zl: New file.
4995         * modules/unictype/category-Zp: New file.
4996         * modules/unictype/category-C: New file.
4997         * modules/unictype/category-Cc: New file.
4998         * modules/unictype/category-Cf: New file.
4999         * modules/unictype/category-Cs: New file.
5000         * modules/unictype/category-Co: New file.
5001         * modules/unictype/category-Cn: New file.
5002         * modules/unictype/category-or: New file.
5003         * modules/unictype/category-of: New file.
5004         * modules/unictype/category-test: New file.
5005         * modules/unictype/category-test-withtable: New file.
5006         * modules/unictype/category-byname: New file.
5007         * modules/unictype/category-none: New file.
5008         * modules/unictype/category-and: New file.
5009         * modules/unictype/category-and-not: New file.
5010         * modules/unictype/category-name: New file.
5011         * modules/unictype/combining-class: New file.
5012         * modules/unictype/category-all: New file.
5013         * modules/unictype/bidicategory-all: New file.
5014         * modules/unictype/bidicategory-byname: New file.
5015         * modules/unictype/bidicategory-name: New file.
5016         * modules/unictype/bidicategory-of: New file.
5017         * modules/unictype/bidicategory-test: New file.
5018         * modules/unictype/decimal-digit: New file.
5019         * modules/unictype/digit: New file.
5020         * modules/unictype/numeric: New file.
5021         * modules/unictype/mirror: New file.
5022         * modules/unictype/property-white-space: New file.
5023         * modules/unictype/property-alphabetic: New file.
5024         * modules/unictype/property-other-alphabetic: New file.
5025         * modules/unictype/property-not-a-character: New file.
5026         * modules/unictype/property-default-ignorable-code-point: New file.
5027         * modules/unictype/property-other-default-ignorable-code-point: New
5028         file.
5029         * modules/unictype/property-deprecated: New file.
5030         * modules/unictype/property-logical-order-exception: New file.
5031         * modules/unictype/property-variation-selector: New file.
5032         * modules/unictype/property-private-use: New file.
5033         * modules/unictype/property-unassigned-code-value: New file.
5034         * modules/unictype/property-uppercase: New file.
5035         * modules/unictype/property-other-uppercase: New file.
5036         * modules/unictype/property-lowercase: New file.
5037         * modules/unictype/property-other-lowercase: New file.
5038         * modules/unictype/property-titlecase: New file.
5039         * modules/unictype/property-soft-dotted: New file.
5040         * modules/unictype/property-id-start: New file.
5041         * modules/unictype/property-other-id-start: New file.
5042         * modules/unictype/property-id-continue: New file.
5043         * modules/unictype/property-other-id-continue: New file.
5044         * modules/unictype/property-xid-start: New file.
5045         * modules/unictype/property-xid-continue: New file.
5046         * modules/unictype/property-pattern-white-space: New file.
5047         * modules/unictype/property-pattern-syntax: New file.
5048         * modules/unictype/property-join-control: New file.
5049         * modules/unictype/property-grapheme-base: New file.
5050         * modules/unictype/property-grapheme-extend: New file.
5051         * modules/unictype/property-other-grapheme-extend: New file.
5052         * modules/unictype/property-grapheme-link: New file.
5053         * modules/unictype/property-bidi-control: New file.
5054         * modules/unictype/property-bidi-left-to-right: New file.
5055         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
5056         * modules/unictype/property-bidi-arabic-right-to-left: New file.
5057         * modules/unictype/property-bidi-european-digit: New file.
5058         * modules/unictype/property-bidi-eur-num-separator: New file.
5059         * modules/unictype/property-bidi-eur-num-terminator: New file.
5060         * modules/unictype/property-bidi-arabic-digit: New file.
5061         * modules/unictype/property-bidi-common-separator: New file.
5062         * modules/unictype/property-bidi-block-separator: New file.
5063         * modules/unictype/property-bidi-segment-separator: New file.
5064         * modules/unictype/property-bidi-whitespace: New file.
5065         * modules/unictype/property-bidi-non-spacing-mark: New file.
5066         * modules/unictype/property-bidi-boundary-neutral: New file.
5067         * modules/unictype/property-bidi-pdf: New file.
5068         * modules/unictype/property-bidi-embedding-or-override: New file.
5069         * modules/unictype/property-bidi-other-neutral: New file.
5070         * modules/unictype/property-hex-digit: New file.
5071         * modules/unictype/property-ascii-hex-digit: New file.
5072         * modules/unictype/property-ideographic: New file.
5073         * modules/unictype/property-unified-ideograph: New file.
5074         * modules/unictype/property-radical: New file.
5075         * modules/unictype/property-ids-binary-operator: New file.
5076         * modules/unictype/property-ids-trinary-operator: New file.
5077         * modules/unictype/property-zero-width: New file.
5078         * modules/unictype/property-space: New file.
5079         * modules/unictype/property-non-break: New file.
5080         * modules/unictype/property-iso-control: New file.
5081         * modules/unictype/property-format-control: New file.
5082         * modules/unictype/property-dash: New file.
5083         * modules/unictype/property-hyphen: New file.
5084         * modules/unictype/property-punctuation: New file.
5085         * modules/unictype/property-line-separator: New file.
5086         * modules/unictype/property-paragraph-separator: New file.
5087         * modules/unictype/property-quotation-mark: New file.
5088         * modules/unictype/property-sentence-terminal: New file.
5089         * modules/unictype/property-terminal-punctuation: New file.
5090         * modules/unictype/property-currency-symbol: New file.
5091         * modules/unictype/property-math: New file.
5092         * modules/unictype/property-other-math: New file.
5093         * modules/unictype/property-paired-punctuation: New file.
5094         * modules/unictype/property-left-of-pair: New file.
5095         * modules/unictype/property-combining: New file.
5096         * modules/unictype/property-composite: New file.
5097         * modules/unictype/property-decimal-digit: New file.
5098         * modules/unictype/property-numeric: New file.
5099         * modules/unictype/property-diacritic: New file.
5100         * modules/unictype/property-extender: New file.
5101         * modules/unictype/property-ignorable-control: New file.
5102         * modules/unictype/property-test: New file.
5103         * modules/unictype/property-byname: New file.
5104         * modules/unictype/property-all: New file.
5105         * modules/unictype/scripts: New file.
5106         * modules/unictype/scripts-all: New file.
5107         * modules/unictype/block-of: New file.
5108         * modules/unictype/block-test: New file.
5109         * modules/unictype/block-list: New file.
5110         * modules/unictype/block-all: New file.
5111         * modules/unictype/syntax-c-whitespace: New file.
5112         * modules/unictype/syntax-java-whitespace: New file.
5113         * modules/unictype/syntax-c-ident: New file.
5114         * modules/unictype/syntax-java-ident: New file.
5115         * modules/unictype/ctype-alnum: New file.
5116         * modules/unictype/ctype-alpha: New file.
5117         * modules/unictype/ctype-cntrl: New file.
5118         * modules/unictype/ctype-digit: New file.
5119         * modules/unictype/ctype-graph: New file.
5120         * modules/unictype/ctype-lower: New file.
5121         * modules/unictype/ctype-print: New file.
5122         * modules/unictype/ctype-punct: New file.
5123         * modules/unictype/ctype-space: New file.
5124         * modules/unictype/ctype-upper: New file.
5125         * modules/unictype/ctype-xdigit: New file.
5126         * modules/unictype/ctype-blank: New file.
5127         * lib/unictype/bidi_byname.c: New file.
5128         * lib/unictype/bidi_name.c: New file.
5129         * lib/unictype/bidi_of.c: New file.
5130         * lib/unictype/bidi_test.c: New file.
5131         * lib/unictype/bitmap.h: New file.
5132         * lib/unictype/block_test.c: New file.
5133         * lib/unictype/blocks.c: New file.
5134         * lib/unictype/categ_C.c: New file.
5135         * lib/unictype/categ_Cc.c: New file.
5136         * lib/unictype/categ_Cf.c: New file.
5137         * lib/unictype/categ_Cn.c: New file.
5138         * lib/unictype/categ_Co.c: New file.
5139         * lib/unictype/categ_Cs.c: New file.
5140         * lib/unictype/categ_L.c: New file.
5141         * lib/unictype/categ_Ll.c: New file.
5142         * lib/unictype/categ_Lm.c: New file.
5143         * lib/unictype/categ_Lo.c: New file.
5144         * lib/unictype/categ_Lt.c: New file.
5145         * lib/unictype/categ_Lu.c: New file.
5146         * lib/unictype/categ_M.c: New file.
5147         * lib/unictype/categ_Mc.c: New file.
5148         * lib/unictype/categ_Me.c: New file.
5149         * lib/unictype/categ_Mn.c: New file.
5150         * lib/unictype/categ_N.c: New file.
5151         * lib/unictype/categ_Nd.c: New file.
5152         * lib/unictype/categ_Nl.c: New file.
5153         * lib/unictype/categ_No.c: New file.
5154         * lib/unictype/categ_P.c: New file.
5155         * lib/unictype/categ_Pc.c: New file.
5156         * lib/unictype/categ_Pd.c: New file.
5157         * lib/unictype/categ_Pe.c: New file.
5158         * lib/unictype/categ_Pf.c: New file.
5159         * lib/unictype/categ_Pi.c: New file.
5160         * lib/unictype/categ_Po.c: New file.
5161         * lib/unictype/categ_Ps.c: New file.
5162         * lib/unictype/categ_S.c: New file.
5163         * lib/unictype/categ_Sc.c: New file.
5164         * lib/unictype/categ_Sk.c: New file.
5165         * lib/unictype/categ_Sm.c: New file.
5166         * lib/unictype/categ_So.c: New file.
5167         * lib/unictype/categ_Z.c: New file.
5168         * lib/unictype/categ_Zl.c: New file.
5169         * lib/unictype/categ_Zp.c: New file.
5170         * lib/unictype/categ_Zs.c: New file.
5171         * lib/unictype/categ_and.c: New file.
5172         * lib/unictype/categ_and_not.c: New file.
5173         * lib/unictype/categ_byname.c: New file.
5174         * lib/unictype/categ_name.c: New file.
5175         * lib/unictype/categ_none.c: New file.
5176         * lib/unictype/categ_of.c: New file.
5177         * lib/unictype/categ_or.c: New file.
5178         * lib/unictype/categ_test.c: New file.
5179         * lib/unictype/combining.c: New file.
5180         * lib/unictype/ctype_alnum.c: New file.
5181         * lib/unictype/ctype_alpha.c: New file.
5182         * lib/unictype/ctype_blank.c: New file.
5183         * lib/unictype/ctype_cntrl.c: New file.
5184         * lib/unictype/ctype_digit.c: New file.
5185         * lib/unictype/ctype_graph.c: New file.
5186         * lib/unictype/ctype_lower.c: New file.
5187         * lib/unictype/ctype_print.c: New file.
5188         * lib/unictype/ctype_punct.c: New file.
5189         * lib/unictype/ctype_space.c: New file.
5190         * lib/unictype/ctype_upper.c: New file.
5191         * lib/unictype/ctype_xdigit.c: New file.
5192         * lib/unictype/decdigit.c: New file.
5193         * lib/unictype/digit.c: New file.
5194         * lib/unictype/identsyntaxmap.h: New file.
5195         * lib/unictype/mirror.c: New file.
5196         * lib/unictype/numeric.c: New file.
5197         * lib/unictype/pr_alphabetic.c: New file.
5198         * lib/unictype/pr_ascii_hex_digit.c: New file.
5199         * lib/unictype/pr_bidi_arabic_digit.c: New file.
5200         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
5201         * lib/unictype/pr_bidi_block_separator.c: New file.
5202         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
5203         * lib/unictype/pr_bidi_common_separator.c: New file.
5204         * lib/unictype/pr_bidi_control.c: New file.
5205         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
5206         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
5207         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
5208         * lib/unictype/pr_bidi_european_digit.c: New file.
5209         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
5210         * lib/unictype/pr_bidi_left_to_right.c: New file.
5211         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
5212         * lib/unictype/pr_bidi_other_neutral.c: New file.
5213         * lib/unictype/pr_bidi_pdf.c: New file.
5214         * lib/unictype/pr_bidi_segment_separator.c: New file.
5215         * lib/unictype/pr_bidi_whitespace.c: New file.
5216         * lib/unictype/pr_byname.c: New file.
5217         * lib/unictype/pr_byname.gperf: New file.
5218         * lib/unictype/pr_combining.c: New file.
5219         * lib/unictype/pr_composite.c: New file.
5220         * lib/unictype/pr_currency_symbol.c: New file.
5221         * lib/unictype/pr_dash.c: New file.
5222         * lib/unictype/pr_decimal_digit.c: New file.
5223         * lib/unictype/pr_default_ignorable_code_point.c: New file.
5224         * lib/unictype/pr_deprecated.c: New file.
5225         * lib/unictype/pr_diacritic.c: New file.
5226         * lib/unictype/pr_extender.c: New file.
5227         * lib/unictype/pr_format_control.c: New file.
5228         * lib/unictype/pr_grapheme_base.c: New file.
5229         * lib/unictype/pr_grapheme_extend.c: New file.
5230         * lib/unictype/pr_grapheme_link.c: New file.
5231         * lib/unictype/pr_hex_digit.c: New file.
5232         * lib/unictype/pr_hyphen.c: New file.
5233         * lib/unictype/pr_id_continue.c: New file.
5234         * lib/unictype/pr_id_start.c: New file.
5235         * lib/unictype/pr_ideographic.c: New file.
5236         * lib/unictype/pr_ids_binary_operator.c: New file.
5237         * lib/unictype/pr_ids_trinary_operator.c: New file.
5238         * lib/unictype/pr_ignorable_control.c: New file.
5239         * lib/unictype/pr_iso_control.c: New file.
5240         * lib/unictype/pr_join_control.c: New file.
5241         * lib/unictype/pr_left_of_pair.c: New file.
5242         * lib/unictype/pr_line_separator.c: New file.
5243         * lib/unictype/pr_logical_order_exception.c: New file.
5244         * lib/unictype/pr_lowercase.c: New file.
5245         * lib/unictype/pr_math.c: New file.
5246         * lib/unictype/pr_non_break.c: New file.
5247         * lib/unictype/pr_not_a_character.c: New file.
5248         * lib/unictype/pr_numeric.c: New file.
5249         * lib/unictype/pr_other_alphabetic.c: New file.
5250         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
5251         * lib/unictype/pr_other_grapheme_extend.c: New file.
5252         * lib/unictype/pr_other_id_continue.c: New file.
5253         * lib/unictype/pr_other_id_start.c: New file.
5254         * lib/unictype/pr_other_lowercase.c: New file.
5255         * lib/unictype/pr_other_math.c: New file.
5256         * lib/unictype/pr_other_uppercase.c: New file.
5257         * lib/unictype/pr_paired_punctuation.c: New file.
5258         * lib/unictype/pr_paragraph_separator.c: New file.
5259         * lib/unictype/pr_pattern_syntax.c: New file.
5260         * lib/unictype/pr_pattern_white_space.c: New file.
5261         * lib/unictype/pr_private_use.c: New file.
5262         * lib/unictype/pr_punctuation.c: New file.
5263         * lib/unictype/pr_quotation_mark.c: New file.
5264         * lib/unictype/pr_radical.c: New file.
5265         * lib/unictype/pr_sentence_terminal.c: New file.
5266         * lib/unictype/pr_soft_dotted.c: New file.
5267         * lib/unictype/pr_space.c: New file.
5268         * lib/unictype/pr_terminal_punctuation.c: New file.
5269         * lib/unictype/pr_test.c: New file.
5270         * lib/unictype/pr_titlecase.c: New file.
5271         * lib/unictype/pr_unassigned_code_value.c: New file.
5272         * lib/unictype/pr_unified_ideograph.c: New file.
5273         * lib/unictype/pr_uppercase.c: New file.
5274         * lib/unictype/pr_variation_selector.c: New file.
5275         * lib/unictype/pr_white_space.c: New file.
5276         * lib/unictype/pr_xid_continue.c: New file.
5277         * lib/unictype/pr_xid_start.c: New file.
5278         * lib/unictype/pr_zero_width.c: New file.
5279         * lib/unictype/scripts.c: New file.
5280         * lib/unictype/sy_c_ident.c: New file.
5281         * lib/unictype/sy_c_whitespace.c: New file.
5282         * lib/unictype/sy_java_ident.c: New file.
5283         * lib/unictype/sy_java_whitespace.c: New file.
5284
5285         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
5286         Unicode 5.0.0.
5287         * lib/unictype/blocks.h: Likewise.
5288         * lib/unictype/categ_C.h: Likewise.
5289         * lib/unictype/categ_Cc.h: Likewise.
5290         * lib/unictype/categ_Cf.h: Likewise.
5291         * lib/unictype/categ_Cn.h: Likewise.
5292         * lib/unictype/categ_Co.h: Likewise.
5293         * lib/unictype/categ_Cs.h: Likewise.
5294         * lib/unictype/categ_L.h: Likewise.
5295         * lib/unictype/categ_Ll.h: Likewise.
5296         * lib/unictype/categ_Lm.h: Likewise.
5297         * lib/unictype/categ_Lo.h: Likewise.
5298         * lib/unictype/categ_Lt.h: Likewise.
5299         * lib/unictype/categ_Lu.h: Likewise.
5300         * lib/unictype/categ_M.h: Likewise.
5301         * lib/unictype/categ_Mc.h: Likewise.
5302         * lib/unictype/categ_Me.h: Likewise.
5303         * lib/unictype/categ_Mn.h: Likewise.
5304         * lib/unictype/categ_N.h: Likewise.
5305         * lib/unictype/categ_Nd.h: Likewise.
5306         * lib/unictype/categ_Nl.h: Likewise.
5307         * lib/unictype/categ_No.h: Likewise.
5308         * lib/unictype/categ_P.h: Likewise.
5309         * lib/unictype/categ_Pc.h: Likewise.
5310         * lib/unictype/categ_Pd.h: Likewise.
5311         * lib/unictype/categ_Pe.h: Likewise.
5312         * lib/unictype/categ_Pf.h: Likewise.
5313         * lib/unictype/categ_Pi.h: Likewise.
5314         * lib/unictype/categ_Po.h: Likewise.
5315         * lib/unictype/categ_Ps.h: Likewise.
5316         * lib/unictype/categ_S.h: Likewise.
5317         * lib/unictype/categ_Sc.h: Likewise.
5318         * lib/unictype/categ_Sk.h: Likewise.
5319         * lib/unictype/categ_Sm.h: Likewise.
5320         * lib/unictype/categ_So.h: Likewise.
5321         * lib/unictype/categ_Z.h: Likewise.
5322         * lib/unictype/categ_Zl.h: Likewise.
5323         * lib/unictype/categ_Zp.h: Likewise.
5324         * lib/unictype/categ_Zs.h: Likewise.
5325         * lib/unictype/categ_of.h: Likewise.
5326         * lib/unictype/combining.h: Likewise.
5327         * lib/unictype/ctype_alnum.h: Likewise.
5328         * lib/unictype/ctype_alpha.h: Likewise.
5329         * lib/unictype/ctype_blank.h: Likewise.
5330         * lib/unictype/ctype_cntrl.h: Likewise.
5331         * lib/unictype/ctype_digit.h: Likewise.
5332         * lib/unictype/ctype_graph.h: Likewise.
5333         * lib/unictype/ctype_lower.h: Likewise.
5334         * lib/unictype/ctype_print.h: Likewise.
5335         * lib/unictype/ctype_punct.h: Likewise.
5336         * lib/unictype/ctype_space.h: Likewise.
5337         * lib/unictype/ctype_upper.h: Likewise.
5338         * lib/unictype/ctype_xdigit.h: Likewise.
5339         * lib/unictype/decdigit.h: Likewise.
5340         * lib/unictype/digit.h: Likewise.
5341         * lib/unictype/mirror.h: Likewise.
5342         * lib/unictype/numeric.h: Likewise.
5343         * lib/unictype/pr_alphabetic.h: Likewise.
5344         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
5345         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
5346         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
5347         * lib/unictype/pr_bidi_block_separator.h: Likewise.
5348         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
5349         * lib/unictype/pr_bidi_common_separator.h: Likewise.
5350         * lib/unictype/pr_bidi_control.h: Likewise.
5351         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
5352         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
5353         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
5354         * lib/unictype/pr_bidi_european_digit.h: Likewise.
5355         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
5356         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
5357         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
5358         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
5359         * lib/unictype/pr_bidi_pdf.h: Likewise.
5360         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
5361         * lib/unictype/pr_bidi_whitespace.h: Likewise.
5362         * lib/unictype/pr_combining.h: Likewise.
5363         * lib/unictype/pr_composite.h: Likewise.
5364         * lib/unictype/pr_currency_symbol.h: Likewise.
5365         * lib/unictype/pr_dash.h: Likewise.
5366         * lib/unictype/pr_decimal_digit.h: Likewise.
5367         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
5368         * lib/unictype/pr_deprecated.h: Likewise.
5369         * lib/unictype/pr_diacritic.h: Likewise.
5370         * lib/unictype/pr_extender.h: Likewise.
5371         * lib/unictype/pr_format_control.h: Likewise.
5372         * lib/unictype/pr_grapheme_base.h: Likewise.
5373         * lib/unictype/pr_grapheme_extend.h: Likewise.
5374         * lib/unictype/pr_grapheme_link.h: Likewise.
5375         * lib/unictype/pr_hex_digit.h: Likewise.
5376         * lib/unictype/pr_hyphen.h: Likewise.
5377         * lib/unictype/pr_id_continue.h: Likewise.
5378         * lib/unictype/pr_id_start.h: Likewise.
5379         * lib/unictype/pr_ideographic.h: Likewise.
5380         * lib/unictype/pr_ids_binary_operator.h: Likewise.
5381         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
5382         * lib/unictype/pr_ignorable_control.h: Likewise.
5383         * lib/unictype/pr_iso_control.h: Likewise.
5384         * lib/unictype/pr_join_control.h: Likewise.
5385         * lib/unictype/pr_left_of_pair.h: Likewise.
5386         * lib/unictype/pr_line_separator.h: Likewise.
5387         * lib/unictype/pr_logical_order_exception.h: Likewise.
5388         * lib/unictype/pr_lowercase.h: Likewise.
5389         * lib/unictype/pr_math.h: Likewise.
5390         * lib/unictype/pr_non_break.h: Likewise.
5391         * lib/unictype/pr_not_a_character.h: Likewise.
5392         * lib/unictype/pr_numeric.h: Likewise.
5393         * lib/unictype/pr_other_alphabetic.h: Likewise.
5394         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
5395         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
5396         * lib/unictype/pr_other_id_continue.h: Likewise.
5397         * lib/unictype/pr_other_id_start.h: Likewise.
5398         * lib/unictype/pr_other_lowercase.h: Likewise.
5399         * lib/unictype/pr_other_math.h: Likewise.
5400         * lib/unictype/pr_other_uppercase.h: Likewise.
5401         * lib/unictype/pr_paired_punctuation.h: Likewise.
5402         * lib/unictype/pr_paragraph_separator.h: Likewise.
5403         * lib/unictype/pr_pattern_syntax.h: Likewise.
5404         * lib/unictype/pr_pattern_white_space.h: Likewise.
5405         * lib/unictype/pr_private_use.h: Likewise.
5406         * lib/unictype/pr_punctuation.h: Likewise.
5407         * lib/unictype/pr_quotation_mark.h: Likewise.
5408         * lib/unictype/pr_radical.h: Likewise.
5409         * lib/unictype/pr_sentence_terminal.h: Likewise.
5410         * lib/unictype/pr_soft_dotted.h: Likewise.
5411         * lib/unictype/pr_space.h: Likewise.
5412         * lib/unictype/pr_terminal_punctuation.h: Likewise.
5413         * lib/unictype/pr_titlecase.h: Likewise.
5414         * lib/unictype/pr_unassigned_code_value.h: Likewise.
5415         * lib/unictype/pr_unified_ideograph.h: Likewise.
5416         * lib/unictype/pr_uppercase.h: Likewise.
5417         * lib/unictype/pr_variation_selector.h: Likewise.
5418         * lib/unictype/pr_white_space.h: Likewise.
5419         * lib/unictype/pr_xid_continue.h: Likewise.
5420         * lib/unictype/pr_xid_start.h: Likewise.
5421         * lib/unictype/pr_zero_width.h: Likewise.
5422         * lib/unictype/scripts.h: Likewise.
5423         * lib/unictype/scripts_byname.gperf: Likewise.
5424         * lib/unictype/sy_c_ident.h: Likewise.
5425         * lib/unictype/sy_c_whitespace.h: Likewise.
5426         * lib/unictype/sy_java_ident.h: Likewise.
5427         * lib/unictype/sy_java_whitespace.h: Likewise.
5428
5429         * lib/unictype/Makefile: New file.
5430         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
5431         glibc.
5432         * lib/unictype/3level.h: New file, copied from glibc.
5433         * lib/unictype/3levelbit.h: New file.
5434
5435 2007-11-11  Bruno Haible  <bruno@clisp.org>
5436
5437         * modules/gperf: New file.
5438         * modules/iconv_open (Depends-on): Add it.
5439         (Makefile.am): Remove the GPERF definition.
5440
5441 2007-11-11  Bruno Haible  <bruno@clisp.org>
5442
5443         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
5444         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
5445
5446 2007-11-11  Bruno Haible  <bruno@clisp.org>
5447
5448         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
5449         (usage): Remove function.
5450
5451 2007-11-11  Bruno Haible  <bruno@clisp.org>
5452
5453         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
5454         gl_FUNC_CEILF_LIBS.
5455         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
5456         gl_FUNC_CEIL_LIBS.
5457         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
5458         gl_FUNC_CEILL_LIBS.
5459         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
5460         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
5461         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
5462
5463 2007-11-11  Bruno Haible  <bruno@clisp.org>
5464
5465         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
5466         roundf were declared but do not exist on functions.
5467         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
5468         roundl were declared but do not exist on functions.
5469         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
5470         HAVE_FLOORL_AND_CEILL, respectively.
5471         Needed for Sun C on Solaris 10.
5472
5473 2007-11-11  Bruno Haible  <bruno@clisp.org>
5474
5475         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
5476         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
5477         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
5478         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
5479         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
5480         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
5481         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
5482         HAVE_DECL_ROUNDF.
5483         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
5484         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
5485         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
5486         of HAVE_DECL_ROUND*.
5487         * modules/math (Makefile.am): Update.
5488
5489 2007-11-10  Bruno Haible  <bruno@clisp.org>
5490
5491         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
5492         ptrdiff_t as m4/intl.m4.
5493
5494 2007-11-10  Jim Meyering  <meyering@redhat.com>
5495
5496         Avoid link failure for the argmatch test.
5497         * tests/test-argmatch.c (usage): Define function to avoid a link
5498         failure: argmatch_die requires a usage function.
5499
5500 2007-11-09  Bruno Haible  <bruno@clisp.org>
5501
5502         * doc/functions/snprintf.texi: Mention BeOS deficiency.
5503         * doc/functions/vsnprintf.texi: Likewise.
5504         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
5505         with a size argument < 2.
5506
5507 2007-11-09  Bruno Haible  <bruno@clisp.org>
5508
5509         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
5510         buffer. Fixes an inefficiency introduced on 2007-11-03.
5511
5512 2007-11-09  Bruno Haible  <bruno@clisp.org>
5513
5514         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
5515         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
5516
5517 2007-11-08  Jim Meyering  <meyering@redhat.com>
5518
5519         Change cache variable name prefix "jm_" to "gl_" everywhere.
5520         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
5521         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
5522         * m4/uptime.m4: s/gl_/jm_/
5523
5524 2007-11-07  Bruno Haible  <bruno@clisp.org>
5525
5526         Update to GNU gettext 0.17.
5527         * m4/intl.m4: Update to GNU gettext 0.17.
5528         * m4/po.m4: Likewise.
5529         * modules/gettext (Files): Remove m4/ulonglong.m4.
5530         (configure.ac): Require gettext infrastructure from version 0.17.
5531
5532 2007-11-06  Bruno Haible  <bruno@clisp.org>
5533
5534         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
5535         symbolic values are not defined in a public header.
5536         * lib/freadable.c (freadable) [QNX]: Likewise.
5537         * lib/freadahead.c (freadahead) [QNX]: Likewise.
5538         * lib/freading.c (freading) [QNX]: Likewise.
5539         * lib/fseterr.c (fseterr) [QNX]: Likewise.
5540         * lib/fwritable.c (fwritable) [QNX]: Likewise.
5541         * lib/fwriting.c (fwriting) [QNX]: Likewise.
5542         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
5543         Reported by Alain Magloire.
5544
5545         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
5546
5547 2007-11-05  Bruno Haible  <bruno@clisp.org>
5548
5549         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
5550         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
5551         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
5552         Reported by Eric Blake.
5553
5554 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5555             Bruno Haible  <bruno@clisp.org>
5556
5557         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
5558         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
5559         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
5560         (malloc): Undefine also before including <stdlib.h>.
5561         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
5562         Needed on OSF/1 4.0.
5563
5564 2007-11-05  Jim Meyering  <meyering@redhat.com>
5565
5566         git-version-gen: sync from coreutils.
5567         * build-aux/git-version-gen: Add comments.
5568         Change the first '-' to '.' in the snapshot version string,
5569         e.g., 6.9-377-08144 -> 6.9.377-08144
5570         Remove first parameter.
5571         Don't declare a version "-dirty" merely because a time
5572         stamp has changed.
5573
5574 2007-11-04  Bruno Haible  <bruno@clisp.org>
5575
5576         * lib/lock.h: Protect all macro definitions containing an 'if'
5577         statement through a "do { ... } while (0)".
5578         * lib/tls.h: Likewise.
5579
5580 2007-11-04  Bruno Haible  <bruno@clisp.org>
5581
5582         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
5583
5584 2007-11-04  Bruno Haible  <bruno@clisp.org>
5585
5586         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
5587         * modules/fprintf-posix (Depends-on): Add nocrash.
5588         * modules/snprintf-posix (Depends-on): Likewise.
5589         * modules/sprintf-posix (Depends-on): Likewise.
5590         * modules/vasnprintf-posix (Depends-on): Likewise.
5591         * modules/vasprintf-posix (Depends-on): Likewise.
5592         * modules/vfprintf-posix (Depends-on): Likewise.
5593         * modules/vsnprintf-posix (Depends-on): Likewise.
5594         * modules/vsprintf-posix (Depends-on): Likewise.
5595         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5596         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5597         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5598         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5599         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5600         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5601         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5602
5603 2007-11-04  Bruno Haible  <bruno@clisp.org>
5604
5605         * modules/nocrash: New file.
5606         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
5607         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
5608
5609 2007-11-04  Bruno Haible  <bruno@clisp.org>
5610
5611         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
5612         precision handling.
5613         * tests/test-vasprintf-posix.c (test_function): Likewise.
5614         * tests/test-snprintf-posix.h (test_function): Likewise.
5615         * tests/test-sprintf-posix.h (test_function): Likewise.
5616
5617         Fix *printf behaviour for large precisions on mingw and BeOS.
5618         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
5619         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
5620         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
5621         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5622         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5623         gl_PRINTF_PRECISION and test its result. Invoke
5624         gl_PREREQ_VASNPRINTF_PRECISION.
5625         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5626         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5627         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5628         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5629         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5630         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5631         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5632         * doc/functions/fprintf.texi: Update.
5633         * doc/functions/printf.texi: Update.
5634         * doc/functions/snprintf.texi: Update.
5635         * doc/functions/sprintf.texi: Update.
5636         * doc/functions/vfprintf.texi: Update.
5637         * doc/functions/vprintf.texi: Update.
5638         * doc/functions/vsnprintf.texi: Update.
5639         * doc/functions/vsprintf.texi: Update.
5640
5641 2007-11-04  Bruno Haible  <bruno@clisp.org>
5642
5643         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
5644
5645 2007-11-04  Bruno Haible  <bruno@clisp.org>
5646
5647         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
5648         Reported by Sylvain Beucler <beuc@gnu.org>.
5649
5650 2007-11-03  Bruno Haible  <bruno@clisp.org>
5651
5652         * tests/test-fprintf-posix2.sh: New file.
5653         * tests/test-fprintf-posix2.c: New file.
5654         * modules/fprintf-posix-tests (Files): Add them.
5655         (TESTS): Add test-fprintf-posix2.sh.
5656         (configure.ac): Check for getrlimit and setrlimit.
5657         (check_PROGRAMS): Add test-fprintf-posix2.
5658
5659         * tests/test-printf-posix2.sh: New file.
5660         * tests/test-printf-posix2.c: New file.
5661         * modules/printf-posix-tests (Files): Add them.
5662         (TESTS): Add test-printf-posix2.sh.
5663         (configure.ac): Check for getrlimit and setrlimit.
5664         (check_PROGRAMS): Add test-printf-posix2.
5665
5666         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
5667         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
5668         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
5669         (decode_double): New function, copied from decode_long_double.
5670         (scale10_round_decimal_decoded): New function, extracted from
5671         scale10_round_decimal_long_double.
5672         (scale10_round_decimal_long_double): Use it.
5673         (scale10_round_decimal_double): New function.
5674         (floorlog10): New function.
5675         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
5676         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
5677         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
5678         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5679         gl_PRINTF_ENOMEM and test its result. Invoke
5680         gl_PREREQ_VASNPRINTF_ENOMEM.
5681         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5682         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5683         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5684         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5685         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5686         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5687         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5688         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
5689         * modules/snprintf-posix (Depends-on): Likewise.
5690         * modules/sprintf-posix (Depends-on): Likewise.
5691         * modules/vasnprintf-posix (Depends-on): Likewise.
5692         * modules/vasprintf-posix (Depends-on): Likewise.
5693         * modules/vfprintf-posix (Depends-on): Likewise.
5694         * modules/vsnprintf-posix (Depends-on): Likewise.
5695         * modules/vsprintf-posix (Depends-on): Likewise.
5696         * doc/functions/fprintf.texi: Update.
5697         * doc/functions/printf.texi: Update.
5698         * doc/functions/snprintf.texi: Update.
5699         * doc/functions/sprintf.texi: Update.
5700         * doc/functions/vfprintf.texi: Update.
5701         * doc/functions/vprintf.texi: Update.
5702         * doc/functions/vsnprintf.texi: Update.
5703         * doc/functions/vsprintf.texi: Update.
5704
5705 2007-11-03  Bruno Haible  <bruno@clisp.org>
5706
5707         * modules/frexp-nolibm-tests: New file.
5708
5709         * modules/frexp-nolibm: New file.
5710         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
5711
5712 2007-11-03  Bruno Haible  <bruno@clisp.org>
5713
5714         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
5715         value is C99 compliant.
5716         Needed for OSF/1 5.1.
5717
5718 2007-11-03  Bruno Haible  <bruno@clisp.org>
5719
5720         Fix out-of-memory handling of vasnprintf.
5721         * lib/printf-parse.c: Include <errno.h>.
5722         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
5723         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
5724         is already set.
5725
5726 2007-11-02  Eric Blake  <ebb9@byu.net>
5727
5728         Fix tests on cygwin.
5729         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
5730
5731 2007-11-01  Bruno Haible  <bruno@clisp.org>
5732
5733         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
5734         warning.
5735         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
5736         needed for POSIX compatibility.
5737
5738 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
5739
5740         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
5741         for compatibility with GNU.
5742
5743 2007-11-01  Bruno Haible  <bruno@clisp.org>
5744
5745         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
5746         (putenv): Renamed from rpl_putenv. Change argument type from
5747         'const char *' to 'char *'.
5748         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
5749         of defining putenv in config.h, just set REPLACE_PUTENV.
5750         * modules/putenv (Depends-on): Add stdlib.
5751         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
5752         (Include): Use <stdlib.h>.
5753         * lib/stdlib.in.h (putenv): New declaration.
5754         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
5755         REPLACE_PUTENV.
5756         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
5757         REPLACE_PUTENV.
5758         Needed for MacOS X 10.5.0.
5759         Reported by Peter O'Gorman <peter@pogma.com>.
5760
5761 2007-11-01  Jim Meyering  <meyering@redhat.com>
5762
5763         Treat an empty date string exactly like "0".
5764         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
5765         if the remaining date string (to be parsed) is empty, use "0".
5766         Reported by Mischa Molhoek and discussed in this thread:
5767         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
5768
5769 2007-10-31  Bruno Haible  <bruno@clisp.org>
5770
5771         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
5772         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
5773         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
5774         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
5775         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
5776         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
5777
5778 2007-10-31  Bruno Haible  <bruno@clisp.org>
5779
5780         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
5781         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
5782         (AC_TYPE_LONG_LONG_INT): Use it.
5783         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
5784         it as well.
5785         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
5786         to m4/longlong.m4.
5787         * modules/stdint (Files): Remove m4/ulonglong.m4.
5788         * modules/strtoull (Files): Use m4/longlong.m4 instead of
5789         m4/ulonglong.m4.
5790         * modules/strtoumax (Files): Likewise.
5791
5792 2007-10-30  Bruno Haible  <bruno@clisp.org>
5793
5794         * modules/xvasprintf-posix: New file.
5795         Suggested by Eric Blake.
5796
5797 2007-10-30  Bruno Haible  <bruno@clisp.org>
5798
5799         * modules/xprintf-posix-tests: New file.
5800         * tests/test-xprintf-posix.sh: New file.
5801         * tests/test-xprintf-posix.c: New file.
5802         * tests/test-xfprintf-posix.c: New file.
5803
5804         * modules/xprintf-posix: New file.
5805
5806 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5807
5808         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
5809         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
5810         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
5811
5812 2007-10-29  Bruno Haible  <bruno@clisp.org>
5813
5814         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
5815         contain the special marker '_cv_'.
5816         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
5817         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
5818         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
5819         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
5820         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
5821         Reported by Ralf Wildenhues.
5822
5823 2007-10-29  Bruno Haible  <bruno@clisp.org>
5824
5825         * gnulib-tool (func_import): When --lgpl is not specified, set
5826         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
5827         GPLv3.
5828         Reported by Simon Josefsson.
5829
5830 2007-10-28  Bruno Haible  <bruno@clisp.org>
5831
5832         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
5833         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
5834         HAVE_DECL_ISFINITE.
5835         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
5836         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
5837         HAVE_DECL_ISFINITE.
5838
5839 2007-10-28  Bruno Haible  <bruno@clisp.org>
5840
5841         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
5842         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
5843
5844 2007-10-28  Bruno Haible  <bruno@clisp.org>
5845
5846         Fix link errors with Sun C 5.0 on Solaris 10.
5847         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
5848         function is declared but not present in the compiler's libm.
5849         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
5850         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
5851         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
5852         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
5853         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
5854         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
5855         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
5856         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
5857         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
5858         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
5859         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
5860         HAVE_DECL_FLOORL.
5861
5862 2007-10-28  Bruno Haible  <bruno@clisp.org>
5863
5864         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
5865         gl_FUNC_FLOORL. Cache the result.
5866         (gl_FUNC_FLOORL): Use it.
5867         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
5868         gl_FUNC_CEILL. Cache the result.
5869         (gl_FUNC_CEILL): Use it.
5870
5871         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
5872         gl_FUNC_FLOOR. Cache the result.
5873         (gl_FUNC_FLOOR): Use it.
5874         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
5875         gl_FUNC_CEIL. Cache the result.
5876         (gl_FUNC_CEIL): Use it.
5877
5878         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
5879         gl_FUNC_FLOORF. Cache the result.
5880         (gl_FUNC_FLOORF): Use it.
5881         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
5882         gl_FUNC_CEILF. Cache the result.
5883         (gl_FUNC_CEILF): Use it.
5884
5885 2007-10-28  Bruno Haible  <bruno@clisp.org>
5886
5887         * gnulib-tool: Allow specifying the LGPL version number through
5888         --lgpl=2 or --lgpl=3.
5889         (func_usage): Document --lgpl with argument.
5890         Handle --lgpl=... arguments.
5891         (func_import): Recognize also gl_LGPL calls with an argument. When
5892         --lgpl=2 is used and the module's license is just LGPL, report an
5893         error. Set sed_transform_lib_file according to the lgpl variable. In
5894         the generated files, use --lgpl or gl_LGPL invocations with argument,
5895         if necessary.
5896         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
5897         an LGPv2+ license.
5898         * doc/gnulib-tool.texi (Modified imports): Update explanation of
5899         gl_LGPL macro.
5900
5901 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5902             Bruno Haible  <bruno@clisp.org>
5903
5904         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
5905         (u16_uctomb_aux): Likewise.
5906         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
5907         !HAVE_INLINE.
5908         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
5909
5910 2007-10-28  Bruno Haible  <bruno@clisp.org>
5911
5912         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
5913         Invoke AM_GETTEXT_OPTION if it exists.
5914         * modules/vasprintf: Likewise.
5915         * modules/verror: Likewise.
5916         * modules/xprintf: Likewise.
5917         * modules/xvasprintf: Likewise.
5918
5919 2007-10-27  Ben Pfaff  <blp@gnu.org>
5920
5921         * lib/math.in.h: Define isfinite macro and prototypes for
5922         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
5923         implementations.
5924         * m4/math_h.m4: New substitutions for isfinite module.
5925         * lib/isfinite.c: New file.
5926         * m4/isfinite.m4: New file.
5927         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
5928         * modules/isfinite: New file.
5929         * modules/isfinite-tests: New file.
5930         * tests/tests-isfinite.c: New file.
5931         * doc/functions/isfinite.texi: Mention isfinite module.
5932         * MODULES.html.sh: Mention new module.
5933
5934 2007-10-27  Ben Pfaff  <blp@gnu.org>
5935
5936         Ralf Wildenhues reported that Tru64 4.0D declares the round
5937         functions but does not have definitions.
5938         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
5939         cannot be found in any library, set the output variable to
5940         "missing" instead of "".
5941         * m4/round.m4: Also use our substitute if we cannot find round in
5942         any library, even if it is declared.
5943         * m4/roundf.m4: Likewise for roundf.
5944         * m4/roundl.m4: Likewise for roundl.
5945         * lib/math.in.h: Undefine roundf, round, roundl before defining
5946         their replacements, to allow for hypothetical systems where these
5947         may be defined as macros but not available in libraries.
5948
5949 2007-10-27  Bruno Haible  <bruno@clisp.org>
5950
5951         * doc/gnulib.texi: Invoke @firstparagraphindent.
5952         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
5953         changes in gnulib.
5954         (Source changes): New section.
5955
5956 2007-10-26  Bruno Haible  <bruno@clisp.org>
5957
5958         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
5959         borrowed from autoconf.
5960
5961 2007-10-26  Bruno Haible  <bruno@clisp.org>
5962
5963         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
5964         strerror returned the empty string. Needed on HP-UX 11.00.
5965
5966 2007-10-24  Micah Cowan  <micah@cowan.name>
5967
5968         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
5969         * build-aux/bootstrap: Remove support for now-unnecessary option,
5970         --cvs-user, and envvars CVS_USER, CVS_RSH.
5971
5972 2007-10-24  Jim Meyering  <meyering@redhat.com>
5973
5974         Avoid diagnostics from sha1sum when there is no cached checksum.
5975         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
5976         if the po.s1 file hasn't been created yet.
5977
5978         * build-aux/bootstrap: Sync from coreutils:
5979         2007-10-24  Jim Meyering  <meyering@redhat.com>
5980         Get gnulib from the git repository, not from an obsolete cvs one.
5981         * build-aux/bootstrap: Suggestion from Micah Cowan.
5982         2007-10-04  Jim Meyering  <jim@meyering.net>
5983         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
5984         (update_po_files): Work also when there are no .po files in po/.
5985
5986 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
5987
5988         * README: Append ".git" to git and cg examples.
5989         Problem reported by Benoit Sigoure.
5990
5991 2007-10-23  Micah Cowan  <micah@cowan.name>
5992
5993         * users.txt: Add wget.
5994
5995 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5996
5997         Fix linking of some unistdio tests on FreeBSD.
5998         * modules/unistdio/u16-vsnprintf-tests
5999         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
6000         * modules/unistdio/u16-vsprintf-tests
6001         (test_u16_vsnprintf1_LDADD): Likewise.
6002         * modules/unistdio/u32-vsnprintf-tests
6003         (test_u32_vsnprintf1_LDADD): Likewise.
6004         * modules/unistdio/u32-vsprintf-tests
6005         (test_u32_vsprintf1_LDADD): Likewise.
6006         * modules/unistdio/u8-vsnprintf-tests
6007         (test_u8_vsnprintf1_LDADD): Likewise.
6008         * modules/unistdio/u8-vsprintf-tests
6009         (test_u8_vsprintf1_LDADD): Likewise.
6010         * modules/unistdio/ulc-vsnprintf-tests
6011         (test_ulc_vsnprintf1_LDADD): Likewise.
6012         * modules/unistdio/ulc-vsprintf-tests
6013         (test_ulc_vsprintf1_LDADD): Likewise.
6014
6015         Fix linking of some uniconv tests on FreeBSD.
6016         * modules/uniconv/u16-conv-from-enc-tests
6017         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
6018         * modules/uniconv/u16-conv-to-enc-tests
6019         (test_u16_conv_to_enc_LDADD): Likewise.
6020         * modules/uniconv/u16-strconv-from-enc-tests
6021         (test_u16_strconv_from_enc_LDADD): Likewise.
6022         * modules/uniconv/u16-strconv-to-enc-tests
6023         (test_u16_strconv_to_enc_LDADD): Likewise.
6024         * modules/uniconv/u32-conv-from-enc-tests
6025         (test_u32_conv_from_enc_LDADD): Likewise.
6026         * modules/uniconv/u32-conv-to-enc-tests
6027         (test_u32_conv_to_enc_LDADD): Likewise.
6028         * modules/uniconv/u32-strconv-from-enc-tests
6029         (test_u32_strconv_from_enc_LDADD): Likewise.
6030         * modules/uniconv/u32-strconv-to-enc-tests
6031         (test_u32_strconv_to_enc_LDADD): Likewise.
6032         * modules/uniconv/u8-conv-from-enc-tests
6033         (test_u8_conv_from_enc_LDADD): Likewise.
6034         * modules/uniconv/u8-conv-to-enc-tests
6035         (test_u8_conv_to_enc_LDADD): Likewise.
6036         * modules/uniconv/u8-strconv-from-enc-tests
6037         (test_u8_strconv_from_enc_LDADD): Likewise.
6038         * modules/uniconv/u8-strconv-to-enc-tests
6039         (test_u8_strconv_to_enc_LDADD): Likewise.
6040
6041 2007-10-22  Bruno Haible  <bruno@clisp.org>
6042
6043         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
6044         size.
6045
6046 2007-10-22  Eric Blake  <ebb9@byu.net>
6047
6048         Tweak x*printf documentation.
6049         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
6050         variable name and comments.
6051         Suggested by Bruno Haible.
6052
6053 2007-10-22  Bruno Haible  <bruno@clisp.org>
6054
6055         * lib/acl.c (copy_acl): Fix file name in comment.
6056
6057 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6058
6059         Fix Tru64 problem with stdbool.h.
6060         * lib/stdbool.in.h (false, true):
6061         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
6062         Don't declare as an enum in this situation; it runs afoul of Tru64.
6063         Problem reported by Steven M. Schweda in
6064         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
6065
6066 2007-10-22  Eric Blake  <ebb9@byu.net>
6067
6068         Also wrap vf?printf.
6069         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
6070         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
6071         (xvprintf, xvfprintf): New functions.
6072
6073 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6074
6075         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
6076         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
6077
6078         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
6079         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
6080
6081 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6082
6083         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
6084         by Bruno Haible.
6085
6086 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6087
6088         * lib/getloadavg.c
6089         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
6090         Undef `sys' after including sys/table.h, for Tru64 4.0D.
6091
6092         * tests/test-i-ring.c: Work for C89.
6093
6094 2007-10-22  Bruno Haible  <bruno@clisp.org>
6095
6096         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
6097         -1u, in preprocessor expression, so that we don't test for the bug
6098         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
6099         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
6100
6101 2007-10-22  Eric Blake  <ebb9@byu.net>
6102
6103         * tests/test-yesno.sh: Silence stderr during test.
6104
6105 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6106
6107         * modules/crypto/gc-camellia: New file.
6108
6109         * m4/gc-camellia.m4: New file.
6110
6111         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
6112
6113         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
6114
6115 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6116
6117         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
6118         --help to stdout.  Reported by sms@antinode.org (Steven
6119         M. Schweda).
6120
6121 2007-10-22  Simon Josefsson  <simon@josefsson.org>
6122
6123         * users.txt: Fix link to libksba.
6124
6125 2007-10-21  Ben Pfaff  <blp@gnu.org>
6126
6127         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
6128         round.c roundf implementation that depends on floorf and ceilf to
6129         be tested unconditionally.
6130
6131 2007-10-21  Ben Pfaff  <blp@gnu.org>
6132
6133         * m4/check-libm-func.m4: Removed.
6134         * m4/check-math-lib.m4: New file.
6135         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
6136         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
6137         definition and lack of AC_LIBOBJ([roundf]).
6138         * m4/roundl.m4: Ditto, and similarly for roundl.
6139         * modules/round: Reference new m4 file.
6140         * modules/roundf: Ditto.
6141         * modules/roundl: Ditto.
6142         * tests/test-round2.c (main): Use ROUND instead of round.
6143         Bug report from Bruno Haible.
6144
6145 2007-10-21  Bruno Haible  <bruno@clisp.org>
6146
6147         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
6148         context.
6149
6150 2007-10-21  Bruno Haible  <bruno@clisp.org>
6151
6152         * tests/test-wcwidth.c (main): Allow negative result for some control
6153         characters.
6154
6155         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
6156         Needed on OSF/1 5.1.
6157
6158 2007-10-21  Bruno Haible  <bruno@clisp.org>
6159
6160         * tests/test-floorf1.c: Include isnanf.h.
6161         (main): Use isnanf() instead of isnan().
6162         * tests/test-ceilf1.c: Include isnanf.h.
6163         (main): Use isnanf() instead of isnan().
6164         * tests/test-truncf1.c: Include isnanf.h.
6165         (main): Use isnanf() instead of isnan().
6166         * tests/test-roundf1.c: Include isnanf.h.
6167         (main): Use isnanf() instead of isnan().
6168
6169 2007-10-21  Eric Blake  <ebb9@byu.net>
6170
6171         * users.txt: Update URL for m4.
6172
6173 2007-10-21  Bruno Haible  <bruno@clisp.org>
6174
6175         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
6176
6177 2007-10-21  Bruno Haible  <bruno@clisp.org>
6178
6179         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
6180         Git's management files if the CVS files are not present.
6181
6182 2007-10-20  Bruno Haible  <bruno@clisp.org>
6183
6184         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
6185         gcc-3.4.x.
6186
6187 2007-10-20  Ben Pfaff  <blp@gnu.org>
6188
6189         * lib/math.in.h: Declare round, roundf, roundl if we are providing
6190         implementations.
6191         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
6192         * lib/round.c: New file.
6193         * lib/roundf.c: New file.
6194         * lib/roundl.c: New file.
6195         * m4/round.m4: New file.
6196         * m4/roundf.m4: New file.
6197         * m4/roundl.m4: New file.
6198         * m4/check-libm-func-m4: New file.
6199         * modules/math: Replace round, roundf, roundl related @VARS@ in
6200         math.in.h.
6201         * modules/round: New file.
6202         * modules/round-tests: New file.
6203         * modules/roundf: New file.
6204         * modules/roundf-tests: New file.
6205         * modules/roundl: New file.
6206         * modules/roundl-tests: New file.
6207         * tests/test-round1.c: New file.
6208         * tests/test-round2.c: New file.
6209         * tests/test-roundf1.c: New file.
6210         * tests/test-roundf2.c: New file.
6211         * tests/test-roundl.c: New file.
6212         * doc/functions/round.texi: Mention round module.
6213         * doc/functions/roundf.texi: Mention roundf module.
6214         * doc/functions/roundl.texi: Mention roundl module.
6215         * MODULES.html.sh: Mention new modules.
6216         Thanks to Bruno Haible for suggestions.
6217
6218 2007-10-20  Jim Meyering  <meyering@redhat.com>
6219
6220         * lib/xprintf.c: Include <config.h> unconditionally.
6221
6222         Change xprintf's license to GPL.
6223         * modules/xprintf (License): s/LGPL/GPL/, since this module
6224         depends on modules (exit and exitfail) which are GPL.
6225         Suggestion from Bruno Haible.
6226
6227         xprintf fixes.
6228         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
6229         Use a clearer diagnostic.
6230         Patch from Bruno Haible.
6231
6232 2007-10-20  Bruno Haible  <bruno@clisp.org>
6233
6234         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
6235         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
6236         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6237
6238 2007-10-20  Bruno Haible  <bruno@clisp.org>
6239
6240         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
6241         precision in the comparison result > x - 1 or similar.
6242         * tests/test-ceilf2.c (correct_result_p): Likewise.
6243         * tests/test-truncf2.c (correct_result_p): Likewise.
6244         * tests/test-trunc2.c (correct_result_p): Likewise.
6245         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6246
6247 2007-10-20  Bruno Haible  <bruno@clisp.org>
6248
6249         * modules/ceil: New file.
6250         * m4/ceil.m4: New file.
6251         * doc/functions/ceil.texi: Mention the 'ceil' module.
6252
6253 2007-10-20  Bruno Haible  <bruno@clisp.org>
6254
6255         * modules/floor: New file.
6256         * m4/floor.m4: New file.
6257         * doc/functions/floor.texi: Mention the 'floor' module.
6258
6259 2007-10-20  Bruno Haible  <bruno@clisp.org>
6260
6261         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
6262         of %a.
6263         * modules/floorf-tests (Depends-on): Likewise.
6264         * modules/truncf-tests (Depends-on): Likewise.
6265         * modules/trunc-tests (Depends-on): Likewise.
6266         Reported by Ben Pfaff.
6267
6268 2007-10-19  Jim Meyering  <meyering@redhat.com>
6269
6270         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
6271         Don't bother testing specific errno values.  Just test ferror.
6272
6273         New module: xprintf
6274         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
6275
6276 2007-10-19  Bruno Haible  <bruno@clisp.org>
6277
6278         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
6279         syntax.
6280         * modules/javaexec (Makefile.am): Likewise.
6281         * modules/relocatable-prog (Makefile.am): Likewise.
6282         Suggested by Jim Meyering.
6283
6284 2007-10-18  Bruno Haible  <bruno@clisp.org>
6285
6286         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
6287         Reported by Jim Meyering.
6288
6289 2007-10-18  Eric Blake  <ebb9@byu.net>
6290
6291         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
6292
6293 2007-10-18  Bruno Haible  <bruno@clisp.org>
6294
6295         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
6296         the format string into writable memory. Needed in Fortify conditions.
6297
6298 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
6299             Bruno Haible  <bruno@clisp.org>
6300
6301         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
6302         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
6303         * modules/trim (Depends-on): Add mbchar.
6304         (configure.ac): Add gl_FUNC_MBRTOWC.
6305         (Makefile.am): Augment lib_SOURCES.
6306
6307 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
6308
6309         Modify glob.c to use fstatat and dirfd, to simplify it.
6310         Suggested by Eric Blake.
6311         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
6312         Don't include <stdbool.h>; not used.
6313         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
6314         (link_exists_p): Simplify implementation, since we can now assume
6315         dirfd and fstatat.
6316         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
6317
6318 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6319
6320         * gnulib-tool (func_get_dependencies): Fix sed script to
6321         match only tests.
6322
6323 2007-10-17  Bruno Haible  <bruno@clisp.org>
6324
6325         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
6326         allow locale names without encoding suffix.
6327         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
6328         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
6329
6330 2007-10-16  Bruno Haible  <bruno@clisp.org>
6331
6332         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
6333         * lib/getgroups.c (getgroups): Likewise.
6334         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
6335
6336 2007-10-16  Bruno Haible  <bruno@clisp.org>
6337
6338         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
6339         * modules/malloc-posix (License): Likewise.
6340         * modules/realloc-posix (License): Likewise.
6341         * modules/calloc-posix (License): Likewise.
6342         * modules/intprops (License): Change from GPL to LGPL, with
6343         Paul Eggert's approval.
6344
6345 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
6346
6347         Merge glibc changes into lib/glob.c.
6348
6349         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
6350         2007-10-15 04:59:03 UTC.  Here are the changes:
6351
6352         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
6353
6354         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
6355
6356         * lib/glob.c: Add some branch prediction throughout.
6357
6358         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
6359
6360         [BZ #5103]
6361         * lib/glob.c (glob): Recognize patterns starting \/.
6362
6363         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
6364
6365         [BZ #3996]
6366         * lib/glob.c (attribute_hidden): Define if not defined.
6367         (glob): Unescape dirname, filename or username when needed and not
6368         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
6369         is NULL.  Handle unescaped [ in pattern without closing ].
6370         Don't pass GLOB_CHECK down to recursive glob for directories.
6371         (__glob_pattern_type): New function.
6372         (__glob_pattern_p): Implement using __glob_pattern_type.
6373         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
6374         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
6375         Remove unreachable code.
6376
6377         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
6378
6379         * lib/glob.c (glob_in_dir): Add some comments and asserts to
6380         explain why there are no leaks.
6381
6382         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
6383
6384         [BZ #3253]
6385         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
6386         time, rather allocate increasingly bigger arrays of pointers, if
6387         possible with alloca, if too large with malloc.
6388
6389 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
6390
6391         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
6392         Problem reported by H.Merijn Brand in
6393         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
6394         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
6395         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
6396
6397 2007-10-15  Bruno Haible  <bruno@clisp.org>
6398
6399         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
6400         with explicit rpl_ prefix.
6401         * lib/fopen.c (fopen): Likewise.
6402         * lib/freopen.c (freopen): Likewise.
6403         * lib/iconv.c (iconv): Likewise.
6404         * lib/iconv_close.c (iconv_close): Likewise.
6405
6406 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6407
6408         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
6409
6410 2007-10-15  Bruno Haible  <bruno@clisp.org>
6411
6412         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
6413         <stddef.h> instead of <stdlib.h> since we only need NULL.
6414         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6415
6416 2007-10-15  Bruno Haible  <bruno@clisp.org>
6417
6418         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
6419         Replace paragraph talking about LIBOBJS.
6420         Reported by Colin Watson <cjwatson@debian.org>.
6421
6422 2007-10-15  Bruno Haible  <bruno@clisp.org>
6423
6424         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
6425         <stdlib.h> before using NULL.
6426
6427 2007-10-15  Simon Josefsson  <simon@josefsson.org>
6428
6429         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
6430         Reported by Albert Chin <china@thewrittenword.com>.
6431
6432 2007-10-14  Bruno Haible  <bruno@clisp.org>
6433
6434         * modules/iconv_open-utf-tests: New file.
6435         * tests/test-iconv-utf.c: New file.
6436
6437         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
6438         * modules/iconv_open-utf: New file.
6439         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
6440         (iconv, iconv_close): New declarations.
6441         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
6442         be defined.
6443         (iconv_open): Add special handling of conversion between UTF-8 and
6444         UTF-{16,32}{BE,LE}.
6445         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
6446         * lib/iconv_close.c: New file.
6447         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
6448         gl_FUNC_ICONV_OPEN.
6449         (gl_FUNC_ICONV_OPEN): Use it.
6450         (gl_FUNC_ICONV_OPEN_UTF): New macro.
6451         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
6452         and REPLACE_ICONV_UTF.
6453         * modules/iconv_open (Depends-on): Add c-strcase.
6454         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
6455         ICONV_CONST.
6456         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
6457
6458 2007-10-13  Albert Chin  <china@thewrittenword.com>
6459             Bruno Haible  <bruno@clisp.org>
6460
6461         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
6462         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
6463
6464 2007-10-13  Bruno Haible  <bruno@clisp.org>
6465
6466         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
6467         defined, use the ISO C99 inline semantics.
6468         * lib/argp.h (ARGP_EI): Likewise.
6469
6470 2007-10-13  Bruno Haible  <bruno@clisp.org>
6471
6472         Handle 'inline' change in gcc 4.3.0.
6473         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
6474         argp_fmtstream_write, argp_fmtstream_set_lmargin,
6475         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
6476         argp_fmtstream_point): Disable 'extern' declaration if the function
6477         definition is going to be provided inline.
6478         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
6479         semantics, not the ISO C99 inline semantics.
6480         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
6481         'extern' declaration if the function definition is going to be provided
6482         inline.
6483         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
6484         the GNU C inline semantics, not the ISO C99 inline semantics. With
6485         GCC 4.2, avoid a warning.
6486
6487 2007-10-13  Bruno Haible  <bruno@clisp.org>
6488
6489         * lib/freading.h (freading): Enable the use of __freading for
6490         glibc >= 2.7.
6491         * lib/freading.c (freading): Likewise.
6492
6493 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
6494
6495         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
6496         "warning: C99 inline functions are not supported; using GNU89".
6497
6498 2007-10-12  Bruno Haible  <bruno@clisp.org>
6499
6500         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
6501         of 2.
6502         * tests/test-ceilf2.c: New file.
6503         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
6504
6505         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
6506         * modules/ceilf-tests: Update.
6507
6508 2007-10-12  Bruno Haible  <bruno@clisp.org>
6509
6510         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
6511         of 2.
6512         * tests/test-floorf2.c: New file.
6513         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
6514
6515         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
6516         * modules/floorf-tests: Update.
6517
6518 2007-10-12  Bruno Haible  <bruno@clisp.org>
6519
6520         * tests/test-trunc2.c: New file.
6521         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
6522
6523         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
6524         * modules/trunc-tests: Update.
6525
6526 2007-10-12  Bruno Haible  <bruno@clisp.org>
6527
6528         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
6529         of 2.
6530         * tests/test-truncf2.c: New file.
6531         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
6532
6533         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
6534         * modules/truncf-tests: Update.
6535
6536 2007-10-11  Eric Blake  <ebb9@byu.net>
6537
6538         Don't claim strerror is broken on Interix.
6539         * doc/functions/strerror.texi (strerror): Known broken systems are
6540         now Solaris 8, and not Interix.
6541         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
6542         Interix on cross-compile.
6543         Reported by Martin Koeppe in
6544         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
6545
6546 2007-10-11  Bruno Haible  <bruno@clisp.org>
6547
6548         * modules/i-ring-tests: New file.
6549         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
6550         instead of assert.
6551
6552 2007-10-11  Bruno Haible  <bruno@clisp.org>
6553
6554         * modules/filenamecat-tests: New file.
6555         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
6556         * lib/filenamecat.c: Remove test code.
6557
6558 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
6559
6560         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
6561
6562         * lib/strerror.c: Include <string.h> always, to test interface,
6563         and to remove the need for the dummy.
6564         Include intprops.h to compute width instead of doing it ourselves
6565         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
6566         (strerror): Define it to return NULL if there's no system strerror.
6567         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
6568         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
6569         ancient pre-strerror Unix systems well any more.  Saying "unknown
6570         system error" is enough.
6571         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
6572         simpler strerror.c implementation.
6573         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
6574         Simplify the tests to reflect the simpler strerror implementation.
6575         * modules/strerror (Depends-on): Add intprops.
6576
6577 2007-10-09  Eric Blake  <ebb9@byu.net>
6578
6579         Silence test-fpending.
6580         * modules/fpending-tests (Files): Add wrapper script.
6581         * tests/test-fpending.sh: New file.
6582
6583 2007-10-09  Bruno Haible  <bruno@clisp.org>
6584
6585         * MODULES.html.sh (func_module): Don't create a hyperlink for
6586         function names like 'printf_frexp'.
6587         (Misc): Add crc, memxor.
6588         (Characteristics of floating types): New section.
6589         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
6590         isnanf-nolibm, signbit, trunc, truncf, truncl.
6591         (Enhancements for ISO C 99 functions): New subsection Input/output.
6592         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
6593         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
6594         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
6595         (Compatibility checks for POSIX:2001 functions): Add clock-time.
6596         (Enhancements for POSIX:2001 functions): Add chdir-long.
6597         (File system functions): Add areadlink, chdir-safer, read-file.
6598         Remove cycle-check.
6599         (File system as inode set): New section.
6600         (Date and time): Add gethrxtime.
6601         (Multithreading): Add openmp.
6602         (Internationalization functions): Add localename.
6603         (Unicode string functions): Add unistr/u*-mbsnlen.
6604         (Support for maintaining and releasing projects): Add git-version-gen.
6605         (Lone files): Remove directories.
6606
6607 2007-10-08  Ben Pfaff  <blp@gnu.org>
6608
6609         * lib/xmalloca.h: Fix typo in comment.
6610
6611 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
6612
6613         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
6614         when avoiding problems with integer overflow.  Use a portable test
6615         instead.
6616
6617 2007-10-08  Simon Josefsson  <simon@josefsson.org>
6618
6619         * modules/dummy (License): Change to LGPLv2+.
6620         * modules/float (License): Likewise
6621         * modules/realloc (License): Likewise
6622         * modules/stdlib (License): Likewise
6623
6624 2007-10-07  Bruno Haible  <bruno@clisp.org>
6625
6626         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
6627         * floor.c (TWO_MANT_DIG): Likewise.
6628         * ceil.c (TWO_MANT_DIG): Likewise.
6629         Reported by Ben Pfaff.
6630
6631 2007-10-07  Bruno Haible  <bruno@clisp.org>
6632
6633         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
6634         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
6635         * lib/frexp.c (FUNC): Likewise.
6636         * lib/printf-frexp.h (printf_frexp): Likewise.
6637         * lib/printf-frexpl.h (printf_frexpl): Likewise.
6638         * lib/printf-frexp.c (FUNC): Likewise.
6639         Suggested by Jim Meyering.
6640
6641 2007-10-07  Jim Meyering  <meyering@redhat.com>
6642
6643         Make xnanosleep's integer overflow test more robust.
6644         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
6645         so that gcc-4.3.0 doesn't optimize away this test for overflow.
6646
6647 2007-10-07  Bruno Haible  <bruno@clisp.org>
6648
6649         * NEWS: Mention the license change.
6650
6651         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
6652         abbreviations in the modules files.
6653
6654         Change copyright notice from GPLv2+ to GPLv3+.
6655         * README: Change copyright notice.
6656         * MODULES.html.sh: Likewise.
6657         * build-aux/bootstrap.conf: Likewise.
6658         * build-aux/config.libpath: Likewise.
6659         * build-aux/csharpcomp.sh.in: Likewise.
6660         * build-aux/csharpexec.sh.in: Likewise.
6661         * build-aux/install-reloc: Likewise.
6662         * build-aux/javacomp.sh.in: Likewise.
6663         * build-aux/javaexec.sh.in: Likewise.
6664         * build-aux/ldd.sh.in: Likewise.
6665         * build-aux/reloc-ldflags: Likewise.
6666         * build-aux/relocatable.sh.in: Likewise.
6667         * build-aux/x-to-1.in: Likewise.
6668         * check-module: Likewise.
6669         * config/srclistvars.sh: Likewise.
6670         * gnulib-tool: Likewise.
6671         * lib/acl-internal.h: Likewise.
6672         * lib/acl.c: Likewise.
6673         * lib/acl.h: Likewise.
6674         * lib/acl_entries.c: Likewise.
6675         * lib/areadlink-with-size.c: Likewise.
6676         * lib/areadlink.c: Likewise.
6677         * lib/areadlink.h: Likewise.
6678         * lib/argmatch.c: Likewise.
6679         * lib/argmatch.h: Likewise.
6680         * lib/argp-ba.c: Likewise.
6681         * lib/argp-eexst.c: Likewise.
6682         * lib/argp-fmtstream.c: Likewise.
6683         * lib/argp-fmtstream.h: Likewise.
6684         * lib/argp-fs-xinl.c: Likewise.
6685         * lib/argp-help.c: Likewise.
6686         * lib/argp-namefrob.h: Likewise.
6687         * lib/argp-parse.c: Likewise.
6688         * lib/argp-pin.c: Likewise.
6689         * lib/argp-pv.c: Likewise.
6690         * lib/argp-pvh.c: Likewise.
6691         * lib/argp-xinl.c: Likewise.
6692         * lib/argp.h: Likewise.
6693         * lib/at-func.c: Likewise.
6694         * lib/atanl.c: Likewise.
6695         * lib/backupfile.c: Likewise.
6696         * lib/backupfile.h: Likewise.
6697         * lib/basename.c: Likewise.
6698         * lib/binary-io.h: Likewise.
6699         * lib/byteswap.in.h: Likewise.
6700         * lib/c-stack.c: Likewise.
6701         * lib/c-stack.h: Likewise.
6702         * lib/c-strcasestr.c: Likewise.
6703         * lib/c-strcasestr.h: Likewise.
6704         * lib/c-strstr.c: Likewise.
6705         * lib/c-strstr.h: Likewise.
6706         * lib/c-strtod.c: Likewise.
6707         * lib/calloc.c: Likewise.
6708         * lib/canon-host.c: Likewise.
6709         * lib/canon-host.h: Likewise.
6710         * lib/canonicalize-lgpl.c: Likewise.
6711         * lib/canonicalize.c: Likewise.
6712         * lib/canonicalize.h: Likewise.
6713         * lib/ceil.c: Likewise.
6714         * lib/ceilf.c: Likewise.
6715         * lib/ceill.c: Likewise.
6716         * lib/chdir-long.c: Likewise.
6717         * lib/chdir-long.h: Likewise.
6718         * lib/chdir-safer.c: Likewise.
6719         * lib/chdir-safer.h: Likewise.
6720         * lib/chown.c: Likewise.
6721         * lib/classpath.c: Likewise.
6722         * lib/classpath.h: Likewise.
6723         * lib/clean-temp.c: Likewise.
6724         * lib/clean-temp.h: Likewise.
6725         * lib/cloexec.c: Likewise.
6726         * lib/close-stream.c: Likewise.
6727         * lib/closein.c: Likewise.
6728         * lib/closein.h: Likewise.
6729         * lib/closeout.c: Likewise.
6730         * lib/closeout.h: Likewise.
6731         * lib/concat-filename.c: Likewise.
6732         * lib/copy-file.c: Likewise.
6733         * lib/copy-file.h: Likewise.
6734         * lib/count-one-bits.h: Likewise.
6735         * lib/crc.c: Likewise.
6736         * lib/crc.h: Likewise.
6737         * lib/creat-safer.c: Likewise.
6738         * lib/csharpcomp.c: Likewise.
6739         * lib/csharpcomp.h: Likewise.
6740         * lib/csharpexec.c: Likewise.
6741         * lib/csharpexec.h: Likewise.
6742         * lib/cycle-check.c: Likewise.
6743         * lib/cycle-check.h: Likewise.
6744         * lib/diacrit.c: Likewise.
6745         * lib/diacrit.h: Likewise.
6746         * lib/diffseq.h: Likewise.
6747         * lib/dirchownmod.c: Likewise.
6748         * lib/dirent.in.h: Likewise.
6749         * lib/dirfd.c: Likewise.
6750         * lib/dirfd.h: Likewise.
6751         * lib/dirname.c: Likewise.
6752         * lib/dirname.h: Likewise.
6753         * lib/dummy.c: Likewise.
6754         * lib/dup-safer.c: Likewise.
6755         * lib/dup2.c: Likewise.
6756         * lib/eealloc.h: Likewise.
6757         * lib/error.c: Likewise.
6758         * lib/error.h: Likewise.
6759         * lib/euidaccess.c: Likewise.
6760         * lib/exclude.c: Likewise.
6761         * lib/exclude.h: Likewise.
6762         * lib/execute.c: Likewise.
6763         * lib/execute.h: Likewise.
6764         * lib/exitfail.c: Likewise.
6765         * lib/exitfail.h: Likewise.
6766         * lib/expl.c: Likewise.
6767         * lib/fatal-signal.c: Likewise.
6768         * lib/fatal-signal.h: Likewise.
6769         * lib/fbufmode.c: Likewise.
6770         * lib/fbufmode.h: Likewise.
6771         * lib/fchdir.c: Likewise.
6772         * lib/fchmodat.c: Likewise.
6773         * lib/fchownat.c: Likewise.
6774         * lib/fcntl--.h: Likewise.
6775         * lib/fcntl-safer.h: Likewise.
6776         * lib/fcntl.in.h: Likewise.
6777         * lib/fd-safer.c: Likewise.
6778         * lib/fflush.c: Likewise.
6779         * lib/file-has-acl.c: Likewise.
6780         * lib/file-set.c: Likewise.
6781         * lib/file-type.c: Likewise.
6782         * lib/file-type.h: Likewise.
6783         * lib/fileblocks.c: Likewise.
6784         * lib/filemode.c: Likewise.
6785         * lib/filemode.h: Likewise.
6786         * lib/filename.h: Likewise.
6787         * lib/filenamecat.c: Likewise.
6788         * lib/filenamecat.h: Likewise.
6789         * lib/findprog.c: Likewise.
6790         * lib/findprog.h: Likewise.
6791         * lib/float.in.h: Likewise.
6792         * lib/floor.c: Likewise.
6793         * lib/floorf.c: Likewise.
6794         * lib/floorl.c: Likewise.
6795         * lib/fopen-safer.c: Likewise.
6796         * lib/fopen.c: Likewise.
6797         * lib/fpending.c: Likewise.
6798         * lib/fpending.h: Likewise.
6799         * lib/fprintf.c: Likewise.
6800         * lib/fprintftime.h: Likewise.
6801         * lib/fpucw.h: Likewise.
6802         * lib/fpurge.c: Likewise.
6803         * lib/fpurge.h: Likewise.
6804         * lib/freadable.c: Likewise.
6805         * lib/freadable.h: Likewise.
6806         * lib/freadahead.c: Likewise.
6807         * lib/freadahead.h: Likewise.
6808         * lib/freading.c: Likewise.
6809         * lib/freading.h: Likewise.
6810         * lib/free.c: Likewise.
6811         * lib/freopen.c: Likewise.
6812         * lib/frexp.c: Likewise.
6813         * lib/frexpl.c: Likewise.
6814         * lib/fseek.c: Likewise.
6815         * lib/fseterr.c: Likewise.
6816         * lib/fseterr.h: Likewise.
6817         * lib/fstatat.c: Likewise.
6818         * lib/fstrcmp.c: Likewise.
6819         * lib/fstrcmp.h: Likewise.
6820         * lib/fsusage.c: Likewise.
6821         * lib/fsusage.h: Likewise.
6822         * lib/ftell.c: Likewise.
6823         * lib/ftello.c: Likewise.
6824         * lib/fts-cycle.c: Likewise.
6825         * lib/fts.c: Likewise.
6826         * lib/fts_.h: Likewise.
6827         * lib/full-read.c: Likewise.
6828         * lib/full-read.h: Likewise.
6829         * lib/full-write.c: Likewise.
6830         * lib/full-write.h: Likewise.
6831         * lib/fwritable.c: Likewise.
6832         * lib/fwritable.h: Likewise.
6833         * lib/fwriteerror.c: Likewise.
6834         * lib/fwriteerror.h: Likewise.
6835         * lib/fwriting.c: Likewise.
6836         * lib/fwriting.h: Likewise.
6837         * lib/gcd.c: Likewise.
6838         * lib/gcd.h: Likewise.
6839         * lib/getcwd.c: Likewise.
6840         * lib/getdate.h: Likewise.
6841         * lib/getdate.y: Likewise.
6842         * lib/getdomainname.c: Likewise.
6843         * lib/getdomainname.h: Likewise.
6844         * lib/getgroups.c: Likewise.
6845         * lib/gethostname.c: Likewise.
6846         * lib/gethrxtime.c: Likewise.
6847         * lib/gethrxtime.h: Likewise.
6848         * lib/getloadavg.c: Likewise.
6849         * lib/getndelim2.c: Likewise.
6850         * lib/getndelim2.h: Likewise.
6851         * lib/getnline.c: Likewise.
6852         * lib/getnline.h: Likewise.
6853         * lib/getopt.c: Likewise.
6854         * lib/getopt.in.h: Likewise.
6855         * lib/getopt1.c: Likewise.
6856         * lib/getopt_int.h: Likewise.
6857         * lib/getpagesize.h: Likewise.
6858         * lib/getsubopt.c: Likewise.
6859         * lib/gettime.c: Likewise.
6860         * lib/getugroups.c: Likewise.
6861         * lib/getugroups.h: Likewise.
6862         * lib/getusershell.c: Likewise.
6863         * lib/gl_anyavltree_list1.h: Likewise.
6864         * lib/gl_anyavltree_list2.h: Likewise.
6865         * lib/gl_anyhash_list1.h: Likewise.
6866         * lib/gl_anyhash_list2.h: Likewise.
6867         * lib/gl_anylinked_list1.h: Likewise.
6868         * lib/gl_anylinked_list2.h: Likewise.
6869         * lib/gl_anyrbtree_list1.h: Likewise.
6870         * lib/gl_anyrbtree_list2.h: Likewise.
6871         * lib/gl_anytree_list1.h: Likewise.
6872         * lib/gl_anytree_list2.h: Likewise.
6873         * lib/gl_anytree_oset.h: Likewise.
6874         * lib/gl_anytreehash_list1.h: Likewise.
6875         * lib/gl_anytreehash_list2.h: Likewise.
6876         * lib/gl_array_list.c: Likewise.
6877         * lib/gl_array_list.h: Likewise.
6878         * lib/gl_array_oset.c: Likewise.
6879         * lib/gl_array_oset.h: Likewise.
6880         * lib/gl_avltree_list.c: Likewise.
6881         * lib/gl_avltree_list.h: Likewise.
6882         * lib/gl_avltree_oset.c: Likewise.
6883         * lib/gl_avltree_oset.h: Likewise.
6884         * lib/gl_avltreehash_list.c: Likewise.
6885         * lib/gl_avltreehash_list.h: Likewise.
6886         * lib/gl_carray_list.c: Likewise.
6887         * lib/gl_carray_list.h: Likewise.
6888         * lib/gl_linked_list.c: Likewise.
6889         * lib/gl_linked_list.h: Likewise.
6890         * lib/gl_linkedhash_list.c: Likewise.
6891         * lib/gl_linkedhash_list.h: Likewise.
6892         * lib/gl_list.c: Likewise.
6893         * lib/gl_list.h: Likewise.
6894         * lib/gl_oset.c: Likewise.
6895         * lib/gl_oset.h: Likewise.
6896         * lib/gl_rbtree_list.c: Likewise.
6897         * lib/gl_rbtree_list.h: Likewise.
6898         * lib/gl_rbtree_oset.c: Likewise.
6899         * lib/gl_rbtree_oset.h: Likewise.
6900         * lib/gl_rbtreehash_list.c: Likewise.
6901         * lib/gl_rbtreehash_list.h: Likewise.
6902         * lib/gl_sublist.c: Likewise.
6903         * lib/gl_sublist.h: Likewise.
6904         * lib/group-member.c: Likewise.
6905         * lib/group-member.h: Likewise.
6906         * lib/hard-locale.c: Likewise.
6907         * lib/hard-locale.h: Likewise.
6908         * lib/hash-pjw.c: Likewise.
6909         * lib/hash-pjw.h: Likewise.
6910         * lib/hash-triple.c: Likewise.
6911         * lib/hash.c: Likewise.
6912         * lib/hash.h: Likewise.
6913         * lib/human.c: Likewise.
6914         * lib/human.h: Likewise.
6915         * lib/i-ring.c: Likewise.
6916         * lib/i-ring.h: Likewise.
6917         * lib/idcache.c: Likewise.
6918         * lib/imaxabs.c: Likewise.
6919         * lib/imaxdiv.c: Likewise.
6920         * lib/inet_pton.c: Likewise.
6921         * lib/inet_pton.h: Likewise.
6922         * lib/intprops.h: Likewise.
6923         * lib/inttostr.c: Likewise.
6924         * lib/inttostr.h: Likewise.
6925         * lib/inttypes.in.h: Likewise.
6926         * lib/isapipe.c: Likewise.
6927         * lib/isdir.c: Likewise.
6928         * lib/isnan.c: Likewise.
6929         * lib/isnan.h: Likewise.
6930         * lib/isnanf.c: Likewise.
6931         * lib/isnanf.h: Likewise.
6932         * lib/isnanl-nolibm.h: Likewise.
6933         * lib/isnanl.c: Likewise.
6934         * lib/isnanl.h: Likewise.
6935         * lib/javacomp.c: Likewise.
6936         * lib/javacomp.h: Likewise.
6937         * lib/javaexec.c: Likewise.
6938         * lib/javaexec.h: Likewise.
6939         * lib/javaversion.c: Likewise.
6940         * lib/javaversion.h: Likewise.
6941         * lib/javaversion.java: Likewise.
6942         * lib/lbrkprop.h: Likewise.
6943         * lib/lchmod.h: Likewise.
6944         * lib/lchown.c: Likewise.
6945         * lib/ldexpl.c: Likewise.
6946         * lib/linebreak.c: Likewise.
6947         * lib/linebreak.h: Likewise.
6948         * lib/linebuffer.c: Likewise.
6949         * lib/linebuffer.h: Likewise.
6950         * lib/locale.in.h: Likewise.
6951         * lib/logl.c: Likewise.
6952         * lib/long-options.c: Likewise.
6953         * lib/long-options.h: Likewise.
6954         * lib/lstat.c: Likewise.
6955         * lib/lstat.h: Likewise.
6956         * lib/math.in.h: Likewise.
6957         * lib/mbchar.c: Likewise.
6958         * lib/mbchar.h: Likewise.
6959         * lib/mbfile.h: Likewise.
6960         * lib/mbiter.h: Likewise.
6961         * lib/mbscasecmp.c: Likewise.
6962         * lib/mbscasestr.c: Likewise.
6963         * lib/mbschr.c: Likewise.
6964         * lib/mbscspn.c: Likewise.
6965         * lib/mbslen.c: Likewise.
6966         * lib/mbsncasecmp.c: Likewise.
6967         * lib/mbsnlen.c: Likewise.
6968         * lib/mbspbrk.c: Likewise.
6969         * lib/mbspcasecmp.c: Likewise.
6970         * lib/mbsrchr.c: Likewise.
6971         * lib/mbssep.c: Likewise.
6972         * lib/mbsspn.c: Likewise.
6973         * lib/mbsstr.c: Likewise.
6974         * lib/mbstok_r.c: Likewise.
6975         * lib/mbswidth.c: Likewise.
6976         * lib/mbswidth.h: Likewise.
6977         * lib/mbuiter.h: Likewise.
6978         * lib/memcasecmp.c: Likewise.
6979         * lib/memcasecmp.h: Likewise.
6980         * lib/memchr.c: Likewise.
6981         * lib/memcmp.c: Likewise.
6982         * lib/memcoll.c: Likewise.
6983         * lib/memcoll.h: Likewise.
6984         * lib/memcpy.c: Likewise.
6985         * lib/memrchr.c: Likewise.
6986         * lib/mkancesdirs.c: Likewise.
6987         * lib/mkdir-p.c: Likewise.
6988         * lib/mkdir-p.h: Likewise.
6989         * lib/mkdir.c: Likewise.
6990         * lib/mkdirat.c: Likewise.
6991         * lib/mkdtemp.c: Likewise.
6992         * lib/mkstemp-safer.c: Likewise.
6993         * lib/mkstemp.c: Likewise.
6994         * lib/modechange.c: Likewise.
6995         * lib/modechange.h: Likewise.
6996         * lib/mountlist.c: Likewise.
6997         * lib/mountlist.h: Likewise.
6998         * lib/mpsort.c: Likewise.
6999         * lib/nanosleep.c: Likewise.
7000         * lib/obstack.c: Likewise.
7001         * lib/obstack.h: Likewise.
7002         * lib/open-safer.c: Likewise.
7003         * lib/open.c: Likewise.
7004         * lib/openat-die.c: Likewise.
7005         * lib/openat-priv.h: Likewise.
7006         * lib/openat-proc.c: Likewise.
7007         * lib/openat.c: Likewise.
7008         * lib/openat.h: Likewise.
7009         * lib/pagealign_alloc.c: Likewise.
7010         * lib/pagealign_alloc.h: Likewise.
7011         * lib/physmem.c: Likewise.
7012         * lib/physmem.h: Likewise.
7013         * lib/pipe-safer.c: Likewise.
7014         * lib/pipe.c: Likewise.
7015         * lib/pipe.h: Likewise.
7016         * lib/posixtm.c: Likewise.
7017         * lib/posixtm.h: Likewise.
7018         * lib/posixver.c: Likewise.
7019         * lib/printf-frexp.c: Likewise.
7020         * lib/printf-frexp.h: Likewise.
7021         * lib/printf-frexpl.c: Likewise.
7022         * lib/printf-frexpl.h: Likewise.
7023         * lib/printf.c: Likewise.
7024         * lib/progname.c: Likewise.
7025         * lib/progname.h: Likewise.
7026         * lib/progreloc.c: Likewise.
7027         * lib/putenv.c: Likewise.
7028         * lib/quote.c: Likewise.
7029         * lib/quote.h: Likewise.
7030         * lib/quotearg.c: Likewise.
7031         * lib/quotearg.h: Likewise.
7032         * lib/raise.c: Likewise.
7033         * lib/readline.c: Likewise.
7034         * lib/readline.h: Likewise.
7035         * lib/readlink.c: Likewise.
7036         * lib/readtokens.c: Likewise.
7037         * lib/readtokens.h: Likewise.
7038         * lib/readtokens0.c: Likewise.
7039         * lib/readtokens0.h: Likewise.
7040         * lib/readutmp.c: Likewise.
7041         * lib/readutmp.h: Likewise.
7042         * lib/realloc.c: Likewise.
7043         * lib/relocwrapper.c: Likewise.
7044         * lib/rename-dest-slash.c: Likewise.
7045         * lib/rename.c: Likewise.
7046         * lib/rmdir.c: Likewise.
7047         * lib/rpmatch.c: Likewise.
7048         * lib/safe-read.c: Likewise.
7049         * lib/safe-read.h: Likewise.
7050         * lib/safe-write.c: Likewise.
7051         * lib/safe-write.h: Likewise.
7052         * lib/same-inode.h: Likewise.
7053         * lib/same.c: Likewise.
7054         * lib/same.h: Likewise.
7055         * lib/save-cwd.c: Likewise.
7056         * lib/save-cwd.h: Likewise.
7057         * lib/savedir.c: Likewise.
7058         * lib/savedir.h: Likewise.
7059         * lib/savewd.c: Likewise.
7060         * lib/savewd.h: Likewise.
7061         * lib/search.in.h: Likewise.
7062         * lib/setenv.c: Likewise.
7063         * lib/setenv.h: Likewise.
7064         * lib/settime.c: Likewise.
7065         * lib/sh-quote.c: Likewise.
7066         * lib/sh-quote.h: Likewise.
7067         * lib/sig2str.c: Likewise.
7068         * lib/sig2str.h: Likewise.
7069         * lib/signal.in.h: Likewise.
7070         * lib/signbitd.c: Likewise.
7071         * lib/signbitf.c: Likewise.
7072         * lib/signbitl.c: Likewise.
7073         * lib/sigprocmask.c: Likewise.
7074         * lib/sincosl.c: Likewise.
7075         * lib/sleep.c: Likewise.
7076         * lib/sprintf.c: Likewise.
7077         * lib/sqrtl.c: Likewise.
7078         * lib/stat-time.h: Likewise.
7079         * lib/stdio--.h: Likewise.
7080         * lib/stdio-safer.h: Likewise.
7081         * lib/stdlib--.h: Likewise.
7082         * lib/stdlib-safer.h: Likewise.
7083         * lib/stdlib.in.h: Likewise.
7084         * lib/stpcpy.c: Likewise.
7085         * lib/stpncpy.c: Likewise.
7086         * lib/strchrnul.c: Likewise.
7087         * lib/strcspn.c: Likewise.
7088         * lib/strerror.c: Likewise.
7089         * lib/strftime.c: Likewise.
7090         * lib/strftime.h: Likewise.
7091         * lib/striconveh.c: Likewise.
7092         * lib/striconveh.h: Likewise.
7093         * lib/striconveha.c: Likewise.
7094         * lib/striconveha.h: Likewise.
7095         * lib/stripslash.c: Likewise.
7096         * lib/strnlen1.c: Likewise.
7097         * lib/strnlen1.h: Likewise.
7098         * lib/strtod.c: Likewise.
7099         * lib/strtoimax.c: Likewise.
7100         * lib/strtok_r.c: Likewise.
7101         * lib/strtol.c: Likewise.
7102         * lib/strtoll.c: Likewise.
7103         * lib/strtoul.c: Likewise.
7104         * lib/strtoull.c: Likewise.
7105         * lib/sysexits.in.h: Likewise.
7106         * lib/tempname.c: Likewise.
7107         * lib/tempname.h: Likewise.
7108         * lib/timespec.h: Likewise.
7109         * lib/tls.c: Likewise.
7110         * lib/tls.h: Likewise.
7111         * lib/tmpdir.c: Likewise.
7112         * lib/tmpdir.h: Likewise.
7113         * lib/tmpfile-safer.c: Likewise.
7114         * lib/tmpfile.c: Likewise.
7115         * lib/trigl.c: Likewise.
7116         * lib/trigl.h: Likewise.
7117         * lib/trim.c: Likewise.
7118         * lib/trim.h: Likewise.
7119         * lib/trunc.c: Likewise.
7120         * lib/truncf.c: Likewise.
7121         * lib/truncl.c: Likewise.
7122         * lib/tsearch.c: Likewise.
7123         * lib/unicodeio.c: Likewise.
7124         * lib/unicodeio.h: Likewise.
7125         * lib/unistd--.h: Likewise.
7126         * lib/unistd-safer.h: Likewise.
7127         * lib/unistdio/ulc-fprintf.c: Likewise.
7128         * lib/unistdio/ulc-vfprintf.c: Likewise.
7129         * lib/unlinkdir.c: Likewise.
7130         * lib/unlinkdir.h: Likewise.
7131         * lib/unlocked-io.h: Likewise.
7132         * lib/unsetenv.c: Likewise.
7133         * lib/userspec.c: Likewise.
7134         * lib/utime.c: Likewise.
7135         * lib/utimecmp.c: Likewise.
7136         * lib/utimecmp.h: Likewise.
7137         * lib/utimens.c: Likewise.
7138         * lib/verify.h: Likewise.
7139         * lib/verror.c: Likewise.
7140         * lib/verror.h: Likewise.
7141         * lib/version-etc-fsf.c: Likewise.
7142         * lib/version-etc.c: Likewise.
7143         * lib/version-etc.h: Likewise.
7144         * lib/vfprintf.c: Likewise.
7145         * lib/vprintf.c: Likewise.
7146         * lib/vsprintf.c: Likewise.
7147         * lib/w32spawn.h: Likewise.
7148         * lib/wait-process.c: Likewise.
7149         * lib/wait-process.h: Likewise.
7150         * lib/wcwidth.c: Likewise.
7151         * lib/write-any-file.c: Likewise.
7152         * lib/xalloc-die.c: Likewise.
7153         * lib/xalloc.h: Likewise.
7154         * lib/xasprintf.c: Likewise.
7155         * lib/xgetcwd.c: Likewise.
7156         * lib/xgetcwd.h: Likewise.
7157         * lib/xgetdomainname.c: Likewise.
7158         * lib/xgetdomainname.h: Likewise.
7159         * lib/xgethostname.c: Likewise.
7160         * lib/xmalloc.c: Likewise.
7161         * lib/xmalloca.c: Likewise.
7162         * lib/xmalloca.h: Likewise.
7163         * lib/xmemcoll.c: Likewise.
7164         * lib/xnanosleep.c: Likewise.
7165         * lib/xreadlink.c: Likewise.
7166         * lib/xreadlink.h: Likewise.
7167         * lib/xsetenv.c: Likewise.
7168         * lib/xsetenv.h: Likewise.
7169         * lib/xstriconv.c: Likewise.
7170         * lib/xstriconv.h: Likewise.
7171         * lib/xstrndup.c: Likewise.
7172         * lib/xstrndup.h: Likewise.
7173         * lib/xstrtod.c: Likewise.
7174         * lib/xstrtod.h: Likewise.
7175         * lib/xstrtol-error.c: Likewise.
7176         * lib/xstrtol.c: Likewise.
7177         * lib/xstrtol.h: Likewise.
7178         * lib/xtime.h: Likewise.
7179         * lib/xvasprintf.c: Likewise.
7180         * lib/xvasprintf.h: Likewise.
7181         * lib/yesno.c: Likewise.
7182         * lib/yesno.h: Likewise.
7183         * posix-modules: Likewise.
7184         * tests/test-alloca-opt.c: Likewise.
7185         * tests/test-arcfour.c: Likewise.
7186         * tests/test-arctwo.c: Likewise.
7187         * tests/test-argmatch.c: Likewise.
7188         * tests/test-argp-2.sh: Likewise.
7189         * tests/test-argp.c: Likewise.
7190         * tests/test-arpa_inet.c: Likewise.
7191         * tests/test-array_list.c: Likewise.
7192         * tests/test-array_oset.c: Likewise.
7193         * tests/test-atexit.c: Likewise.
7194         * tests/test-avltree_list.c: Likewise.
7195         * tests/test-avltree_oset.c: Likewise.
7196         * tests/test-avltreehash_list.c: Likewise.
7197         * tests/test-base64.c: Likewise.
7198         * tests/test-binary-io.c: Likewise.
7199         * tests/test-byteswap.c: Likewise.
7200         * tests/test-c-ctype.c: Likewise.
7201         * tests/test-c-strcasecmp.c: Likewise.
7202         * tests/test-c-strcasestr.c: Likewise.
7203         * tests/test-c-strncasecmp.c: Likewise.
7204         * tests/test-c-strstr.c: Likewise.
7205         * tests/test-canonicalize-lgpl.c: Likewise.
7206         * tests/test-canonicalize.c: Likewise.
7207         * tests/test-carray_list.c: Likewise.
7208         * tests/test-ceilf.c: Likewise.
7209         * tests/test-ceill.c: Likewise.
7210         * tests/test-count-one-bits.c: Likewise.
7211         * tests/test-crc.c: Likewise.
7212         * tests/test-dirname.c: Likewise.
7213         * tests/test-fbufmode.c: Likewise.
7214         * tests/test-fcntl.c: Likewise.
7215         * tests/test-fflush.c: Likewise.
7216         * tests/test-floorf.c: Likewise.
7217         * tests/test-floorl.c: Likewise.
7218         * tests/test-fopen.c: Likewise.
7219         * tests/test-fprintf-posix.c: Likewise.
7220         * tests/test-fprintf-posix.h: Likewise.
7221         * tests/test-fpurge.c: Likewise.
7222         * tests/test-freadable.c: Likewise.
7223         * tests/test-freadahead.c: Likewise.
7224         * tests/test-freading.c: Likewise.
7225         * tests/test-freopen.c: Likewise.
7226         * tests/test-frexp.c: Likewise.
7227         * tests/test-frexpl.c: Likewise.
7228         * tests/test-fseek.c: Likewise.
7229         * tests/test-fseeko.c: Likewise.
7230         * tests/test-fseterr.c: Likewise.
7231         * tests/test-fstrcmp.c: Likewise.
7232         * tests/test-ftell.c: Likewise.
7233         * tests/test-ftello.c: Likewise.
7234         * tests/test-fwritable.c: Likewise.
7235         * tests/test-fwriting.c: Likewise.
7236         * tests/test-getaddrinfo.c: Likewise.
7237         * tests/test-getpass.c: Likewise.
7238         * tests/test-gettimeofday.c: Likewise.
7239         * tests/test-hmac-md5.c: Likewise.
7240         * tests/test-hmac-sha1.c: Likewise.
7241         * tests/test-iconv.c: Likewise.
7242         * tests/test-iconvme.c: Likewise.
7243         * tests/test-inttypes.c: Likewise.
7244         * tests/test-isnan.c: Likewise.
7245         * tests/test-isnanf.c: Likewise.
7246         * tests/test-isnanl-nolibm.c: Likewise.
7247         * tests/test-isnanl.c: Likewise.
7248         * tests/test-isnanl.h: Likewise.
7249         * tests/test-ldexpl.c: Likewise.
7250         * tests/test-linked_list.c: Likewise.
7251         * tests/test-linkedhash_list.c: Likewise.
7252         * tests/test-locale.c: Likewise.
7253         * tests/test-localename.c: Likewise.
7254         * tests/test-lock.c: Likewise.
7255         * tests/test-lseek.c: Likewise.
7256         * tests/test-malloca.c: Likewise.
7257         * tests/test-math.c: Likewise.
7258         * tests/test-mbscasecmp.c: Likewise.
7259         * tests/test-mbscasestr1.c: Likewise.
7260         * tests/test-mbscasestr2.c: Likewise.
7261         * tests/test-mbscasestr3.c: Likewise.
7262         * tests/test-mbscasestr4.c: Likewise.
7263         * tests/test-mbschr.c: Likewise.
7264         * tests/test-mbscspn.c: Likewise.
7265         * tests/test-mbsncasecmp.c: Likewise.
7266         * tests/test-mbspbrk.c: Likewise.
7267         * tests/test-mbspcasecmp.c: Likewise.
7268         * tests/test-mbsrchr.c: Likewise.
7269         * tests/test-mbsspn.c: Likewise.
7270         * tests/test-mbsstr1.c: Likewise.
7271         * tests/test-mbsstr2.c: Likewise.
7272         * tests/test-mbsstr3.c: Likewise.
7273         * tests/test-md5.c: Likewise.
7274         * tests/test-memmem.c: Likewise.
7275         * tests/test-netinet_in.c: Likewise.
7276         * tests/test-open.c: Likewise.
7277         * tests/test-printf-frexp.c: Likewise.
7278         * tests/test-printf-frexpl.c: Likewise.
7279         * tests/test-printf-posix.c: Likewise.
7280         * tests/test-printf-posix.h: Likewise.
7281         * tests/test-rbtree_list.c: Likewise.
7282         * tests/test-rbtree_oset.c: Likewise.
7283         * tests/test-rbtreehash_list.c: Likewise.
7284         * tests/test-read-file.c: Likewise.
7285         * tests/test-rijndael.c: Likewise.
7286         * tests/test-search.c: Likewise.
7287         * tests/test-signbit.c: Likewise.
7288         * tests/test-sleep.c: Likewise.
7289         * tests/test-snprintf-posix.c: Likewise.
7290         * tests/test-snprintf-posix.h: Likewise.
7291         * tests/test-snprintf.c: Likewise.
7292         * tests/test-sprintf-posix.c: Likewise.
7293         * tests/test-sprintf-posix.h: Likewise.
7294         * tests/test-stat-time.c: Likewise.
7295         * tests/test-stdbool.c: Likewise.
7296         * tests/test-stdint.c: Likewise.
7297         * tests/test-stdio.c: Likewise.
7298         * tests/test-stdlib.c: Likewise.
7299         * tests/test-stpncpy.c: Likewise.
7300         * tests/test-strcasestr.c: Likewise.
7301         * tests/test-striconv.c: Likewise.
7302         * tests/test-striconveh.c: Likewise.
7303         * tests/test-striconveha.c: Likewise.
7304         * tests/test-string.c: Likewise.
7305         * tests/test-sys_select.c: Likewise.
7306         * tests/test-sys_socket.c: Likewise.
7307         * tests/test-sys_stat.c: Likewise.
7308         * tests/test-sys_time.c: Likewise.
7309         * tests/test-sysexits.c: Likewise.
7310         * tests/test-time.c: Likewise.
7311         * tests/test-tls.c: Likewise.
7312         * tests/test-trunc.c: Likewise.
7313         * tests/test-truncf.c: Likewise.
7314         * tests/test-truncl.c: Likewise.
7315         * tests/test-unistd.c: Likewise.
7316         * tests/test-vasnprintf-posix.c: Likewise.
7317         * tests/test-vasnprintf-posix2.c: Likewise.
7318         * tests/test-vasnprintf.c: Likewise.
7319         * tests/test-vasprintf-posix.c: Likewise.
7320         * tests/test-vasprintf.c: Likewise.
7321         * tests/test-verify.c: Likewise.
7322         * tests/test-vfprintf-posix.c: Likewise.
7323         * tests/test-vprintf-posix.c: Likewise.
7324         * tests/test-vsnprintf-posix.c: Likewise.
7325         * tests/test-vsnprintf.c: Likewise.
7326         * tests/test-vsprintf-posix.c: Likewise.
7327         * tests/test-wchar.c: Likewise.
7328         * tests/test-wctype.c: Likewise.
7329         * tests/test-wcwidth.c: Likewise.
7330         * tests/test-xstrtol.c: Likewise.
7331         * tests/test-xvasprintf.c: Likewise.
7332         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
7333         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
7334         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
7335         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
7336         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
7337         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
7338         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
7339         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
7340         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
7341         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
7342         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
7343         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
7344         * tests/uniname/test-uninames.c: Likewise.
7345         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
7346         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
7347         * tests/unistdio/test-u16-printf1.h: Likewise.
7348         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
7349         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
7350         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
7351         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
7352         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
7353         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
7354         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
7355         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
7356         * tests/unistdio/test-u32-printf1.h: Likewise.
7357         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
7358         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
7359         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
7360         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
7361         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
7362         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
7363         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
7364         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
7365         * tests/unistdio/test-u8-printf1.h: Likewise.
7366         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
7367         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
7368         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
7369         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
7370         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
7371         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
7372         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
7373         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
7374         * tests/unistdio/test-ulc-printf1.h: Likewise.
7375         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
7376         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
7377         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
7378         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
7379         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
7380         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
7381         * tests/uniwidth/test-u16-strwidth.c: Likewise.
7382         * tests/uniwidth/test-u16-width.c: Likewise.
7383         * tests/uniwidth/test-u32-strwidth.c: Likewise.
7384         * tests/uniwidth/test-u32-width.c: Likewise.
7385         * tests/uniwidth/test-u8-strwidth.c: Likewise.
7386         * tests/uniwidth/test-u8-width.c: Likewise.
7387         * tests/uniwidth/test-uc_width.c: Likewise.
7388         * config/srclist-update: Likewise.
7389         (fixlicense): Update to GPLv3+.
7390
7391         Change copyright notice from LGPLv2.1+ to LGPLv3+.
7392         * tests/test-tsearch.c: Change copyright notice.
7393
7394         Change copyright notice from LGPLv2.0+ to LGPLv3+.
7395         * lib/c-strcaseeq.h: Change copyright notice.
7396         * lib/streq.h: Likewise.
7397         * lib/uniconv.h: Likewise.
7398         * lib/uniconv/u-conv-from-enc.h: Likewise.
7399         * lib/uniconv/u-conv-to-enc.h: Likewise.
7400         * lib/uniconv/u-strconv-from-enc.h: Likewise.
7401         * lib/uniconv/u-strconv-to-enc.h: Likewise.
7402         * lib/uniconv/u16-conv-from-enc.c: Likewise.
7403         * lib/uniconv/u16-conv-to-enc.c: Likewise.
7404         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
7405         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
7406         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
7407         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
7408         * lib/uniconv/u32-conv-from-enc.c: Likewise.
7409         * lib/uniconv/u32-conv-to-enc.c: Likewise.
7410         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
7411         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
7412         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
7413         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
7414         * lib/uniconv/u8-conv-from-enc.c: Likewise.
7415         * lib/uniconv/u8-conv-to-enc.c: Likewise.
7416         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
7417         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
7418         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
7419         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
7420         * lib/uniname.h: Likewise.
7421         * lib/uniname/uniname.c: Likewise.
7422         * lib/unistdio.h: Likewise.
7423         * lib/unistdio/u-asnprintf.h: Likewise.
7424         * lib/unistdio/u-asprintf.h: Likewise.
7425         * lib/unistdio/u-printf-args.c: Likewise.
7426         * lib/unistdio/u-printf-args.h: Likewise.
7427         * lib/unistdio/u-printf-parse.h: Likewise.
7428         * lib/unistdio/u-snprintf.h: Likewise.
7429         * lib/unistdio/u-sprintf.h: Likewise.
7430         * lib/unistdio/u-vasprintf.h: Likewise.
7431         * lib/unistdio/u-vsnprintf.h: Likewise.
7432         * lib/unistdio/u-vsprintf.h: Likewise.
7433         * lib/unistdio/u16-asnprintf.c: Likewise.
7434         * lib/unistdio/u16-asprintf.c: Likewise.
7435         * lib/unistdio/u16-printf-parse.c: Likewise.
7436         * lib/unistdio/u16-snprintf.c: Likewise.
7437         * lib/unistdio/u16-sprintf.c: Likewise.
7438         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
7439         * lib/unistdio/u16-u16-asprintf.c: Likewise.
7440         * lib/unistdio/u16-u16-snprintf.c: Likewise.
7441         * lib/unistdio/u16-u16-sprintf.c: Likewise.
7442         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
7443         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
7444         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
7445         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
7446         * lib/unistdio/u16-vasnprintf.c: Likewise.
7447         * lib/unistdio/u16-vasprintf.c: Likewise.
7448         * lib/unistdio/u16-vsnprintf.c: Likewise.
7449         * lib/unistdio/u16-vsprintf.c: Likewise.
7450         * lib/unistdio/u32-asnprintf.c: Likewise.
7451         * lib/unistdio/u32-asprintf.c: Likewise.
7452         * lib/unistdio/u32-printf-parse.c: Likewise.
7453         * lib/unistdio/u32-snprintf.c: Likewise.
7454         * lib/unistdio/u32-sprintf.c: Likewise.
7455         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
7456         * lib/unistdio/u32-u32-asprintf.c: Likewise.
7457         * lib/unistdio/u32-u32-snprintf.c: Likewise.
7458         * lib/unistdio/u32-u32-sprintf.c: Likewise.
7459         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
7460         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
7461         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
7462         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
7463         * lib/unistdio/u32-vasnprintf.c: Likewise.
7464         * lib/unistdio/u32-vasprintf.c: Likewise.
7465         * lib/unistdio/u32-vsnprintf.c: Likewise.
7466         * lib/unistdio/u32-vsprintf.c: Likewise.
7467         * lib/unistdio/u8-asnprintf.c: Likewise.
7468         * lib/unistdio/u8-asprintf.c: Likewise.
7469         * lib/unistdio/u8-printf-parse.c: Likewise.
7470         * lib/unistdio/u8-snprintf.c: Likewise.
7471         * lib/unistdio/u8-sprintf.c: Likewise.
7472         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
7473         * lib/unistdio/u8-u8-asprintf.c: Likewise.
7474         * lib/unistdio/u8-u8-snprintf.c: Likewise.
7475         * lib/unistdio/u8-u8-sprintf.c: Likewise.
7476         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
7477         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
7478         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
7479         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
7480         * lib/unistdio/u8-vasnprintf.c: Likewise.
7481         * lib/unistdio/u8-vasprintf.c: Likewise.
7482         * lib/unistdio/u8-vsnprintf.c: Likewise.
7483         * lib/unistdio/u8-vsprintf.c: Likewise.
7484         * lib/unistdio/ulc-asnprintf.c: Likewise.
7485         * lib/unistdio/ulc-asprintf.c: Likewise.
7486         * lib/unistdio/ulc-printf-parse.c: Likewise.
7487         * lib/unistdio/ulc-snprintf.c: Likewise.
7488         * lib/unistdio/ulc-sprintf.c: Likewise.
7489         * lib/unistdio/ulc-vasnprintf.c: Likewise.
7490         * lib/unistdio/ulc-vasprintf.c: Likewise.
7491         * lib/unistdio/ulc-vsnprintf.c: Likewise.
7492         * lib/unistdio/ulc-vsprintf.c: Likewise.
7493         * lib/unistr.h: Likewise.
7494         * lib/unistr/u-cpy-alloc.h: Likewise.
7495         * lib/unistr/u-cpy.h: Likewise.
7496         * lib/unistr/u-endswith.h: Likewise.
7497         * lib/unistr/u-move.h: Likewise.
7498         * lib/unistr/u-set.h: Likewise.
7499         * lib/unistr/u-startswith.h: Likewise.
7500         * lib/unistr/u-stpcpy.h: Likewise.
7501         * lib/unistr/u-stpncpy.h: Likewise.
7502         * lib/unistr/u-strcat.h: Likewise.
7503         * lib/unistr/u-strcpy.h: Likewise.
7504         * lib/unistr/u-strcspn.h: Likewise.
7505         * lib/unistr/u-strdup.h: Likewise.
7506         * lib/unistr/u-strlen.h: Likewise.
7507         * lib/unistr/u-strncat.h: Likewise.
7508         * lib/unistr/u-strncpy.h: Likewise.
7509         * lib/unistr/u-strnlen.h: Likewise.
7510         * lib/unistr/u-strpbrk.h: Likewise.
7511         * lib/unistr/u-strspn.h: Likewise.
7512         * lib/unistr/u-strstr.h: Likewise.
7513         * lib/unistr/u-strtok.h: Likewise.
7514         * lib/unistr/u16-check.c: Likewise.
7515         * lib/unistr/u16-chr.c: Likewise.
7516         * lib/unistr/u16-cmp.c: Likewise.
7517         * lib/unistr/u16-cpy-alloc.c: Likewise.
7518         * lib/unistr/u16-cpy.c: Likewise.
7519         * lib/unistr/u16-endswith.c: Likewise.
7520         * lib/unistr/u16-mblen.c: Likewise.
7521         * lib/unistr/u16-mbsnlen.c: Likewise.
7522         * lib/unistr/u16-mbtouc-aux.c: Likewise.
7523         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
7524         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
7525         * lib/unistr/u16-mbtouc.c: Likewise.
7526         * lib/unistr/u16-mbtoucr.c: Likewise.
7527         * lib/unistr/u16-move.c: Likewise.
7528         * lib/unistr/u16-next.c: Likewise.
7529         * lib/unistr/u16-prev.c: Likewise.
7530         * lib/unistr/u16-set.c: Likewise.
7531         * lib/unistr/u16-startswith.c: Likewise.
7532         * lib/unistr/u16-stpcpy.c: Likewise.
7533         * lib/unistr/u16-stpncpy.c: Likewise.
7534         * lib/unistr/u16-strcat.c: Likewise.
7535         * lib/unistr/u16-strchr.c: Likewise.
7536         * lib/unistr/u16-strcmp.c: Likewise.
7537         * lib/unistr/u16-strcpy.c: Likewise.
7538         * lib/unistr/u16-strcspn.c: Likewise.
7539         * lib/unistr/u16-strdup.c: Likewise.
7540         * lib/unistr/u16-strlen.c: Likewise.
7541         * lib/unistr/u16-strmblen.c: Likewise.
7542         * lib/unistr/u16-strmbtouc.c: Likewise.
7543         * lib/unistr/u16-strncat.c: Likewise.
7544         * lib/unistr/u16-strncmp.c: Likewise.
7545         * lib/unistr/u16-strncpy.c: Likewise.
7546         * lib/unistr/u16-strnlen.c: Likewise.
7547         * lib/unistr/u16-strpbrk.c: Likewise.
7548         * lib/unistr/u16-strrchr.c: Likewise.
7549         * lib/unistr/u16-strspn.c: Likewise.
7550         * lib/unistr/u16-strstr.c: Likewise.
7551         * lib/unistr/u16-strtok.c: Likewise.
7552         * lib/unistr/u16-to-u32.c: Likewise.
7553         * lib/unistr/u16-to-u8.c: Likewise.
7554         * lib/unistr/u16-uctomb-aux.c: Likewise.
7555         * lib/unistr/u16-uctomb.c: Likewise.
7556         * lib/unistr/u32-check.c: Likewise.
7557         * lib/unistr/u32-chr.c: Likewise.
7558         * lib/unistr/u32-cmp.c: Likewise.
7559         * lib/unistr/u32-cpy-alloc.c: Likewise.
7560         * lib/unistr/u32-cpy.c: Likewise.
7561         * lib/unistr/u32-endswith.c: Likewise.
7562         * lib/unistr/u32-mblen.c: Likewise.
7563         * lib/unistr/u32-mbsnlen.c: Likewise.
7564         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
7565         * lib/unistr/u32-mbtouc.c: Likewise.
7566         * lib/unistr/u32-mbtoucr.c: Likewise.
7567         * lib/unistr/u32-move.c: Likewise.
7568         * lib/unistr/u32-next.c: Likewise.
7569         * lib/unistr/u32-prev.c: Likewise.
7570         * lib/unistr/u32-set.c: Likewise.
7571         * lib/unistr/u32-startswith.c: Likewise.
7572         * lib/unistr/u32-stpcpy.c: Likewise.
7573         * lib/unistr/u32-stpncpy.c: Likewise.
7574         * lib/unistr/u32-strcat.c: Likewise.
7575         * lib/unistr/u32-strchr.c: Likewise.
7576         * lib/unistr/u32-strcmp.c: Likewise.
7577         * lib/unistr/u32-strcpy.c: Likewise.
7578         * lib/unistr/u32-strcspn.c: Likewise.
7579         * lib/unistr/u32-strdup.c: Likewise.
7580         * lib/unistr/u32-strlen.c: Likewise.
7581         * lib/unistr/u32-strmblen.c: Likewise.
7582         * lib/unistr/u32-strmbtouc.c: Likewise.
7583         * lib/unistr/u32-strncat.c: Likewise.
7584         * lib/unistr/u32-strncmp.c: Likewise.
7585         * lib/unistr/u32-strncpy.c: Likewise.
7586         * lib/unistr/u32-strnlen.c: Likewise.
7587         * lib/unistr/u32-strpbrk.c: Likewise.
7588         * lib/unistr/u32-strrchr.c: Likewise.
7589         * lib/unistr/u32-strspn.c: Likewise.
7590         * lib/unistr/u32-strstr.c: Likewise.
7591         * lib/unistr/u32-strtok.c: Likewise.
7592         * lib/unistr/u32-to-u16.c: Likewise.
7593         * lib/unistr/u32-to-u8.c: Likewise.
7594         * lib/unistr/u32-uctomb.c: Likewise.
7595         * lib/unistr/u8-check.c: Likewise.
7596         * lib/unistr/u8-chr.c: Likewise.
7597         * lib/unistr/u8-cmp.c: Likewise.
7598         * lib/unistr/u8-cpy-alloc.c: Likewise.
7599         * lib/unistr/u8-cpy.c: Likewise.
7600         * lib/unistr/u8-endswith.c: Likewise.
7601         * lib/unistr/u8-mblen.c: Likewise.
7602         * lib/unistr/u8-mbsnlen.c: Likewise.
7603         * lib/unistr/u8-mbtouc-aux.c: Likewise.
7604         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
7605         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
7606         * lib/unistr/u8-mbtouc.c: Likewise.
7607         * lib/unistr/u8-mbtoucr.c: Likewise.
7608         * lib/unistr/u8-move.c: Likewise.
7609         * lib/unistr/u8-next.c: Likewise.
7610         * lib/unistr/u8-prev.c: Likewise.
7611         * lib/unistr/u8-set.c: Likewise.
7612         * lib/unistr/u8-startswith.c: Likewise.
7613         * lib/unistr/u8-stpcpy.c: Likewise.
7614         * lib/unistr/u8-stpncpy.c: Likewise.
7615         * lib/unistr/u8-strcat.c: Likewise.
7616         * lib/unistr/u8-strchr.c: Likewise.
7617         * lib/unistr/u8-strcmp.c: Likewise.
7618         * lib/unistr/u8-strcpy.c: Likewise.
7619         * lib/unistr/u8-strcspn.c: Likewise.
7620         * lib/unistr/u8-strdup.c: Likewise.
7621         * lib/unistr/u8-strlen.c: Likewise.
7622         * lib/unistr/u8-strmblen.c: Likewise.
7623         * lib/unistr/u8-strmbtouc.c: Likewise.
7624         * lib/unistr/u8-strncat.c: Likewise.
7625         * lib/unistr/u8-strncmp.c: Likewise.
7626         * lib/unistr/u8-strncpy.c: Likewise.
7627         * lib/unistr/u8-strnlen.c: Likewise.
7628         * lib/unistr/u8-strpbrk.c: Likewise.
7629         * lib/unistr/u8-strrchr.c: Likewise.
7630         * lib/unistr/u8-strspn.c: Likewise.
7631         * lib/unistr/u8-strstr.c: Likewise.
7632         * lib/unistr/u8-strtok.c: Likewise.
7633         * lib/unistr/u8-to-u16.c: Likewise.
7634         * lib/unistr/u8-to-u32.c: Likewise.
7635         * lib/unistr/u8-uctomb-aux.c: Likewise.
7636         * lib/unistr/u8-uctomb.c: Likewise.
7637         * lib/unitypes.h: Likewise.
7638         * lib/uniwidth.h: Likewise.
7639         * lib/uniwidth/cjk.h: Likewise.
7640         * lib/uniwidth/u16-strwidth.c: Likewise.
7641         * lib/uniwidth/u16-width.c: Likewise.
7642         * lib/uniwidth/u32-strwidth.c: Likewise.
7643         * lib/uniwidth/u32-width.c: Likewise.
7644         * lib/uniwidth/u8-strwidth.c: Likewise.
7645         * lib/uniwidth/u8-width.c: Likewise.
7646         * lib/uniwidth/width.c: Likewise.
7647
7648 2007-10-07  Bruno Haible  <bruno@clisp.org>
7649
7650         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
7651         The file is still under LGPL (see modules/inttypes).
7652
7653 2007-10-06  Bruno Haible  <bruno@clisp.org>
7654
7655         * modules/trunc (Dependencies): Add 'extensions'.
7656         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
7657         Reported by Ben Pfaff <blp@gnu.org>.
7658
7659 2007-10-06  Bruno Haible  <bruno@clisp.org>
7660
7661         * modules/freopen-tests: New file.
7662         * tests/test-freopen.c: New file.
7663
7664         * modules/fopen-tests: New file.
7665         * tests/test-fopen.c: New file.
7666
7667         * modules/fopen: New file.
7668         * lib/fopen.c: New file.
7669         * m4/fopen.m4: New file.
7670         * modules/freopen: New file.
7671         * lib/freopen.c: New file.
7672         * m4/freopen.m4: New file.
7673         * lib/stdio.in.h (fopen, freopen): New declarations.
7674         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
7675         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7676         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
7677         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
7678         * doc/functions/fopen.texi: Mention the 'fopen' module.
7679         * doc/functions/freopen.texi: Mention the 'freopen' module.
7680
7681 2007-10-06  Bruno Haible  <bruno@clisp.org>
7682
7683         * modules/open-tests: New file.
7684         * tests/test-open.c: New file.
7685
7686         * modules/open: New file.
7687         * lib/open.c: New file.
7688         * m4/open.m4: New file.
7689         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
7690         lib/open.c does.
7691         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
7692         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
7693         macros.
7694         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
7695         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
7696         REPLACE_OPEN.
7697         * doc/functions/open.texi: Mention the 'open' module.
7698
7699 2007-10-04  Bruno Haible  <bruno@clisp.org>
7700
7701         * modules/ceill-tests: New file.
7702         * tests/test-ceill.c: New file.
7703
7704         * modules/ceill: New file.
7705         * lib/ceill.c: Replace entire file.
7706         * m4/ceill.m4: New file.
7707         * lib/math.in.h (ceill): Replace declaration.
7708         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
7709         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
7710         * doc/functions/ceill.texi: Mention the 'ceill' module.
7711         * modules/mathl (Files): Remove lib/ceill.c.
7712         (Depends-on): Add ceill.
7713
7714 2007-10-04  Bruno Haible  <bruno@clisp.org>
7715
7716         * modules/ceilf-tests: New file.
7717         * tests/test-ceilf.c: New file.
7718
7719         * modules/ceilf: New file.
7720         * lib/ceil.c: New file.
7721         * lib/ceilf.c: New file.
7722         * m4/ceilf.m4: New file.
7723         * lib/math.in.h (ceilf): New declaration.
7724         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
7725         HAVE_DECL_CEILF.
7726         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
7727         HAVE_DECL_CEILF.
7728         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
7729
7730 2007-10-04  Bruno Haible  <bruno@clisp.org>
7731
7732         * modules/floorl-tests: New file.
7733         * tests/test-floorl.c: New file.
7734
7735         * modules/floorl: New file.
7736         * lib/floorl.c: Replace entire file.
7737         * m4/floorl.m4: New file.
7738         * lib/math.in.h (floorl): Replace declaration.
7739         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
7740         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
7741         * doc/functions/floorl.texi: Mention the 'floorl' module.
7742         * modules/mathl (Files): Remove lib/floorl.c.
7743         (Depends-on): Add floorl.
7744
7745 2007-10-04  Bruno Haible  <bruno@clisp.org>
7746
7747         * modules/floorf-tests: New file.
7748         * tests/test-floorf.c: New file.
7749
7750         * modules/floorf: New file.
7751         * lib/floor.c: New file.
7752         * lib/floorf.c: New file.
7753         * m4/floorf.m4: New file.
7754         * lib/math.in.h (floorf): New declaration.
7755         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
7756         HAVE_DECL_FLOORF.
7757         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
7758         HAVE_DECL_FLOORF.
7759         * doc/functions/floorf.texi: Mention the 'floorf' module.
7760
7761 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
7762             Bruno Haible  <bruno@clisp.org>
7763
7764         Advertise for the Git server instead of the CVS server.
7765         * doc/gnulib-intro.texi (Steady Development): Mention the Git
7766         repository instead of the CVS one.
7767         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
7768         about all VCS systems generically.
7769         * doc/gnulib.texi (Introduction): Capitalize `Git'.
7770
7771 2007-10-04  Bruno Haible  <bruno@clisp.org>
7772
7773         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
7774         means.
7775         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
7776
7777 2007-10-04  Bruno Haible  <bruno@clisp.org>
7778
7779         * modules/truncl-tests: New file.
7780         * tests/test-truncl.c: New file.
7781
7782         * modules/truncl: New file.
7783         * lib/truncl.c: New file.
7784         * m4/truncl.m4: New file.
7785         * lib/math.in.h (truncl): New declaration.
7786         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
7787         HAVE_DECL_TRUNCL.
7788         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
7789         HAVE_DECL_TRUNCL.
7790         * doc/functions/truncl.texi: Mention the 'truncl' module.
7791
7792 2007-10-04  Bruno Haible  <bruno@clisp.org>
7793
7794         * modules/truncf-tests: New file.
7795         * tests/test-truncf.c: New file.
7796
7797         * modules/truncf: New file.
7798         * lib/trunc.c: Make paramerizable through USE_* macros.
7799         * lib/truncf.c: New file.
7800         * m4/truncf.m4: New file.
7801         * lib/math.in.h (truncf): New declaration.
7802         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
7803         HAVE_DECL_TRUNCF.
7804         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
7805         HAVE_DECL_TRUNCF.
7806         * doc/functions/truncf.texi: Mention the 'truncf' module.
7807
7808 2007-10-03  Bruno Haible  <bruno@clisp.org>
7809
7810         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
7811         augmentation also for tests modules.
7812         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
7813         * modules/atexit-tests (Makefile.am): Likewise.
7814         * modules/binary-io-tests (Makefile.am): Likewise.
7815         * modules/c-strcase-tests (Makefile.am): Likewise.
7816         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
7817         * modules/canonicalize-tests (Makefile.am): Likewise.
7818         * modules/closein-tests (Makefile.am): Likewise.
7819         * modules/fprintf-posix-tests (Makefile.am): Likewise.
7820         * modules/freadahead-tests (Makefile.am): Likewise.
7821         * modules/fseek-tests (Makefile.am): Likewise.
7822         * modules/fseeko-tests (Makefile.am): Likewise.
7823         * modules/ftell-tests (Makefile.am): Likewise.
7824         * modules/ftello-tests (Makefile.am): Likewise.
7825         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
7826         * modules/isnanl-tests (Makefile.am): Likewise.
7827         * modules/lseek-tests (Makefile.am): Likewise.
7828         * modules/mbscasecmp-tests (Makefile.am): Likewise.
7829         * modules/mbscasestr-tests (Makefile.am): Likewise.
7830         * modules/mbschr-tests (Makefile.am): Likewise.
7831         * modules/mbscspn-tests (Makefile.am): Likewise.
7832         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
7833         * modules/mbspbrk-tests (Makefile.am): Likewise.
7834         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
7835         * modules/mbsrchr-tests (Makefile.am): Likewise.
7836         * modules/mbsspn-tests (Makefile.am): Likewise.
7837         * modules/mbsstr-tests (Makefile.am): Likewise.
7838         * modules/printf-posix-tests (Makefile.am): Likewise.
7839         * modules/snprintf-posix-tests (Makefile.am): Likewise.
7840         * modules/sprintf-posix-tests (Makefile.am): Likewise.
7841         * modules/tsearch-tests (Makefile.am): Likewise.
7842         * modules/uniname/uniname-tests (Makefile.am): Likewise.
7843         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
7844         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
7845         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
7846         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
7847         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
7848         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
7849         * modules/vprintf-posix-tests (Makefile.am): Likewise.
7850         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
7851         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
7852         * modules/xstrtoimax-tests (Makefile.am): Likewise.
7853         * modules/xstrtol-tests (Makefile.am): Likewise.
7854         * modules/xstrtoumax-tests (Makefile.am): Likewise.
7855         * modules/yesno-tests (Makefile.am): Likewise.
7856
7857 2007-10-03  Bruno Haible  <bruno@clisp.org>
7858
7859         * modules/trunc-tests: New file.
7860         * tests/test-trunc.c: New file.
7861
7862         * modules/trunc: New file.
7863         * lib/trunc.c: New file.
7864         * m4/trunc.m4: New file.
7865         * lib/math.in.h (trunc): New declaration.
7866         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
7867         HAVE_DECL_TRUNC.
7868         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
7869         HAVE_DECL_TRUNC.
7870         * doc/functions/trunc.texi: Mention the 'trunc' module.
7871
7872 2007-10-03  Bruno Haible  <bruno@clisp.org>
7873
7874         * tests/test-fpending.c: New file, mostly copied
7875         from coreutils/lib/t-fpending.c.
7876         * modules/fpending-tests: New file.
7877
7878 2007-10-03  Bruno Haible  <bruno@clisp.org>
7879
7880         Port the stdio extensions to QNX (untested).
7881         * lib/fseterr.c (fseterr): Add support for QNX.
7882         * lib/fbufmode.c (fbufmode): Likewise.
7883         * lib/freadable.c (freadable): Likewise.
7884         * lib/fwritable.c (fwritable): Likewise.
7885         * lib/freading.c (freading): Likewise.
7886         * lib/fwriting.c (fwriting): Likewise.
7887         * lib/freadahead.c (freadahed): Likewise.
7888         * lib/fpurge.c (fpurge): Likewise.
7889         * lib/fseeko.c (rpl_fseeko): Likewise.
7890
7891 2007-10-03  Bruno Haible  <bruno@clisp.org>
7892             Jim Meyering  <jim@meyering.net>
7893             Eric Blake  <ebb9@byu.net>
7894
7895         * doc/relocatable.texi: Use @command instead of @program.
7896
7897 2007-10-02  Jim Meyering  <jim@meyering.net>
7898
7899         Perform one more "_.h" -> ".in.h" substitution.
7900         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
7901         instead of unistd_.h here, too.
7902
7903 2007-10-01  Bruno Haible  <bruno@clisp.org>
7904
7905         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
7906         Needed for the alloca-opt module.
7907
7908 2007-09-30  Bruno Haible  <bruno@clisp.org>
7909
7910         * lib/alloca.in.h: Renamed from lib/alloca_.h.
7911         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
7912         alloca_.h.
7913         * lib/argz.in.h: Renamed from lib/argz_.h.
7914         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
7915         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
7916         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
7917         byteswap_.h.
7918         * lib/dirent.in.h: Renamed from lib/dirent_.h.
7919         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
7920         dirent_.h.
7921         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
7922         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
7923         fcntl_.h.
7924         * lib/float.in.h: Renamed from lib/float_.h.
7925         * modules/float (Files, Makefile.am): Use float.in.h instead of
7926         float_.h.
7927         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
7928         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
7929         fnmatch_.h.
7930         * lib/getopt.in.h: Renamed from lib/getopt_.h.
7931         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
7932         getopt_.h.
7933         * lib/glob.in.h: Renamed from lib/glob_.h.
7934         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
7935         * lib/iconv.in.h: Renamed from lib/iconv_.h.
7936         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
7937         iconv_.h.
7938         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
7939         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
7940         inttypes_.h.
7941         * lib/locale.in.h: Renamed from lib/locale_.h.
7942         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
7943         locale_.h.
7944         * lib/math.in.h: Renamed from lib/math_.h.
7945         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
7946         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
7947         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
7948         of netinet_in_.h. Add dependency.
7949         * lib/poll.in.h: Renamed from lib/poll_.h.
7950         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
7951         * lib/search.in.h: Renamed from lib/search_.h.
7952         * modules/search (Files, Makefile.am): Use search.in.h instead of
7953         search_.h.
7954         * lib/signal.in.h: Renamed from lib/signal_.h.
7955         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
7956         _signal.h.
7957         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
7958         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
7959         stdbool_.h.
7960         * lib/stdint.in.h: Renamed from lib/stdint_.h.
7961         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
7962         stdint_.h.
7963         * lib/stdio.in.h: Renamed from lib/stdio_.h.
7964         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
7965         stdio_.h.
7966         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
7967         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
7968         stdlib_.h.
7969         * lib/string.in.h: Renamed from lib/string_.h.
7970         * modules/string (Files, Makefile.am): Use string.in.h instead of
7971         string_.h.
7972         * doc/gnulib-tool.texi (Initial import): Update.
7973         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
7974         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
7975         of sys_select_.h. Add dependency.
7976         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
7977         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
7978         of sys_socket_.h.
7979         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
7980         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
7981         sys_stat_.h.
7982         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
7983         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
7984         sys_time_.h.
7985         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
7986         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
7987         sysexits_.h.
7988         * lib/time.in.h: Renamed from lib/time_.h.
7989         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
7990         * lib/unistd.in.h: Renamed from lib/unistd_.h.
7991         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
7992         unistd_.h.
7993         * lib/wchar.in.h: Renamed from lib/wchar_.h.
7994         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
7995         wchar_.h.
7996         * lib/wctype.in.h: Renamed from lib/wctype_.h.
7997         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
7998         wctype_.h.
7999         * build-aux/bootstrap (slurp): Update.
8000         * lib/.cppi-disable: Update.
8001
8002 2007-09-30  Bruno Haible  <bruno@clisp.org>
8003
8004         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
8005         Needed on BeOS.
8006
8007 2007-09-30  Bruno Haible  <bruno@clisp.org>
8008
8009         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
8010
8011 2007-09-29  Bruno Haible  <bruno@clisp.org>
8012
8013         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
8014
8015 2007-09-29  Bruno Haible  <bruno@clisp.org>
8016
8017         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
8018         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
8019         * build-aux/install-reloc: Compile also areadlink.c.
8020         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
8021
8022 2007-09-29  Bruno Haible  <bruno@clisp.org>
8023
8024         * gnulib-tool (func_emit_initmacro_done): Indentation.
8025
8026 2007-09-29  Bruno Haible  <bruno@clisp.org>
8027
8028         * README: Add CVS checkout update instructions.
8029         Info from Bob Proulx <bob@proulx.com>.
8030
8031 2007-09-28  Eric Blake  <ebb9@byu.net>
8032
8033         Provide move-if-change.
8034         * build-aux/move-if-change: New file, based on best practice
8035         rather than any canonical upstream location.
8036
8037 2007-09-28  Jim Meyering  <jim@meyering.net>
8038
8039         Fix canonicalize loop-detection corner case.
8040         Do not attempt to stat the symlink values stored via seen_triple.
8041         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
8042         on linux-2.6.18, (but not 2.6.22).
8043         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
8044         triple_compare.  The former compares dev,ino,filename, while the latter
8045         would actually stat dirname(filename) when dev and ino were equal.
8046         * lib/hash-triple.c: Install <string.h>.
8047         (STREQ): Define.
8048         (triple_compare_ino_str): New function.
8049         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
8050
8051 2007-09-28  Eric Blake  <ebb9@byu.net>
8052
8053         Enforce that AC_REPLACE_FUNCS files exist.
8054         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
8055         override check for typos.
8056
8057         Fix test-closein on Solaris 10.
8058         * tests/test-closein.c (main): Don't assume stdin can be inherited
8059         closed on all systems.
8060         * tests/test-closein.sh: Likewise.
8061         Reported by Piotr Tarnowski.
8062
8063 2007-09-28  Jim Meyering  <jim@meyering.net>
8064
8065         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
8066
8067 2007-09-27  Jim Meyering  <jim@meyering.net>
8068
8069         canonicalize: Avoid a false-positive cycle failure.
8070         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
8071         Sort.  Remove cycle-check.
8072         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
8073         not cycle-check.h.
8074         (seen_triple): New function.
8075         (canonicalize_filename_mode): Use it instead of cycle-check.
8076         * tests/test-canonicalize.c: Add a test for this bug.
8077         * tests/test-canonicalize.sh: Set up and run the test.
8078
8079         New module, file-set, from coreutils.
8080         * modules/file-set: Define it.
8081         * lib/file-set.c, lib/file-set.h: Implement.
8082
8083         New module, hash-triple, from coreutils.
8084         * modules/hash-triple: Define it.
8085         * lib/hash-triple.c, lib/hash-triple.h: Implement.
8086
8087 2007-09-25  Eric Blake  <ebb9@byu.net>
8088
8089         Fix strerror on Interix.
8090         * lib/string_.h (strerror): Declare replacement.
8091         * doc/functions/strerror.texi (strerror): Document the Interix
8092         shortcoming.
8093         * modules/string (Makefile.am): Support new hooks.
8094         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
8095         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
8096         gl_FUNC_STRERROR_SEPARATE.
8097         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
8098         * lib/strerror.c (rpl_strerror): Provide replacement.
8099         * modules/strerror (Depends-on): Add string.
8100         (configure.ac): Detect use of module.
8101         * tests/test-strerror.c: New file.
8102         * modules/strerror-tests: New test module.
8103         * modules/argp (Depends-on): Add strerror.
8104         * modules/error (Depends-on): Likewise.
8105         Reported by Martin Koeppe.
8106
8107 2007-09-24  Bruno Haible  <bruno@clisp.org>
8108
8109         * README: Update git instructions.
8110
8111 2007-09-24  Eric Blake  <ebb9@byu.net>
8112
8113         Revert fpending breakage from 2007-09-08.
8114         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
8115         __fpending.c.
8116
8117 2007-09-24  Jim Meyering  <jim@meyering.net>
8118
8119         filenamecat.c: Add a test.
8120         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
8121         showing how the function works when DIR is the empty string.
8122
8123 2007-09-21  Simon Josefsson  <simon@josefsson.org>
8124
8125         * tests/test-canonicalize.sh: Turn on executable bit.
8126
8127 2007-09-19  Eric Blake  <ebb9@byu.net>
8128
8129         * README: Update CVS instructions.
8130
8131 2007-09-18  Bruno Haible  <bruno@clisp.org>
8132
8133         * modules/areadlink: New file.
8134         * lib/areadlink.h (areadlink): New declaration.
8135         * lib/areadlink.c: New file, based on lib/xreadlink.c.
8136
8137 2007-09-17  Jim Meyering  <jim@meyering.net>
8138
8139         * lib/savewd.c (ESTALE) [!defined]: Define.
8140         Reported to be required on Interix by Martin Koeppe.
8141
8142 2007-09-17  Bruno Haible  <bruno@clisp.org>
8143
8144         * gnulib-tool (func_version): Use $version.
8145
8146 2007-09-16  Bruno Haible  <bruno@clisp.org>
8147
8148         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
8149         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
8150         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
8151         Reported by Greg Schafer <gschafer@zip.com.au>.
8152
8153 2007-09-15  Bruno Haible  <bruno@clisp.org>
8154
8155         * gnulib-tool (sed): Try a little harder to make bash understand the
8156         alias.
8157         Reported by Bruce Korb <bruce.korb@gmail.com>.
8158
8159 2007-09-13  Eric Blake  <ebb9@byu.net>
8160
8161         * ChangeLog: Remove conflict markers.
8162
8163 2007-09-13  Simon Josefsson  <simon@josefsson.org>
8164
8165         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
8166         Reported by Bruno Haible <bruno@clisp.org>.
8167
8168 2007-09-12  Bruno Haible  <bruno@clisp.org>
8169
8170         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
8171         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
8172         is not defined.
8173
8174 2007-09-12  Eric Blake  <ebb9@byu.net>
8175
8176         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
8177         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
8178         Autoconf definition.
8179         * modules/euidaccess (Depends-on): Add extensions, for
8180         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
8181         * modules/fnmatch (Depends-on): Likewise.
8182         * modules/getaddrinfo (Depends-on): Likewise.
8183         * modules/getdelim (Depends-on): Likewise.
8184         * modules/getline (Depends-on): Likewise.
8185         * modules/getsubopt (Depends-on): Likewise.
8186         * modules/gettext (Depends-on): Likewise.
8187         * modules/group-member (Depends-on): Likewise.
8188         * modules/mbchar (Depends-on): Likewise.
8189         * modules/memmem (Depends-on): Likewise.
8190         * modules/mempcpy (Depends-on): Likewise.
8191         * modules/memrchr (Depends-on): Likewise.
8192         * modules/pagealign_alloc (Depends-on): Likewise.
8193         * modules/readutmp (Depends-on): Likewise.
8194         * modules/stpcpy (Depends-on): Likewise.
8195         * modules/stpncpy (Depends-on): Likewise.
8196         * modules/strchrnul (Depends-on): Likewise.
8197         * modules/strndup (Depends-on): Likewise.
8198         * modules/strsep (Depends-on): Likewise.
8199         * modules/strverscmp (Depends-on): Likewise.
8200         * modules/vasprintf (Depends-on): Likewise.
8201         * modules/wcwidth (Depends-on): Likewise.
8202         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
8203         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
8204         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
8205         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
8206         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
8207         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
8208         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
8209         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
8210         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
8211         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
8212         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8213         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
8214         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
8215         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
8216         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
8217         * m4/readutmp.m4 (gl_READUTMP): Likewise.
8218         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
8219         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
8220         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
8221         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
8222         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8223         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
8224         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
8225         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
8226         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
8227         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
8228         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
8229         so that lock.m4 can be used in gettext without extensions module.
8230
8231 2007-09-11  Bruno Haible  <bruno@clisp.org>
8232
8233         * m4/isc-posix.m4: Remove file.
8234         Suggested by Eric Blake.
8235
8236 2007-09-11  Eric Blake  <ebb9@byu.net>
8237
8238         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
8239
8240 2007-09-10  Bruno Haible  <bruno@clisp.org>
8241
8242         * posix-modules: Fix typo in error message.
8243         Reported by Matt <mkraai@beckman.com>.
8244
8245 2007-09-09  Bruno Haible  <bruno@clisp.org>
8246
8247         * doc/functions/getdelim.texi: Update list of platforms lacking the
8248         function.
8249         * doc/functions/getline.texi: Likewise.
8250
8251 2007-09-09  Jim Meyering  <jim@meyering.net>
8252
8253         * lib/hash.c (hash_initialize): Detect calloc failure.
8254         Reported by Bruno Haible.
8255
8256 2007-09-09  Bruno Haible  <bruno@clisp.org>
8257
8258         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
8259         malloc or realloc fails.
8260
8261 2007-09-09  Bruno Haible  <bruno@clisp.org>
8262
8263         * modules/getcwd (Depends-on): Add malloc-posix.
8264         * modules/glob (Depends-on): Likewise.
8265         * modules/putenv (Depends-on): Likewise.
8266         * modules/strdup (Depends-on): Likewise.
8267         * modules/getdelim (Depends-on): Add realloc-posix.
8268         * modules/read-file (Depends-on): Likewise.
8269
8270 2007-09-09  Bruno Haible  <bruno@clisp.org>
8271
8272         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
8273         (gl_FUNC_MALLOC_POSIX): Require it.
8274         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
8275         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
8276         * modules/realloc (Files): Add m4/malloc.m4.
8277         * modules/calloc (Files): Likewise.
8278
8279 2007-09-09  Bruno Haible  <bruno@clisp.org>
8280
8281         * modules/malloc-posix: New file.
8282         * modules/malloc (Depends-on): Add malloc-posix.
8283         * lib/malloc.c: Include errno.h.
8284         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
8285         and a POSIX-compatible malloc into a single function. Set ENOMEM
8286         when returning NULL.
8287         * m4/malloc.m4: New file.
8288         * doc/functions/malloc.texi: Mention the malloc-posix module.
8289         * lib/stdlib_.h (malloc): New declaration.
8290         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8291         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
8292         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
8293         and HAVE_MALLOC_POSIX.
8294
8295 2007-09-09  Bruno Haible  <bruno@clisp.org>
8296
8297         * modules/realloc-posix: New file.
8298         * modules/realloc (Depends-on): Add realloc-posix.
8299         * lib/realloc.c: Include errno.h.
8300         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
8301         and a POSIX-compatible realloc into a single function. Set ENOMEM
8302         when returning NULL.
8303         * m4/realloc.m4: New file.
8304         * doc/functions/realloc.texi: Mention the realloc-posix module.
8305         * lib/stdlib_.h (realloc): New declaration.
8306         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8307         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
8308         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
8309         and HAVE_REALLOC_POSIX.
8310
8311 2007-09-09  Bruno Haible  <bruno@clisp.org>
8312
8313         * modules/calloc-posix: New file.
8314         * modules/calloc (Depends-on): Add calloc-posix.
8315         * lib/calloc.c: Include errno.h.
8316         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
8317         and a POSIX-compatible calloc into a single function. Set ENOMEM
8318         when returning NULL.
8319         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
8320         * doc/functions/calloc.texi: Mention the calloc-posix module.
8321         * lib/stdlib_.h (calloc): New declaration.
8322         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
8323         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
8324         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
8325         and HAVE_CALLOC_POSIX.
8326
8327 2007-09-09  Bruno Haible  <bruno@clisp.org>
8328
8329         Allow for modules to show an arbitrary notice.
8330         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
8331         * gnulib-tool: New option --extract-notice.
8332         (func_usage): Document it.
8333         (sed_extract_prog): Update.
8334         (func_get_notice): New function.
8335         (func_modules_notice): New function.
8336         (func_import, func_create_testdir): Invoke it.
8337         Suggested by Jim Meyering.
8338
8339 2007-09-09  Bruno Haible  <bruno@clisp.org>
8340
8341         * gnulib-tool: New options --verbose, --quiet.
8342         (func_usage): Document them.
8343         (verbose): New variable.
8344         (func_execute_command): New function.
8345         (func_import): Don't show the module list and the file list if
8346         $verbose < 0.
8347         (func_create_testdir): Likewise. Use func_execute_command.
8348         (func_create_megatestdir): Use func_execute_command.
8349
8350 2007-09-08  Bruno Haible  <bruno@clisp.org>
8351
8352         * gnulib-tool (func_import): Prefer rsync over wget when available,
8353         for fetching the PO files.
8354
8355 2007-09-08  Bruno Haible  <bruno@clisp.org>
8356
8357         * posix-modules: New file. Portions copied from gnulib-tool.
8358         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
8359
8360 2007-09-08  Jim Meyering  <jim@meyering.net>
8361
8362         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
8363         * lib/fpending.h: Rename from __fpending.h.
8364         * lib/fpending.c: Rename from __fpending.c.
8365         Include "fpending.h", not "__fpending.h".
8366         * lib/__fpending.h, lib/__fpending.c: Remove files.
8367         * modules/fpending (Files): Reflect new file names.
8368         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
8369
8370 2007-09-08  Bruno Haible  <bruno@clisp.org>
8371
8372         * m4/inttypes-h.m4: Remove stub file.
8373
8374 2007-09-07  Simon Josefsson  <simon@josefsson.org>
8375
8376         * doc/headers/stdint.texi: Discuss #include_next issue.
8377
8378 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
8379
8380         * build-aux/bootstrap: Remove obsolete comment about wget --help.
8381
8382 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8383
8384         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
8385         in variable name.
8386
8387 2007-09-03  Jim Meyering  <jim@meyering.net>
8388
8389         New module: git-version-gen.
8390         * modules/git-version-gen: New file.
8391
8392         Import changes from coreutils for bootstrap script.
8393
8394         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
8395
8396         bootstrap: uses rsync to download the .po files
8397         * build-aux/bootstrap (po_download_command_format): New global.
8398         (download_po_files): Use rsync.
8399         (update_po_files): Don't remove .po files after download,
8400         so future rsync runs can take advantage of the copies.
8401
8402         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
8403
8404         Solve the unnecessary-.po-file-regeneration problem once and for all.
8405         * build-aux/bootstrap (download_po_files): New function, renamed from
8406         get_translations.  Now, downloads, but doesn't update LINGUAS.
8407         (update_po_files): New function.
8408
8409         bootstrap: Ignore more.
8410         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
8411         uniwidth to e.g., lib/.gitignore.
8412         (slurp): Handle the sys_stat_.h -> sys mapping, too.
8413
8414         * build-aux/bootstrap: New setting: vc_ignore.
8415         (insert_sorted_if_absent): Create $file if absent.
8416         Adapt to new, possibly empty, list: $vc_ignore.
8417
8418         bootstrap: generate more ignorable names
8419         * build-aux/bootstrap (slurp): When generating ignorable names,
8420         also map .sin to .sed, .gperf to .c, and .y to .c.
8421
8422 2007-09-03  Jim Meyering  <jim@meyering.net>
8423
8424         * build-aux/git-version-gen: New file, from coreutils.  For details, see
8425         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
8426
8427 2007-09-02  Bruno Haible  <bruno@clisp.org>
8428
8429         Fix mis-recognition of 'mcs' on QNX 6.
8430         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
8431         output contains the string "Mono".
8432         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
8433         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
8434
8435 2007-09-01  Bruno Haible  <bruno@clisp.org>
8436
8437         Fix collision between uniwidth/* and linebreak modules.
8438         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
8439         u32_width): Remove declarations.
8440         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
8441         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
8442         streq3, streq2, streq1, streq0): Remove functions.
8443         (STREQ): Remove macro.
8444         (is_cjk_encoding): Remove function.
8445         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
8446         (uc_width, u8_width, u16_width, u32_width): Remove functions.
8447         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
8448         * NEWS: Document the change.
8449
8450 2007-09-01  Bruno Haible  <bruno@clisp.org>
8451
8452         * lib/streq.h: Add double-inclusion guard.
8453
8454 2007-09-01  Karl Berry  <karl@gnu.org>
8455
8456         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
8457
8458 2007-08-28  Jim Meyering  <jim@meyering.net>
8459
8460         Rename mreadlink_with_size to areadlink_with_size.
8461         * NEWS: Document the change.
8462         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
8463         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
8464         * lib/mreadlink.h: Rename this to...
8465         * lib/areadlink.h: ...this.
8466         * modules/mreadlink-with-size: Rename this to...
8467         * modules/areadlink-with-size: ...this.
8468         * lib/canonicalize.c: Reflect the renaming.
8469         * modules/canonicalize: Likewise.
8470
8471 2007-08-26  Bruno Haible  <bruno@clisp.org>
8472
8473         * gnulib-tool (func_import): When deciding which files to remove,
8474         consider also dangling symbolic links.
8475         Reported by Eric Blake.
8476
8477 2007-08-26  Bruno Haible  <bruno@clisp.org>
8478
8479         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
8480
8481 2007-08-23  Simon Josefsson  <simon@josefsson.org>
8482
8483         * lib/readline.c: Don't include getline.h, the prototype is now
8484         found in stdio.h.
8485
8486 2007-08-23  Jim Meyering  <jim@meyering.net>
8487
8488         Getdelim touchup.
8489         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
8490         around the funlockfile call, since funlockfile never sets errno.
8491         Don't set errno upon failed realloc.
8492
8493 2007-08-22  Eric Blake  <ebb9@byu.net>
8494
8495         Getline touchups.
8496         * lib/getdelim.c (getdelim): Revert regression that required *n to
8497         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
8498         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
8499         getdelim, rather than whether implementation is missing.
8500         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
8501         * lib/stdio_.h (getline): Also declare if replacement is
8502         required.
8503         * doc/functions/getdelim.texi: New file.
8504         * doc/functions/getline.texi: Likewise.
8505         * doc/gnulib.texi (Function Substitutes): Add new files.
8506         Reported by Bruno Haible.
8507
8508 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
8509
8510         * users.txt: Add Guile.
8511
8512 2007-08-22  Eric Blake  <ebb9@byu.net>
8513
8514         * tests/test-getdelim.c (main): Use remove, not unlink.
8515         * tests/test-getline.c (main): Likewise.
8516
8517         Move getline and getdelim into stdio.h, per POSIX 200x.
8518         * modules/getline (Files): Remove getline.h.
8519         (Depends-on): Add stdio.
8520         (configure.ac): Add module indicator.
8521         * modules/getdelim (Files): Remove getdelim.h.
8522         (Depends-on): Add stdio.
8523         (configure.ac): Add module indicator.
8524         * modules/stdio (Makefile.am): Work with new indicators.
8525         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
8526         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
8527         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
8528         * lib/getdelim.h: Delete.
8529         * lib/getline.h: Delete.
8530         * lib/stdio_.h (getdelim, getline): Declare.
8531         * modules/getdelim-tests: New module.
8532         * modules/getline-tests: Likewise.
8533         * tests/test-getdelim.c: New file.
8534         * tests/test-getline.c: Likewise.
8535         * NEWS: Document the change.
8536         * lib/getline.c: Update choice of header.
8537         * lib/csharpcomp.c: Likewise.
8538         * lib/getpass.c: Likewise.
8539         * lib/javacomp.c: Likewise.
8540         * lib/javaversion.c: Likewise.
8541         * lib/yesno.c: Likewise.
8542         * lib/getdelim.c: Likewise.
8543         (getdelim): Set errno on failure, and avoid memory leak.
8544
8545 2007-08-19  Bruno Haible  <bruno@clisp.org>
8546
8547         * modules/closein (Depends-on): Add freadahead.
8548         * lib/closein.c: Include freadahead.h.
8549         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
8550         is zero.
8551
8552 2007-08-19  Bruno Haible  <bruno@clisp.org>
8553
8554         * modules/freadahead-tests: New file.
8555         * tests/test-freadahead.sh: New file.
8556         * tests/test-freadahead.c: New file.
8557
8558         * modules/freadahead: New file.
8559         * lib/freadahead.h: New file.
8560         * lib/freadahead.c: New file.
8561         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
8562         fbufmode, fpurge, freadable, fwritable.
8563
8564 2007-08-19  Eric Blake  <ebb9@byu.net>
8565
8566         Test yesno in combination with closein.
8567         * lib/yesno.c (yesno): Document use of stdin.
8568         * modules/yesno-tests (Files): New module.
8569         * tests/test-yesno.c (main): New file.
8570         * tests/test-yesno.sh: Likewise.
8571
8572 2007-08-19  Bruno Haible  <bruno@clisp.org>
8573
8574         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
8575         * lib/fseeko.c (rpl_fseeko): Likewise.
8576         * lib/fseterr.c (fseterr): Likewise.
8577
8578 2007-08-19  Bruno Haible  <bruno@clisp.org>
8579
8580         * tests/test-lseek.c (main): Disable a test for BeOS.
8581         * doc/functions/lseek.texi: Document the BeOS bug.
8582
8583 2007-08-19  Bruno Haible  <bruno@clisp.org>
8584             Eric Blake  <ebb9@byu.net>
8585
8586         * lib/lseek.c: Include <sys/stat.h>.
8587         (rpl_lseek): Add workaround code also for Unix platforms.
8588         Needed for BeOS.
8589         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
8590         * doc/functions/lseek.texi: Document BeOS definiency.
8591
8592 2007-08-18  Bruno Haible  <bruno@clisp.org>
8593
8594         * modules/fstrcmp-tests: New file.
8595         * tests/test-fstrcmp.c: New file.
8596
8597 2007-08-18  Bruno Haible  <bruno@clisp.org>
8598
8599         * modules/fstrcmp: New file, from GNU gettext with modifications.
8600         * lib/fstrcmp.h: New file, from GNU gettext.
8601         * lib/fstrcmp.c: New file, from GNU gettext.
8602         * MODULES.html.sh (String handling): Add fstrcmp.
8603
8604 2007-08-18  Bruno Haible  <bruno@clisp.org>
8605
8606         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
8607         'bool'.
8608         (diag, compareseq): Remove const from the ctxt argument.
8609         (USE_HEURISTIC): Undefine at the end.
8610
8611 2007-08-18  Jim Meyering  <jim@meyering.net>
8612
8613         New file: lib/idcache.h
8614         * NEWS: Mention the addition.
8615         * modules/idcache (Files): Add lib/idcache.h
8616         * lib/idcache.c: Include "idcache.h".
8617         Don't include <sys/types.h>.
8618         Add a FIXME comment.
8619         Move file-scoped "static" declarations to the top.
8620         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
8621
8622 2007-08-17  Bruno Haible  <bruno@clisp.org>
8623         and Paul Eggert  <eggert@cs.ucla.edu>
8624
8625         * MODULES.html.sh: Add diffseq.
8626         * modules/diffseq: New file.
8627         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
8628         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
8629
8630 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8631
8632         Import changes from coreutils for bootstrap script.
8633
8634         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
8635
8636         * build-aux/bootstrap (slurp): Work even in environments where
8637         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
8638         current code does not slurp files whose names start with ".", and
8639         this looks like it might be a troublesome area.
8640
8641         2007-07-11  Jim Meyering  <jim@meyering.net>
8642
8643         If there's a GPL vN copyright comment, require that N == 3.
8644
8645         2007-07-08  Jim Meyering  <jim@meyering.net>
8646
8647         Run the coreutils-specific code only if tests/Makefile.am.in exists.
8648         * build-aux/bootstrap (mam_template): Move definition out of loop.
8649
8650         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
8651
8652         * build-aux/bootstrap (symlink_to_dir): Rename function from
8653         symlink_to_gnulib.  Add a directory parameter.  Update all
8654         callers.
8655         (cp_mark_as_generated): Also check for -- and link to -- files in
8656         gl/.
8657
8658         2007-07-08  Jim Meyering  <jim@meyering.net>
8659
8660         Adapt to deeper hierarchy in gnulib.
8661         * build-aux/bootstrap (symlink_to_dir): If the destination
8662         directory doesn't exist, create it. This is required at least for
8663         "lib/uniwidth/cjk.h".
8664
8665         2007-05-15  Jim Meyering  <jim@meyering.net>
8666
8667         * build-aux/bootstrap: Now that generated Makefile.am files
8668         are no longer under version control, they must be created at
8669         bootstrap time.
8670
8671 2007-08-14  Ben Pfaff  <blp@gnu.org>
8672
8673         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
8674
8675 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
8676
8677         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
8678         given the changes below.
8679         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
8680         even on hosts that have padding bits beyond the supported 64.
8681
8682 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
8683
8684         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
8685         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
8686         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
8687         depends on it.
8688         (xstrtol_error): Remove.
8689         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
8690         but with a different signature.
8691         (ATTRIBUTE_NORETURN, __attribute__): New macros.
8692         * lib/xstrtol-error.c: Include exitfail.h.
8693         (xstrtol_fatal): New function, with a different signature from the
8694         old xstrtol_error, so that the caller need not worry about passing
8695         in an exit status, or about storage management of the option argument.
8696         (xstrtol_error): Now a static function.  Redo signature to
8697         implement xstrtol_fatal.  Output the correct number of hyphens in
8698         front of the option so that the caller need not worry about
8699         storage management.
8700         (N_): New macro.
8701         (_): Remove; not used now.
8702         * modules/xstrtol: Depend on getopt.
8703         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
8704         of old STRTOL_FATAL_ERROR macro.
8705         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
8706         of test program.
8707         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
8708         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
8709
8710 2007-08-08  Eric Blake  <ebb9@byu.net>
8711
8712         * lib/xstrtol-error.c: Add missing include.
8713
8714         Move xstrtol messages into gnulib domain, when --pobase is used.
8715         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
8716         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
8717         * modules/xstrtol (Files): Distribute new file.
8718         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
8719         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
8720         * tests/test-xstrtol.c: ...into new file.
8721         * tests/test-xstrtoul.c: Also test xstrtoul.
8722         * tests/test-xstrtoimax.c: Also test xstrtoimax.
8723         * tests/test-xstrtoumax.c: Also test xstrtoumax.
8724         * tests/test-xstrtol.sh: Drive the tests.
8725         * tests/test-xstrtoimax.sh: Likewise.
8726         * tests/test-xstrtoumax.sh: Likewise.
8727         * modules/xstrtol-tests: New module.
8728         * modules/xstrtoimax-tests: Likewise.
8729         * modules/xstrtoumax-tests: Likewise.
8730
8731 2007-08-08  Jim Meyering  <jim@meyering.net>
8732
8733         New function: mfile_name_concat.
8734         * lib/filenamecat.c (mfile_name_concat): New function, just like
8735         file_name_concat, but return NULL upon failure rather than exiting
8736         with a diagnostic.
8737         * lib/filenamecat.h: Declare it.
8738
8739 2007-08-07  Bruno Haible  <bruno@clisp.org>
8740
8741         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
8742         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
8743         warning from gcc.
8744         Reported by Eric Blake.
8745
8746 2007-08-07  Simon Josefsson  <simon@josefsson.org>
8747
8748         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
8749         * modules/crypto/arcfour (License): Likewise.
8750         * modules/crypto/des-tests (License): Likewise.
8751         * modules/crypto/gc-arctwo-tests (License): Likewise.
8752         * modules/crypto/gc-des-tests (License): Likewise.
8753         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
8754         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
8755         * modules/crypto/gc-md2-tests (License): Likewise.
8756         * modules/crypto/gc-md4-tests (License): Likewise.
8757         * modules/crypto/gc-md5-tests (License): Likewise.
8758         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
8759         * modules/crypto/gc-rijndael-tests (License): Likewise.
8760         * modules/crypto/gc-sha1-tests (License): Likewise.
8761         * modules/crypto/gc-tests (License): Likewise.
8762         * modules/crypto/hmac-md5 (License): Likewise.
8763         * modules/crypto/hmac-sha1 (License): Likewise.
8764         * modules/crypto/md2-tests (License): Likewise.
8765         * modules/crypto/md4-tests (License): Likewise.
8766         * modules/crypto/md5 (License): Likewise.
8767         * modules/crypto/rijndael (License): Likewise.
8768         * modules/crypto/sha1 (License): Likewise.
8769         * modules/memxor (License): Likewise.
8770
8771 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
8772         and Bruno Haible  <bruno@clisp.org>
8773
8774         * NEWS: Describe interface changes to human, xstrtol.
8775         * lib/human.h: Include <xstrtol.h>.
8776         (human_options): Return enum strtol_error, not int.  Remove
8777         bool arg; take int * instead.
8778         * lib/human.c: Don't include "gettext.h".
8779         (_): Remove; no longer used.
8780         Don't include <xstrtol.h>, since human.h does it.
8781         (human_options): Adjust to abovementioned interface changes.
8782         Do not report error to stderr; that's now the caller's
8783         responsibility.
8784         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
8785         interface change.
8786         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
8787         Str, Argument_type_string.  All uses changed.  Put " argument"
8788         in diagnostics to make them clearer.  Change wording of suffix
8789         message for clarity.
8790         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
8791         Argument_type_string.
8792         (STRTOL_FATAL_WARN): Remove; no longer used.
8793         * modules/human (Depends-on): Remove gettext-h.
8794
8795 2007-08-06  Simon Josefsson  <simon@josefsson.org>
8796
8797         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
8798
8799 2007-07-31  Bruno Haible  <bruno@clisp.org>
8800
8801         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
8802         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
8803         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
8804
8805 2007-07-31  Bruno Haible  <bruno@clisp.org>
8806
8807         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
8808         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
8809
8810 2007-07-30  Bruno Haible  <bruno@clisp.org>
8811
8812         * modules/base64 (License): Use the synonymous term "LGPLv2+".
8813         * modules/c-ctype (License): Likewise.
8814         * modules/c-strcase (License): Likewise.
8815         * modules/check-version (License): Likewise.
8816         * modules/iconv (License): Likewise.
8817         * modules/iconv_open (License): Likewise.
8818         * modules/read-file (License): Likewise.
8819         * modules/striconv (License): Likewise.
8820         * modules/strverscmp (License): Likewise.
8821         * modules/vasprintf (License): Likewise.
8822         * modules/crypto/des (License): Likewise.
8823         * modules/crypto/gc (License): Likewise.
8824         * modules/crypto/gc-arcfour (License): Likewise.
8825         * modules/crypto/gc-arctwo (License): Likewise.
8826         * modules/crypto/gc-des (License): Likewise.
8827         * modules/crypto/gc-hmac-md5 (License): Likewise.
8828         * modules/crypto/gc-hmac-sha1 (License): Likewise.
8829         * modules/crypto/gc-md2 (License): Likewise.
8830         * modules/crypto/gc-md4 (License): Likewise.
8831         * modules/crypto/gc-md5 (License): Likewise.
8832         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
8833         * modules/crypto/gc-random (License): Likewise.
8834         * modules/crypto/gc-rijndael (License): Likewise.
8835         * modules/crypto/gc-sha1 (License): Likewise.
8836         * modules/crypto/md2 (License): Likewise.
8837         * modules/crypto/md4 (License): Likewise.
8838
8839 2007-07-30  Jim Meyering  <jim@meyering.net>
8840
8841         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
8842         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
8843         it has valid stat data.  This bug would cause du not to count the
8844         sizes of inaccessible directories.
8845         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
8846         in <http://bugzilla.redhat.com/250077>.
8847
8848 2007-07-25  Peter O'Gorman  <peter@pogma.com>
8849             Bruno Haible  <bruno@clisp.org>
8850
8851         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
8852         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
8853         #include_next, gives a diagnostic about it, but reports no error in
8854         the exit code.
8855         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
8856
8857 2007-07-24  Ben Pfaff  <blp@gnu.org>
8858
8859         Improve name: "count-one-bits" is better than "popcount".
8860         * MODULES.html.sh: Update name.
8861         * lib/popcount.h: Renamed lib/count-one-bits.h.
8862         (popcount): Renamed count_one_bits.
8863         (popcountl): Renamed count_one_bits_l.
8864         (popcountll): Renamed count_one_bits_ll.
8865         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
8866         * modules/popcount: Renamed module/count-one-bits.
8867         * modules/popcount-tests: Renamed module/count-one-bits-tests.
8868         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
8869
8870 2007-07-23  Ben Pfaff  <blp@gnu.org>
8871
8872         * lib/popcount.h (popcount32): Reduce size of constants, to allow
8873         better code generation, and add U to large constants to avoid
8874         warnings, in non-GCC case.
8875         Suggested by Bruno Haible.
8876
8877 2007-07-23  Ben Pfaff  <blp@gnu.org>
8878
8879         * lib/popcount.h: Use verify_true instead of if...abort.
8880         * modules/popcount: Depend on verify module.
8881         Suggested by Jim Meyering.
8882
8883 2007-07-23  Bruno Haible  <bruno@clisp.org>
8884
8885         * gnulib-tool (func_import): Create a .cvsignore file also when the
8886         directory is not yet in CVS but the toplevel directory is. When
8887         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
8888         Reported by Karl Berry.
8889
8890 2007-07-22  Ben Pfaff  <blp@gnu.org>
8891
8892         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
8893         case.
8894         Suggested by Eric Blake.
8895
8896 2007-07-22  Ben Pfaff  <blp@gnu.org>
8897
8898         New module: popcount.
8899         * MODULES.html.sh: Add popcount.
8900         * modules/popcount: New file.
8901         * modules/popcount-tests: New file.
8902         * tests/test-popcount.c: New file.
8903         * lib/popcount.h: New file.
8904         * m4/popcount.m4: New file.
8905
8906 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
8907
8908         * build-aux/announce-gen: Update to GPLv3.
8909
8910         * build-aux/config.guess: Update from config.
8911
8912 2007-07-21  Bruno Haible  <bruno@clisp.org>
8913
8914         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
8915         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
8916
8917 2007-07-20  Jim Meyering  <jim@meyering.net>
8918
8919         * check-module: Diagnose a self-dependency.
8920
8921 2007-07-19  Bruno Haible  <bruno@clisp.org>
8922
8923         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
8924         empty.
8925         Reported by Eric Blake.
8926
8927 2007-07-18  Bruno Haible  <bruno@clisp.org>
8928
8929         * gnulib-tool: New options --po-base, --po-domain.
8930         (func_usage): Document them.
8931         (pobase, po_domain): New variables.
8932         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
8933         DEFAULT_TEXT_DOMAIN.
8934         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
8935         (func_import): Consider pobase and po_domain. Create a po/ directory.
8936         (func_create_testdir): Set pobase and po_domain to empty.
8937         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
8938         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
8939
8940 2007-07-18  Bruno Haible  <bruno@clisp.org>
8941
8942         * gnulib-tool (func_get_automake_snippet): Synthesize also an
8943         EXTRA_DIST augmentation for files in build-aux/.
8944
8945 2007-07-16  Bruno Haible  <bruno@clisp.org>
8946
8947         * modules/lseek (License): Use the synonymous term "LGPLv2+".
8948         * modules/getdelim (License): Likewise.
8949
8950 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8951
8952         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
8953         * modules/d-type (License): Likewise.
8954         * modules/extensions (License): Likewise.
8955         * modules/fnmatch (License): Likewise.
8956         * modules/fseeko (License): Likewise.
8957         * modules/getaddrinfo (License): Likewise.
8958         * modules/getline (License): Likewise.
8959         * modules/getlogin_r (License): Likewise.
8960         * modules/getpass (License): Likewise.
8961         * modules/gettimeofday (License): Likewise.
8962         * modules/glob (License): Likewise.
8963         * modules/inet_ntop (License): Likewise.
8964         * modules/malloc (License): Likewise.
8965         * modules/malloca (License): Likewise.
8966         * modules/memmem (License): Likewise.
8967         * modules/mempcpy (License): Likewise.
8968         * modules/memset (License): Likewise.
8969         * modules/minmax (License): Likewise.
8970         * modules/mktime (License): Likewise.
8971         * modules/netinet_in (License): Likewise.
8972         * modules/pathmax (License): Likewise.
8973         * modules/poll (License): Likewise.
8974         * modules/regex (License): Likewise.
8975         * modules/snprintf (License): Likewise.
8976         * modules/stdbool (License): Likewise.
8977         * modules/stdint (License): Likewise.
8978         * modules/stdio (License): Likewise.
8979         * modules/strcase (License): Likewise.
8980         * modules/strcasestr (License): Likewise.
8981         * modules/strdup (License): Likewise.
8982         * modules/string (License): Likewise.
8983         * modules/strndup (License): Likewise.
8984         * modules/strnlen (License): Likewise.
8985         * modules/strpbrk (License): Likewise.
8986         * modules/strptime (License): Likewise.
8987         * modules/strsep (License): Likewise.
8988         * modules/sys_select (License): Likewise.
8989         * modules/sys_socket (License): Likewise.
8990         * modules/sys_stat (License): Likewise.
8991         * modules/sys_time (License): Likewise.
8992         * modules/time (License): Likewise.
8993         * modules/time_r (License): Likewise.
8994         * modules/timegm (License): Likewise.
8995         * modules/unistd (License): Likewise.
8996         * modules/vsnprintf (License): Likewise.
8997         * modules/wctype (License): Likewise.
8998
8999 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9000
9001         * modules/argz (License): LGPLv2+.
9002
9003 2007-07-15  Karl Berry  <karl@gnu.org>
9004
9005         * doc/gnulib.texi: revise node structure per new fdl.texi.
9006
9007 2007-07-14  Bruno Haible  <bruno@clisp.org>
9008
9009         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
9010         the output file.
9011         * lib/uniname/uninames.h: Regenerated.
9012
9013 2007-07-14  Karl Berry  <karl@gnu.org>
9014
9015         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
9016         omitting sectioning and index commands.
9017
9018 2007-07-13  Bruno Haible  <bruno@clisp.org>
9019
9020         New gnulib-tool option --more-symlinks.
9021         * gnulib-tool (func_usage): Document --more-symlinks.
9022         (do_copyrights): New variable.
9023         Recognize option --more-symlinks.
9024         (func_import): Don't add a copyright notice transform to
9025         sed_transform_lib_file if do_copyrights is empty.
9026
9027 2007-07-13  Bruno Haible  <bruno@clisp.org>
9028
9029         * lib/vasnprintf.c (decimal_point_char): Define also if
9030         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
9031         && !NEED_PRINTF_DIRECTIVE_A.
9032         Reported by Clemens Koller <clemens.koller@anagramm.de> via
9033         Gary V. Vaughan <gary@gnu.org>.
9034
9035 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
9036
9037         * lib/inttypes_.h: Undo previous change, since it was fixed
9038         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
9039
9040 2007-07-13  Bruno Haible  <bruno@clisp.org>
9041
9042         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
9043         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
9044
9045 2007-07-13  Jim Meyering  <jim@meyering.net>
9046
9047         df: Don't fail for Tru64's "file-on-file mount".
9048         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
9049         so we fall through and use statfs instead.  Details here:
9050         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
9051         Reported by Albert Chin.
9052
9053 2007-07-13  Bruno Haible  <bruno@clisp.org>
9054
9055         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
9056         * modules/configmake (License): Likewise.
9057         * modules/gettext (License): Likewise.
9058         * modules/gettext-h (License): Likewise.
9059         * modules/include_next (License): Likewise.
9060         * modules/link-warning (License): Likewise.
9061         * modules/localcharset (License): Likewise.
9062         * modules/localename (License): Likewise.
9063         * modules/lock (License): Likewise.
9064         * modules/relocatable-lib-lgpl (License): Likewise.
9065         * modules/size_max (License): Likewise.
9066         * modules/vasnprintf (License): Likewise.
9067         * modules/wchar (License): Likewise.
9068         * modules/xsize (License): Likewise.
9069
9070 2007-07-13  Bruno Haible  <bruno@clisp.org>
9071
9072         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
9073         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
9074
9075 2007-07-12  Bruno Haible  <bruno@clisp.org>
9076
9077         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
9078         in the modules files.
9079
9080 2007-07-11  Karl Berry  <karl@gnu.org>
9081
9082         * MODULES.html.sh (func_module): use
9083          sed -e '\|^'"${includefile}"'$|d'
9084          instead of /.../d, to avoid errors on $includefile's containing /.
9085
9086 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
9087
9088         * gnulib-tool (func_import): Avoid duplication of --avoid
9089         statements
9090         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
9091         names to `_' in variable names.
9092
9093 2007-07-10  Eric Blake  <ebb9@byu.net>
9094
9095         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
9096         * NEWS: Document this change.
9097
9098 2007-07-08  Bruno Haible  <bruno@clisp.org>
9099
9100         Update to Unicode 5.0.
9101         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
9102         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
9103         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
9104         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
9105         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
9106         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
9107         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
9108         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
9109         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
9110         U+10A3F, U+1D242..U+1D244.
9111         (nonspacing_table_ind): Update.
9112         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
9113         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
9114
9115 2007-07-08  Bruno Haible  <bruno@clisp.org>
9116
9117         Update to Unicode 5.0.
9118         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
9119         code transform. Extend the name index field of unicode_name_to_code and
9120         unicode_code_to_name from 16 to 24 bits.
9121         * lib/uniname/uniname.c (unicode_character_name,
9122         unicode_name_character): Add the range 0x12xxx to the code transform.
9123         * lib/uniname/uninames.h: Regenerated.
9124         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
9125
9126 2007-07-07  Bruno Haible  <bruno@clisp.org>
9127
9128         * modules/wcwidth-tests: New file.
9129         * tests/test-wcwidth.c: New file.
9130
9131         Work around MacOS X wcwidth() bug.
9132         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
9133         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
9134         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
9135         original wcwidth in non-UTF-8 locales.
9136         * modules/wcwidth (Depends-on): Add localcharset, streq,
9137         uniwidth/width.
9138         * doc/functions/wcwidth.texi: Update.
9139
9140 2007-07-07  Bruno Haible  <bruno@clisp.org>
9141
9142         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
9143         (wcwidth): New declaration.
9144         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
9145         macros.
9146         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
9147         here. Prepare for creating <wchar.h> unconditionally.
9148         * modules/wchar (Depends-on): Add link-warning.
9149         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
9150         REPLACE_WCWIDTH, and GL_LINK_WARNING.
9151         * lib/wcwidth.h: Remove file.
9152         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
9153         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
9154         * modules/wcwidth (Files): Remove lib/wcwidth.h.
9155         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
9156         (Include): Replace wcwidth.h with <wchar.h>.
9157         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
9158         * lib/mbchar.h: Don't include wcwidth.h.
9159         * lib/mbswidth.c: Likewise.
9160         * NEWS: Mention the change.
9161
9162 2007-07-07  Bruno Haible  <bruno@clisp.org>
9163
9164         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
9165         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
9166         definition with an external declaration.
9167         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
9168         defined as a function. Remove AC_C_INLINE requirement.
9169         * modules/wcwidth (Files): Add lib/wcwidth.c.
9170         (Makefile.am): Remove redundant statement.
9171
9172 2007-07-07  Bruno Haible  <bruno@clisp.org>
9173
9174         * MODULES.html.sh (Unicode string functions): Add the new modules.
9175
9176         * tests/uniwidth/test-u32-strwidth.c: New file.
9177         * modules/uniwidth/u32-strwidth-tests: New file.
9178
9179         * lib/uniwidth/u32-strwidth.c: New file.
9180         * modules/uniwidth/u32-strwidth: New file.
9181
9182         * tests/uniwidth/test-u16-strwidth.c: New file.
9183         * modules/uniwidth/u16-strwidth-tests: New file.
9184
9185         * lib/uniwidth/u16-strwidth.c: New file.
9186         * modules/uniwidth/u16-strwidth: New file.
9187
9188         * tests/uniwidth/test-u8-strwidth.c: New file.
9189         * modules/uniwidth/u8-strwidth-tests: New file.
9190
9191         * lib/uniwidth/u8-strwidth.c: New file.
9192         * modules/uniwidth/u8-strwidth: New file.
9193
9194         * tests/uniwidth/test-u32-width.c: New file.
9195         * modules/uniwidth/u32-width-tests: New file.
9196
9197         * lib/uniwidth/u32-width.c: New file.
9198         * modules/uniwidth/u32-width: New file.
9199
9200         * tests/uniwidth/test-u16-width.c: New file.
9201         * modules/uniwidth/u16-width-tests: New file.
9202
9203         * lib/uniwidth/u16-width.c: New file.
9204         * modules/uniwidth/u16-width: New file.
9205
9206         * tests/uniwidth/test-u8-width.c: New file.
9207         * modules/uniwidth/u8-width-tests: New file.
9208
9209         * lib/uniwidth/u8-width.c: New file.
9210         * modules/uniwidth/u8-width: New file.
9211
9212         * tests/uniwidth/test-uc_width.c: New file.
9213         * modules/uniwidth/width-tests: New file.
9214
9215         * lib/uniwidth/width.c: New file, from GNU libiconv.
9216         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
9217         * modules/uniwidth/width: New file.
9218
9219         * lib/uniwidth.h: New file, from GNU libiconv.
9220         * modules/uniwidth/base: New file.
9221
9222 2007-07-07  Bruno Haible  <bruno@clisp.org>
9223
9224         * lib/uniname.h: New file, from GNU gettext.
9225         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
9226         * lib/uniname/uninames.h: New file, from GNU gettext.
9227         * lib/uniname/uniname.c: New file, from GNU gettext.
9228         * tests/uniname/test-uninames.sh: New file.
9229         * tests/uniname/test-uninames.c: New file, from GNU gettext.
9230         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
9231         * modules/uniname/base: New file.
9232         * modules/uniname/uniname: New file.
9233         * modules/uniname/uniname-tests: New file.
9234         * MODULES.html.sh (Unicode string functions): Add the new modules.
9235
9236 2007-07-06  Bruno Haible  <bruno@clisp.org>
9237
9238         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
9239
9240 2007-07-06  Bruno Haible  <bruno@clisp.org>
9241
9242         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
9243         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
9244         includes <cygwin/sys_time.h> which includes <sys/select.h> which
9245         include <sys/time.h>.
9246         Reported by Eric Blake.
9247
9248 2007-07-06  Eric Blake  <ebb9@byu.net>
9249
9250         Fix testing canonicalize on cygwin.
9251         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
9252         Revert patch from 2007-06-19.
9253         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
9254         canonicalize module is also in use.
9255         * tests/test-canonicalize.c: New file.
9256         * tests/test-canonicalize.sh: Likewise.
9257         * modules/canonicalize-tests: Likewise.
9258
9259 2007-07-06  Jim Meyering  <jim@meyering.net>
9260
9261         * lib/getugroups.c (getugroups): Detect getgrent failure.
9262         Adjust comment to reflect reality: this function may return -1.
9263
9264 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
9265
9266         * build-aux/bootstrap (TP_URL,get_translations): Update to use
9267         the new TP address.
9268         (usage): Fix typo
9269         (gnulib_mk): New variable.
9270
9271 2007-07-05  Jim Meyering  <jim@meyering.net>
9272
9273         Don't let endgrent clobber errno, no matter how improbable.
9274         * lib/getugroups.c (getugroups): Save and restore errno around
9275         endgrent call.
9276
9277         Close the group DB even when failing with 2^31 or more members.
9278         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
9279
9280 2007-07-04  Jim Meyering  <jim@meyering.net>
9281
9282         * lib/getugroups.h: New file.
9283         * lib/getugroups.c: Include "getugroups.h".
9284         Remove uses of "register" keyword.
9285         Move local variable, "cp", down into scope where used.
9286         Give "username" parameter the "const" attribute.
9287         * modules/getugroups (Files): Add lib/getugroups.h
9288
9289 2007-07-04  Karl Berry  <karl@gnu.org>
9290
9291         * MODULES.html.sh (func_all_modules): Complete rename of
9292         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
9293
9294 2007-07-02  Bruno Haible  <bruno@clisp.org>
9295
9296         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
9297         mode, when inttypes.h comes from gnulib.
9298         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
9299
9300 2007-07-02  Simon Josefsson  <simon@josefsson.org>
9301
9302         * NEWS: Mention lgpl module name change.
9303
9304         * modules/lgpl-2.1: Renamed from lgpl.
9305
9306         * NEWS: Mention gpl module name change.
9307
9308         * modules/gpl-3.0: New file, based on gpl-2.0.
9309
9310         * modules/gpl-2.0: Renamed from gpl.
9311
9312         * modules/gpl: Fix filename, doc/gpl.texi is now found at
9313         doc/gpl-2.0.texi.
9314
9315 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
9316
9317         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
9318         #define __STDC_LIMIT_MACROS temporarily while including
9319         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
9320         Problem reported by Joel E. Denny in
9321         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
9322
9323 2007-07-01  Bruno Haible  <bruno@clisp.org>
9324
9325         * lib/unistdio.h: New file.
9326         * lib/unistdio/u-asnprintf.h: New file.
9327         * lib/unistdio/u-asprintf.h: New file.
9328         * lib/unistdio/u-printf-args.c: New file.
9329         * lib/unistdio/u-printf-args.h: New file.
9330         * lib/unistdio/u-printf-parse.h: New file.
9331         * lib/unistdio/u-snprintf.h: New file.
9332         * lib/unistdio/u-sprintf.h: New file.
9333         * lib/unistdio/u-vasprintf.h: New file.
9334         * lib/unistdio/u-vsnprintf.h: New file.
9335         * lib/unistdio/u-vsprintf.h: New file.
9336         * lib/unistdio/ulc-asnprintf.c: New file.
9337         * lib/unistdio/ulc-asprintf.c: New file.
9338         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
9339         * lib/unistdio/ulc-printf-parse.c: New file.
9340         * lib/unistdio/ulc-snprintf.c: New file.
9341         * lib/unistdio/ulc-sprintf.c: New file.
9342         * lib/unistdio/ulc-vasnprintf.c: New file.
9343         * lib/unistdio/ulc-vasprintf.c: New file.
9344         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
9345         * lib/unistdio/ulc-vsnprintf.c: New file.
9346         * lib/unistdio/ulc-vsprintf.c: New file.
9347         * lib/unistdio/u8-asnprintf.c: New file.
9348         * lib/unistdio/u8-asprintf.c: New file.
9349         * lib/unistdio/u8-printf-parse.c: New file.
9350         * lib/unistdio/u8-snprintf.c: New file.
9351         * lib/unistdio/u8-sprintf.c: New file.
9352         * lib/unistdio/u8-vasnprintf.c: New file.
9353         * lib/unistdio/u8-vasprintf.c: New file.
9354         * lib/unistdio/u8-vsnprintf.c: New file.
9355         * lib/unistdio/u8-vsprintf.c: New file.
9356         * lib/unistdio/u8-u8-asnprintf.c: New file.
9357         * lib/unistdio/u8-u8-asprintf.c: New file.
9358         * lib/unistdio/u8-u8-snprintf.c: New file.
9359         * lib/unistdio/u8-u8-sprintf.c: New file.
9360         * lib/unistdio/u8-u8-vasnprintf.c: New file.
9361         * lib/unistdio/u8-u8-vasprintf.c: New file.
9362         * lib/unistdio/u8-u8-vsnprintf.c: New file.
9363         * lib/unistdio/u8-u8-vsprintf.c: New file.
9364         * lib/unistdio/u16-asnprintf.c: New file.
9365         * lib/unistdio/u16-asprintf.c: New file.
9366         * lib/unistdio/u16-printf-parse.c: New file.
9367         * lib/unistdio/u16-snprintf.c: New file.
9368         * lib/unistdio/u16-sprintf.c: New file.
9369         * lib/unistdio/u16-vasnprintf.c: New file.
9370         * lib/unistdio/u16-vasprintf.c: New file.
9371         * lib/unistdio/u16-vsnprintf.c: New file.
9372         * lib/unistdio/u16-vsprintf.c: New file.
9373         * lib/unistdio/u16-u16-asnprintf.c: New file.
9374         * lib/unistdio/u16-u16-asprintf.c: New file.
9375         * lib/unistdio/u16-u16-snprintf.c: New file.
9376         * lib/unistdio/u16-u16-sprintf.c: New file.
9377         * lib/unistdio/u16-u16-vasnprintf.c: New file.
9378         * lib/unistdio/u16-u16-vasprintf.c: New file.
9379         * lib/unistdio/u16-u16-vsnprintf.c: New file.
9380         * lib/unistdio/u16-u16-vsprintf.c: New file.
9381         * lib/unistdio/u32-asnprintf.c: New file.
9382         * lib/unistdio/u32-asprintf.c: New file.
9383         * lib/unistdio/u32-printf-parse.c: New file.
9384         * lib/unistdio/u32-snprintf.c: New file.
9385         * lib/unistdio/u32-sprintf.c: New file.
9386         * lib/unistdio/u32-vasnprintf.c: New file.
9387         * lib/unistdio/u32-vasprintf.c: New file.
9388         * lib/unistdio/u32-vsnprintf.c: New file.
9389         * lib/unistdio/u32-vsprintf.c: New file.
9390         * lib/unistdio/u32-u32-asnprintf.c: New file.
9391         * lib/unistdio/u32-u32-asprintf.c: New file.
9392         * lib/unistdio/u32-u32-snprintf.c: New file.
9393         * lib/unistdio/u32-u32-sprintf.c: New file.
9394         * lib/unistdio/u32-u32-vasnprintf.c: New file.
9395         * lib/unistdio/u32-u32-vasprintf.c: New file.
9396         * lib/unistdio/u32-u32-vsnprintf.c: New file.
9397         * lib/unistdio/u32-u32-vsprintf.c: New file.
9398         * tests/unistdio/test-ulc-asnprintf1.c: New file.
9399         * tests/unistdio/test-ulc-asnprintf1.h: New file.
9400         * tests/unistdio/test-ulc-printf1.h: New file.
9401         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
9402         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
9403         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
9404         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
9405         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
9406         * tests/unistdio/test-ulc-vasprintf1.c: New file.
9407         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
9408         * tests/unistdio/test-ulc-vsprintf1.c: New file.
9409         * tests/unistdio/test-u8-asnprintf1.c: New file.
9410         * tests/unistdio/test-u8-asnprintf1.h: New file.
9411         * tests/unistdio/test-u8-printf1.h: New file.
9412         * tests/unistdio/test-u8-vasnprintf1.c: New file.
9413         * tests/unistdio/test-u8-vasnprintf2.c: New file.
9414         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
9415         * tests/unistdio/test-u8-vasnprintf3.c: New file.
9416         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
9417         * tests/unistdio/test-u8-vasprintf1.c: New file.
9418         * tests/unistdio/test-u8-vsnprintf1.c: New file.
9419         * tests/unistdio/test-u8-vsprintf1.c: New file.
9420         * tests/unistdio/test-u16-asnprintf1.c: New file.
9421         * tests/unistdio/test-u16-asnprintf1.h: New file.
9422         * tests/unistdio/test-u16-printf1.h: New file.
9423         * tests/unistdio/test-u16-vasnprintf1.c: New file.
9424         * tests/unistdio/test-u16-vasnprintf2.c: New file.
9425         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
9426         * tests/unistdio/test-u16-vasnprintf3.c: New file.
9427         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
9428         * tests/unistdio/test-u16-vasprintf1.c: New file.
9429         * tests/unistdio/test-u16-vsnprintf1.c: New file.
9430         * tests/unistdio/test-u16-vsprintf1.c: New file.
9431         * tests/unistdio/test-u32-asnprintf1.c: New file.
9432         * tests/unistdio/test-u32-asnprintf1.h: New file.
9433         * tests/unistdio/test-u32-printf1.h: New file.
9434         * tests/unistdio/test-u32-vasnprintf1.c: New file.
9435         * tests/unistdio/test-u32-vasnprintf2.c: New file.
9436         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
9437         * tests/unistdio/test-u32-vasnprintf3.c: New file.
9438         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
9439         * tests/unistdio/test-u32-vasprintf1.c: New file.
9440         * tests/unistdio/test-u32-vsnprintf1.c: New file.
9441         * tests/unistdio/test-u32-vsprintf1.c: New file.
9442         * modules/unistdio/base: New file.
9443         * modules/unistdio/u-printf-args: New file.
9444         * modules/unistdio/ulc-asnprintf: New file.
9445         * modules/unistdio/ulc-asprintf: New file.
9446         * modules/unistdio/ulc-fprintf: New file.
9447         * modules/unistdio/ulc-printf-parse: New file.
9448         * modules/unistdio/ulc-snprintf: New file.
9449         * modules/unistdio/ulc-sprintf: New file.
9450         * modules/unistdio/ulc-vasnprintf: New file.
9451         * modules/unistdio/ulc-vasprintf: New file.
9452         * modules/unistdio/ulc-vfprintf: New file.
9453         * modules/unistdio/ulc-vsnprintf: New file.
9454         * modules/unistdio/ulc-vsprintf: New file.
9455         * modules/unistdio/u8-asnprintf: New file.
9456         * modules/unistdio/u8-asprintf: New file.
9457         * modules/unistdio/u8-printf-parse: New file.
9458         * modules/unistdio/u8-snprintf: New file.
9459         * modules/unistdio/u8-sprintf: New file.
9460         * modules/unistdio/u8-vasnprintf: New file.
9461         * modules/unistdio/u8-vasprintf: New file.
9462         * modules/unistdio/u8-vsnprintf: New file.
9463         * modules/unistdio/u8-vsprintf: New file.
9464         * modules/unistdio/u8-u8-asnprintf: New file.
9465         * modules/unistdio/u8-u8-asprintf: New file.
9466         * modules/unistdio/u8-u8-snprintf: New file.
9467         * modules/unistdio/u8-u8-sprintf: New file.
9468         * modules/unistdio/u8-u8-vasnprintf: New file.
9469         * modules/unistdio/u8-u8-vasprintf: New file.
9470         * modules/unistdio/u8-u8-vsnprintf: New file.
9471         * modules/unistdio/u8-u8-vsprintf: New file.
9472         * modules/unistdio/u16-asnprintf: New file.
9473         * modules/unistdio/u16-asprintf: New file.
9474         * modules/unistdio/u16-printf-parse: New file.
9475         * modules/unistdio/u16-snprintf: New file.
9476         * modules/unistdio/u16-sprintf: New file.
9477         * modules/unistdio/u16-vasnprintf: New file.
9478         * modules/unistdio/u16-vasprintf: New file.
9479         * modules/unistdio/u16-vsnprintf: New file.
9480         * modules/unistdio/u16-vsprintf: New file.
9481         * modules/unistdio/u16-u16-asnprintf: New file.
9482         * modules/unistdio/u16-u16-asprintf: New file.
9483         * modules/unistdio/u16-u16-snprintf: New file.
9484         * modules/unistdio/u16-u16-sprintf: New file.
9485         * modules/unistdio/u16-u16-vasnprintf: New file.
9486         * modules/unistdio/u16-u16-vasprintf: New file.
9487         * modules/unistdio/u16-u16-vsnprintf: New file.
9488         * modules/unistdio/u16-u16-vsprintf: New file.
9489         * modules/unistdio/u32-asnprintf: New file.
9490         * modules/unistdio/u32-asprintf: New file.
9491         * modules/unistdio/u32-printf-parse: New file.
9492         * modules/unistdio/u32-snprintf: New file.
9493         * modules/unistdio/u32-sprintf: New file.
9494         * modules/unistdio/u32-vasnprintf: New file.
9495         * modules/unistdio/u32-vasprintf: New file.
9496         * modules/unistdio/u32-vsnprintf: New file.
9497         * modules/unistdio/u32-vsprintf: New file.
9498         * modules/unistdio/u32-u32-asnprintf: New file.
9499         * modules/unistdio/u32-u32-asprintf: New file.
9500         * modules/unistdio/u32-u32-snprintf: New file.
9501         * modules/unistdio/u32-u32-sprintf: New file.
9502         * modules/unistdio/u32-u32-vasnprintf: New file.
9503         * modules/unistdio/u32-u32-vasprintf: New file.
9504         * modules/unistdio/u32-u32-vsnprintf: New file.
9505         * modules/unistdio/u32-u32-vsprintf: New file.
9506         * modules/unistdio/ulc-asnprintf-tests: New file.
9507         * modules/unistdio/ulc-vasnprintf-tests: New file.
9508         * modules/unistdio/ulc-vasprintf-tests: New file.
9509         * modules/unistdio/ulc-vsnprintf-tests: New file.
9510         * modules/unistdio/ulc-vsprintf-tests: New file.
9511         * modules/unistdio/u8-asnprintf-tests: New file.
9512         * modules/unistdio/u8-vasnprintf-tests: New file.
9513         * modules/unistdio/u8-vasprintf-tests: New file.
9514         * modules/unistdio/u8-vsnprintf-tests: New file.
9515         * modules/unistdio/u8-vsprintf-tests: New file.
9516         * modules/unistdio/u16-asnprintf-tests: New file.
9517         * modules/unistdio/u16-vasnprintf-tests: New file.
9518         * modules/unistdio/u16-vasprintf-tests: New file.
9519         * modules/unistdio/u16-vsnprintf-tests: New file.
9520         * modules/unistdio/u16-vsprintf-tests: New file.
9521         * modules/unistdio/u32-asnprintf-tests: New file.
9522         * modules/unistdio/u32-vasnprintf-tests: New file.
9523         * modules/unistdio/u32-vasprintf-tests: New file.
9524         * modules/unistdio/u32-vsnprintf-tests: New file.
9525         * modules/unistdio/u32-vsprintf-tests: New file.
9526         * MODULES.html.sh (Unicode string functions): Add the new modules.
9527
9528 2007-07-01  Bruno Haible  <bruno@clisp.org>
9529
9530         * lib/sprintf.c (sprintf): Limit the available length estimation,
9531         to avoid address wraparound.
9532         * lib/vsprintf.c (vsprintf): Likewise.
9533         * modules/sprintf-posix (Dependencies): Add stdint.
9534         * modules/vsprintf-posix (Dependencies): Likewise.
9535
9536 2007-07-01  Bruno Haible  <bruno@clisp.org>
9537
9538         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
9539         Windows PATH as well. Conservative double-quoting. Comments.
9540
9541 2007-07-01  Bruno Haible  <bruno@clisp.org>
9542             Eric Blake  <ebb9@byu.net>
9543             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9544
9545         * gnulib-tool (self_abspathname): Fix algorithm to cope with
9546         empty components in $PATH, denoting '.'.
9547
9548 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9549
9550         * gnulib-tool: Fix indentation.
9551         (func_create_megatestdir): Likewise.
9552         Report by Bruno Haible.
9553
9554 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9555
9556         Sync from Automake.
9557         * build-aux/gnupload: Fix shell portability issues with for loops.
9558         Report by Karl Berry.
9559
9560 2007-06-29  Simon Josefsson  <simon@josefsson.org>
9561
9562         * build-aux/maint.mk (POURL): Use translationproject.org.
9563
9564 2007-06-27  Simon Josefsson  <simon@josefsson.org>
9565             Bruno Haible  <bruno@clisp.org>
9566
9567         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
9568         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
9569         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
9570         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
9571         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
9572
9573 2007-06-27  Bruno Haible  <bruno@clisp.org>
9574
9575         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
9576         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
9577
9578 2007-06-26  Karl Berry  <karl@gnu.org>
9579
9580         * MODULES.html.sh: remove xreadlink-with-size.
9581
9582 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9583
9584         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
9585         method that I hope also handles the double-include problem noted
9586         by Bruno Haible in
9587         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
9588
9589 2007-06-23  Bruno Haible  <bruno@clisp.org>
9590
9591         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
9592         Don't let the 'mostlyclean' target fail if the last subdirectory could
9593         not be removed.
9594         Reported by Karl Berry.
9595
9596 2007-06-23  Bruno Haible  <bruno@clisp.org>
9597
9598         * gnulib-tool (echo): Add a speedier workaround for ksh.
9599         * tests/test-echo.sh: Likewise.
9600
9601 2007-06-23  Bruno Haible  <bruno@clisp.org>
9602
9603         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
9604         * tests/test-echo.sh: Likewise.
9605
9606 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9607
9608         * gnulib-tool (IFS): Initialize early, so we don't set it to
9609         empty later.
9610         (self_abspathname): Rewrite algorithm to set it, reindent.
9611         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
9612         (func_create_megatestdir): Merge some sed scripts.
9613
9614 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9615
9616         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
9617         exposed by Sun Studio 11 cc on Solaris 8.
9618
9619 2007-06-22  Bruno Haible  <bruno@clisp.org>
9620
9621         * gnulib-tool (echo): Ensure the echo primitive does not interpret
9622         backslashes.
9623         * tests/test-echo.sh: New file.
9624
9625 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9626
9627         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
9628         simplify `sed_replace_build_aux' scripts, they are portable but
9629         echoing them with `echo' is not.
9630         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
9631
9632 2007-06-21  Karl Berry  <karl@gnu.org>
9633
9634         * config/srclist.txt: guess we can't handle the licenses via
9635         srclist at the moment.
9636
9637 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9638
9639         * MODULES.html.sh: Add include_next.
9640         * modules/include_next: New file.
9641
9642 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
9643
9644         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
9645         INCLUDE_NEXT.
9646         (gl_CHECK_NEXT_HEADERS): New macro.
9647         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
9648         the obsolescent gl_ABSOLUTE_HEADER.
9649         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
9650         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
9651         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
9652         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9653         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
9654         * m4/math_h.m4 (gl_MATH_H): Likewise.
9655         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9656         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
9657         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
9658         * m4/stdint.m4 (gl_STDINT_H): Likewise.
9659         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
9660         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
9661         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
9662         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9663         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
9664         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
9665         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
9666         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
9667         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
9668         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
9669         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
9670         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
9671         * m4/inttypes.m4 (gl_INTTYPES_H): Define
9672         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
9673         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
9674         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
9675         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
9676         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
9677         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
9678         * lib/float_.h: Likewise.
9679         * lib/inttypes_.h: Likewise.
9680         * lib/math_.h: Likewise.
9681         * lib/search_.h: Likewise.
9682         * lib/signal_.h: Likewise.
9683         * lib/stdint_.h: Likewise.
9684         * lib/stdio_.h: Likewise.
9685         * lib/stdlib_.h: Likewise.
9686         * lib/string_.h: Likewise.
9687         * lib/sys_stat_.h: Likewise.
9688         * lib/sys_time_.h: Likewise.
9689         * lib/time_.h: Likewise.
9690         * lib/unistd_.h: Likewise.
9691         * lib/wchar_.h: Likewise.
9692         * lib/wctype_.h: Likewise.
9693         * lib/dirent_.h: Likewise.
9694         * lib/iconv_.h: Likewise.
9695         * lib/locale_.h: Likewise.
9696         * lib/netinet_in_.h: Likewise.
9697         * lib/sys_select_.h: Likewise.
9698         * lib/sys_socket_.h: Likewise.
9699         * lib/sysexits_.h: Likewise.
9700         * modules/fcntl (Depends-on): Depend on include_next, not
9701         absolute_header.
9702         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
9703         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
9704         * modules/fchdir: Likewise.
9705         * modules/float: Likewise.
9706         * modules/iconv_open: Likewise.
9707         * modules/inttypes: Likewise.
9708         * modules/locale: Likewise.
9709         * modules/math: Likewise.
9710         * modules/netinet_in: Likewise.
9711         * modules/search: Likewise.
9712         * modules/signal: Likewise.
9713         * modules/stdint: Likewise.
9714         * modules/stdio: Likewise.
9715         * modules/stdlib: Likewise.
9716         * modules/string: Likewise.
9717         * modules/sys_select: Likewise.
9718         * modules/sys_socket: Likewise.
9719         * modules/sys_stat: Likewise.
9720         * modules/sys_time: Likewise.
9721         * modules/sysexits: Likewise.
9722         * modules/time: Likewise.
9723         * modules/unistd: Likewise.
9724         * modules/wchar: Likewise.
9725         * modules/wctype: Likewise.
9726         * modules/sys_stat: Change maintainer to "all".
9727         * modules/unistd: Likewise.
9728
9729 2007-06-20  Karl Berry  <karl@gnu.org>
9730
9731         * config/srclist.txt: track www changes in license files.
9732
9733 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
9734
9735         * build-aux/bootstrap: Remove stray dot.
9736         Make sure build_aux settings are honored when linking
9737         gnulib_extra_files.
9738
9739 2007-06-19  Eric Blake  <ebb9@byu.net>
9740
9741         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
9742         Allow compilation on cygwin.
9743
9744 2007-06-19  Jim Meyering  <jim@meyering.net>
9745
9746         xreadlink-with-size: Remove module.  No longer used.
9747         Ex-callers now use xreadlink or mreadlink-with-size.
9748         * modules/xreadlink-with-size: Remove module.
9749         * lib/xreadlink-with-size.c: Remove file.
9750         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
9751         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
9752         just before the function definition *is* accurate.
9753
9754         Eliminate one way canonicalize_filename_mode could exit.
9755         * lib/canonicalize.c (canonicalize_filename_mode):
9756         Use mreadlink_with_size, not xreadlink_with_size.
9757
9758 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9759
9760         Detect porting problems to FreeBSD/arm, which has time_t wider than
9761         long int.  Original problem reported for GNU diff by Xin Li in
9762         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
9763         * modules/getdate (Depends-on): Add intprops, verify.
9764         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
9765         is an integer type no wider than long int.
9766
9767 2007-06-18  Jim Meyering  <jim@meyering.net>
9768
9769         New module: mreadlink-with-size.
9770         * MODULES.html.sh: Add mreadlink-with-size.
9771         * modules/mreadlink-with-size: New module
9772         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
9773         not xreadlink-with-size.
9774         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
9775
9776 2007-06-16  Bruno Haible  <bruno@clisp.org>
9777
9778         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
9779         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
9780         Reported by Gary V. Vaughan <gary@gnu.org>.
9781
9782 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
9783
9784         Revamp lchown so that it lives in unistd.h where it belongs.
9785         * lib/lchown.h: Remove.
9786         * lib/dirchownmod.c: Don't include lib/lchown.h.
9787         * lib/fchownat.c: Likewise.
9788         * lib/openat.c: Likewise.
9789         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
9790         does not follow symlinks.
9791         (EOPNOTSUPP): Define if not defined.
9792         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
9793         is defined to 0.
9794         (lchown): New decl.
9795         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
9796         Do not check for lchown decl.
9797         Set REPLACE_LCHOWN.
9798         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
9799         REPLACE_LCHOWN.
9800         * modules/chown: Make it clear it follows symlinks.
9801         * modules/lchown: Make it clear it doesn't follow symlinks.
9802         (Files): Remove lib/lchown.h
9803         (Depends-on): Add unistd.
9804         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
9805         (Include): Include <unistd.h>, not "lchown.h".
9806         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
9807         REPLACE_LCHOWN.
9808
9809 2007-06-15  Jim Meyering  <jim@meyering.net>
9810
9811         Change license (GPL to LGPL) of fsusage and dependents.
9812         * modules/fsusage (License): Change to LGPL.
9813         * modules/full-read (License): Likewise.
9814         * modules/full-write (License): Likewise.
9815         * modules/safe-read (License): Likewise.
9816         * modules/safe-write (License): Likewise.
9817
9818 2007-06-14  Ben Pfaff  <blp@gnu.org>
9819
9820         Missing part of allocsa -> malloca transition.
9821         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
9822         gl_MALLOCA.
9823
9824 2007-06-12  Bruno Haible  <bruno@clisp.org>
9825
9826         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
9827         to ia64, x86_64, i386.
9828         Reported by Eric Blake.
9829
9830 2007-06-12  Bruno Haible  <bruno@clisp.org>
9831
9832         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
9833         cross-compiling to x86_64.
9834
9835 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9836
9837         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
9838         glitch reported by Ralf Wildenhues in
9839         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
9840
9841         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
9842         Vin Shelton.
9843
9844 2007-06-11  Bruno Haible  <bruno@clisp.org>
9845
9846         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
9847         replacement string.
9848         Reported by Eric Blake.
9849
9850 2007-06-10  Bruno Haible  <bruno@clisp.org>
9851
9852         Prepare vasnprintf code for use with Unicode strings.
9853         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
9854         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
9855         TYPE_U32_STRING.
9856         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
9857         a_u32_string variants.
9858         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
9859         * lib/printf-args.c: Don't include config.h and the specification
9860         header if PRINTF_FETCHARGS is already defined.
9861         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
9862         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
9863         TYPE_U16_STRING, TYPE_U32_STRING.
9864         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
9865         u16_directive, u16_directives, u32_directive, u32_directives): New
9866         types.
9867         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
9868         New declarations.
9869         * lib/printf-parse.c: Don't include config.h and the specification
9870         header if PRINTF_PARSE is already defined. Eliminate the set of
9871         parameters for WIDE_CHAR_VERSION; the user of this file must provide
9872         them now. Include c-ctype.h.
9873         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
9874         directive and CHAR_T_ONLY_ASCII.
9875         * lib/vasnprintf.c: Don't include config.h and the specification header
9876         if VASNPRINTF is already defined.
9877         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
9878         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
9879         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
9880         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
9881         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
9882         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
9883         code accordingly.
9884         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
9885         pad_ourselves also in this case, with the 'c' and 's' directives, and
9886         with a different notion of "width".
9887         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
9888
9889 2007-06-10  Bruno Haible  <bruno@clisp.org>
9890
9891         * modules/unistr/u32-mbsnlen: New file.
9892         * lib/unistr/u32-mbsnlen.c: New file.
9893
9894         * modules/unistr/u16-mbsnlen: New file.
9895         * lib/unistr/u16-mbsnlen.c: New file.
9896
9897         * modules/unistr/u8-mbsnlen: New file.
9898         * lib/unistr/u8-mbsnlen.c: New file.
9899
9900         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
9901         declarations.
9902
9903 2007-06-10  Bruno Haible  <bruno@clisp.org>
9904
9905         * lib/string_.h (mbsnlen): New declaration.
9906         * lib/mbsnlen.c: New file.
9907         * m4/mbsnlen.m4: New file.
9908         * modules/mbsnlen: New file.
9909         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
9910         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
9911         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
9912
9913 2007-06-10  Bruno Haible  <bruno@clisp.org>
9914
9915         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
9916
9917 2007-06-10  Bruno Haible  <bruno@clisp.org>
9918
9919         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
9920         * lib/mbuiter.h: Likewise.
9921
9922 2007-06-10  Bruno Haible  <bruno@clisp.org>
9923
9924         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
9925         declaration.
9926
9927 2007-06-10  Karl Berry  <karl@gnu.org>
9928
9929         * config/srclist.txt: remove gettext entries, Bruno prefers
9930         to update individually.
9931
9932 2007-06-10  Bruno Haible  <bruno@clisp.org>
9933
9934         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
9935         'maxlen'. Ensure only length + width bytes are allocated, not
9936         length + 1 + width.
9937
9938 2007-06-09  Bruno Haible  <bruno@clisp.org>
9939
9940         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
9941         (CHAR_T): Remove macro.
9942         (VASNPRINTF): Update.
9943
9944 2007-06-09  Bruno Haible  <bruno@clisp.org>
9945
9946         * MODULES.html.sh (Unicode string functions): Add the new modules.
9947
9948         * modules/uniconv/u32-conv-to-enc: New file.
9949         * lib/uniconv/u32-conv-to-enc.c: New file.
9950         * modules/uniconv/u32-conv-to-enc-tests: New file.
9951         * tests/uniconv/test-u32-conv-to-enc.c: New file.
9952
9953         * modules/uniconv/u16-conv-to-enc: New file.
9954         * lib/uniconv/u16-conv-to-enc.c: New file.
9955         * lib/uniconv/u-conv-to-enc.h: New file.
9956         * modules/uniconv/u16-conv-to-enc-tests: New file.
9957         * tests/uniconv/test-u16-conv-to-enc.c: New file.
9958
9959         * modules/uniconv/u8-conv-to-enc: New file.
9960         * lib/uniconv/u8-conv-to-enc.c: New file.
9961         * modules/uniconv/u8-conv-to-enc-tests: New file.
9962         * tests/uniconv/test-u8-conv-to-enc.c: New file.
9963
9964         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
9965         u32_conv_to_encoding): New declarations.
9966
9967 2007-06-09  Bruno Haible  <bruno@clisp.org>
9968
9969         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
9970
9971 2007-06-09  Bruno Haible  <bruno@clisp.org>
9972
9973         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
9974         * modules/malloca: Renamed from modules/allocsa, updated.
9975         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
9976         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
9977         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
9978         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
9979         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
9980         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
9981         * modules/xmalloca: Renamed from modules/xallocsa, updated.
9982         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
9983         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
9984         * modules/c-strcasestr (Depends-on): Update.
9985         * lib/c-strcasestr.c: Update.
9986         * modules/c-strstr (Depends-on): Update.
9987         * lib/c-strstr.c: Update.
9988         * modules/canonicalize-lgpl (Depends-on): Update.
9989         * lib/canonicalize-lgpl.c: Update.
9990         * modules/clean-temp (Depends-on): Update.
9991         * lib/clean-temp.c: Update.
9992         * modules/csharpcomp (Depends-on): Update.
9993         * lib/csharpcomp.c: Update.
9994         * modules/csharpexec (Depends-on): Update.
9995         * lib/csharpexec.c: Update.
9996         * modules/javacomp (Depends-on): Update.
9997         * lib/javacomp.c: Update.
9998         * modules/javaexec (Depends-on): Update.
9999         * lib/javaexec.c: Update.
10000         * modules/mbscasestr (Depends-on): Update.
10001         * lib/mbscasestr.c: Update.
10002         * modules/mbsstr (Depends-on): Update.
10003         * lib/mbsstr.c: Update.
10004         * modules/setenv (Depends-on): Update.
10005         * lib/setenv.c: Update.
10006         * modules/strcasestr (Depends-on): Update.
10007         * lib/strcasestr.c: Update.
10008         * modules/striconveha (Depends-on): Update.
10009         * lib/striconveha.c: Update.
10010         * modules/relocatable-prog-wrapper (Files): Update.
10011         * lib/relocwrapper.c: Update.
10012         * build-aux/install-reloc: Update.
10013         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
10014
10015 2007-06-08  Bruno Haible  <bruno@clisp.org>
10016
10017         Port to uClibc.
10018         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
10019         * lib/fpurge.c (fpurge): Likewise.
10020         * lib/freading.c (freading): Likewise.
10021         * lib/fseeko.c (rpl_fseeko): Likewise.
10022         * lib/fseterr.c (fseterr): Likewise.
10023         * lib/fwriting.c (fwriting): Likewise.
10024         * tests/test-fflush.c (main): Avoid a failure on uClibc.
10025
10026 2007-06-08  Bruno Haible  <bruno@clisp.org>
10027
10028         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
10029         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
10030         * modules/gettext (Files): Add m4/intlmacosx.m4.
10031
10032 2007-06-07  Bruno Haible  <bruno@clisp.org>
10033
10034         * modules/localename-tests: New file.
10035         * tests/test-localename.c: New file.
10036
10037         New module 'localename'.
10038         * lib/localename.h: New file.
10039         * lib/localename.c: New file, from GNU gettext.
10040         * m4/localename.m4: New file.
10041         * modules/localename: New file.
10042
10043 2007-06-07  Bruno Haible  <bruno@clisp.org>
10044
10045         Work around the lack of <wchar.h> on some builds of uClibc.
10046         * doc/headers/wchar.texi: Update.
10047         * lib/wchar_.h: Include <wchar.h> only if it exists.
10048         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
10049         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
10050         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
10051         doesn't exist.
10052         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
10053         * modules/mbfile (Depends-on): Add wchar.
10054         * modules/mbiter (Depends-on): Likewise.
10055         * modules/mbuiter (Depends-on): Likewise.
10056         Reported by Simon Josefsson.
10057
10058 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10059
10060         Work around problem reported by Steven M. Schweda in
10061         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
10062         Tru64 5.1B with the Compaq compiler environment installed declares
10063         an 'isblank' function but does not define it in the C library.
10064         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
10065         * lib/regex_internal.h (isblank): Likewise.
10066         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
10067         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10068
10069 2007-06-05  Bruno Haible  <bruno@clisp.org>
10070
10071         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
10072         ia64.
10073         * modules/printf-safe: New file.
10074         * modules/fprintf-posix (Depends-on): Add printf-safe.
10075         * modules/printf-posix (Depends-on): Likewise.
10076         * modules/snprintf-posix (Depends-on): Likewise.
10077         * modules/sprintf-posix (Depends-on): Likewise.
10078         * modules/vasnprintf-posix (Depends-on): Likewise.
10079         * modules/vasprintf-posix (Depends-on): Likewise.
10080         * modules/vfprintf-posix (Depends-on): Likewise.
10081         * modules/vprintf-posix (Depends-on): Likewise.
10082         * modules/vsnprintf-posix (Depends-on): Likewise.
10083         * modules/vsprintf-posix (Depends-on): Likewise.
10084         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
10085         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
10086         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
10087         "no" on i386, x86_64, ia64.
10088         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
10089         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10090         on i386, x86_64, ia64.
10091         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
10092         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10093         on i386, x86_64, ia64.
10094         * tests/test-vasnprintf-posix.c: Include float.h.
10095         (LDBL80_WORDS): New macro.
10096         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10097         on i386, x86_64, ia64.
10098         * tests/test-vasprintf-posix.c: Include float.h.
10099         (LDBL80_WORDS): New macro.
10100         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10101         on i386, x86_64, ia64.
10102         * tests/test-snprintf-posix.c: Include float.h.
10103         * tests/test-sprintf-posix.c: Likewise.
10104         * tests/test-vsnprintf-posix.c: Likewise.
10105         * tests/test-vsprintf-posix.c: Likewise.
10106
10107 2007-06-05  Bruno Haible  <bruno@clisp.org>
10108
10109         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
10110         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
10111         non-IEEE numbers on i386, x86_64, ia64.
10112         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
10113         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
10114         * tests/test-isnanl.h: Include float.h.
10115         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
10116
10117 2007-06-05  Bruno Haible  <bruno@clisp.org>
10118
10119         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
10120         also the %a / %A. Handle the %a / %A code before this extra handling.
10121
10122 2007-06-05  Bruno Haible  <bruno@clisp.org>
10123
10124         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
10125         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
10126
10127 2007-06-05  Bruno Haible  <bruno@clisp.org>
10128
10129         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
10130         typo in variable name.
10131
10132 2007-06-05  Eric Blake  <ebb9@byu.net>
10133
10134         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
10135         Reported by Simon Josefsson.
10136
10137 2007-06-04  Bruno Haible  <bruno@clisp.org>
10138
10139         Avoid test failures on some PowerPC platforms.
10140         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
10141         Define differently for PowerPC.
10142         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
10143         Reported by Gary V. Vaughan <gary@gnu.org>.
10144
10145 2007-06-02  Bruno Haible  <bruno@clisp.org>
10146
10147         Fix test-stdint failure on FreeBSD/ia64.
10148         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
10149         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
10150         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
10151         * doc/headers/stdint.texi: Update.
10152
10153 2007-06-01  Bruno Haible  <bruno@clisp.org>
10154
10155         * tests/test-binary-io.c (main): Pass a third argument to open().
10156         Reported by Gary V. Vaughan <gary@gnu.org>.
10157
10158 2007-06-01  Bruno Haible  <bruno@clisp.org>
10159
10160         * doc/functions/frexpl.texi: Update for mingw.
10161
10162 2007-06-01  Bruno Haible  <bruno@clisp.org>
10163
10164         * tests/test-lseek.c (main): Disable test of errno for invalid third
10165         argument.
10166         * doc/functions/lseek.texi: Update.
10167         Reported by Gary V. Vaughan <gary@gnu.org>.
10168
10169 2007-05-28  Bruno Haible  <bruno@clisp.org>
10170
10171         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
10172
10173 2007-05-31  Eric Blake  <ebb9@byu.net>
10174
10175         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
10176         cross compiling.
10177
10178 2007-05-30  Eric Blake  <ebb9@byu.net>
10179         and Bruno Haible  <bruno@clisp.org>
10180
10181         Work around mingw test failures exposed by m4-1.4.9b.
10182         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
10183         * tests/test-unistd.c: Disable uid_t and git_t tests for the
10184         moment.
10185
10186 2007-05-30  Bruno Haible  <bruno@clisp.org>
10187
10188         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
10189         assuming that they are closed. Needed on HP-UX 11.
10190
10191 2007-05-29  Bruno Haible  <bruno@clisp.org>
10192
10193         Fix a problem with #include_next.
10194         * lib/dirent_.h: Split the double-inclusion guard.
10195         * lib/fcntl_.h: Likewise.
10196         * lib/float_.h: Likewise.
10197         * lib/iconv_.h: Likewise.
10198         * lib/inttypes_.h: Likewise.
10199         * lib/locale_.h: Likewise.
10200         * lib/math_.h: Likewise.
10201         * lib/netinet_in_.h: Likewise.
10202         * lib/search_.h: Likewise.
10203         * lib/signal_.h: Likewise.
10204         * lib/stdint_.h: Likewise.
10205         * lib/stdio_.h: Likewise.
10206         * lib/stdlib_.h: Likewise.
10207         * lib/string_.h: Likewise.
10208         * lib/sys_select_.h: Likewise.
10209         * lib/sys_socket_.h: Likewise.
10210         * lib/sys_stat_.h: Likewise.
10211         * lib/sys_time_.h: Likewise.
10212         * lib/sysexits_.h: Likewise.
10213         * lib/time_.h: Likewise.
10214         * lib/unistd_.h: Likewise.
10215         * lib/wchar_.h: Likewise.
10216         * lib/wctype_.h: Likewise.
10217
10218 2007-05-29  Bruno Haible  <bruno@clisp.org>
10219
10220         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
10221         for the moment.
10222
10223 2007-05-29  Bruno Haible  <bruno@clisp.org>
10224
10225         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
10226         invocation.
10227         Reported by Eric Blake.
10228
10229 2007-05-29  Bruno Haible  <bruno@clisp.org>
10230
10231         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
10232         compiling case.
10233
10234 2007-05-29  Eric Blake  <ebb9@byu.net>
10235             Bruno Haible  <bruno@clisp.org>
10236
10237         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
10238         cross compiles.
10239
10240 2007-05-28  Eric Blake  <ebb9@byu.net>
10241
10242         * modules/closein-tests (test_closein_LDADD): Support test on
10243         cygwin with libtool.
10244
10245 2007-05-28  Bruno Haible  <bruno@clisp.org>
10246
10247         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
10248         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
10249         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
10250         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
10251         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
10252         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
10253         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
10254         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
10255         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
10256
10257 2007-05-28  Eric Blake  <ebb9@byu.net>
10258
10259         Unconditionally include <config.h> in unit tests.
10260         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
10261         * tests/test-allocsa.c, tests/test-arcfour.c,
10262         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
10263         tests/test-array_list.c, tests/test-array_oset.c,
10264         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
10265         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
10266         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
10267         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
10268         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
10269         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
10270         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
10271         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
10272         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
10273         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
10274         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
10275         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
10276         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
10277         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
10278         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
10279         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
10280         test-md5.c, test-memmem.c, test-printf-posix.c,
10281         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
10282         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
10283         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
10284         test-strcasestr.c, test-striconv.c, test-striconveh.c,
10285         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
10286         test-vasnprintf-posix2.c, test-vasnprintf.c,
10287         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
10288         test-vfprintf-posix.c, test-vprintf-posix.c,
10289         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
10290         test-xvasprintf.c: Likewise.
10291
10292 2007-05-28  Bruno Haible  <bruno@clisp.org>
10293
10294         * gnulib-tool (func_import): Remember the --with-tests command-line
10295         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
10296         Reported by Eric Blake.
10297
10298 2007-05-28  Bruno Haible  <bruno@clisp.org>
10299
10300         * modules/ftell-tests: New file.
10301         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
10302         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
10303
10304         * lib/ftell.c: New file.
10305         * modules/ftell: New file.
10306         * m4/ftell.m4: New file.
10307         * doc/functions/ftell.texi: Update.
10308         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
10309         REPLACE_FTELL.
10310         * lib/stdio_.h (rpl_ftell): New declaration.
10311         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
10312         REPLACE_FTELL.
10313
10314 2007-05-28  Eric Blake  <ebb9@byu.net>
10315
10316         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
10317
10318 2007-05-28  Bruno Haible  <bruno@clisp.org>
10319
10320         * modules/fseek-tests: New file.
10321         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
10322         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
10323
10324         * lib/fseek.c: New file.
10325         * modules/fseek: New file.
10326         * m4/fseek.m4: New file.
10327         * doc/functions/fseek.texi: Update.
10328         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
10329         REPLACE_FSEEK.
10330         * lib/stdio_.h (rpl_fseek): New declaration.
10331         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
10332         REPLACE_FSEEK.
10333
10334 2007-05-28  Bruno Haible  <bruno@clisp.org>
10335
10336         * lib/stdio_.h (fflush): More comments.
10337
10338 2007-05-28  Bruno Haible  <bruno@clisp.org>
10339
10340         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
10341         runtime test.
10342
10343 2007-05-28  Eric Blake  <ebb9@byu.net>
10344
10345         Improve lseek module.
10346         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
10347         * lib/unistd_.h (lseek): Scale back link warning message.
10348         * tests/test-lseek.c: Beef up test.
10349         * tests/test-lseek.sh: Exercise more facets of lseek.
10350         Reported by Bruno Haible.
10351
10352 2007-05-28  Bruno Haible  <bruno@clisp.org>
10353
10354         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
10355         to define.
10356
10357 2007-05-27  Bruno Haible  <bruno@clisp.org>
10358
10359         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
10360
10361 2007-05-27  Bruno Haible  <bruno@clisp.org>
10362
10363         * modules/openmp: New file.
10364         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
10365         Noah Misch.
10366
10367 2007-05-26  Bruno Haible  <bruno@clisp.org>
10368
10369         * modules/chdir-long (Depends-on): Add fchdir.
10370         * modules/chdir-safer (Depends-on): Likewise.
10371         * modules/fts (Depends-on): Likewise.
10372         * modules/fts-lgpl (Depends-on): Likewise.
10373         * modules/openat (Depends-on): Likewise.
10374         * modules/savewd (Depends-on): Likewise.
10375
10376 2007-05-24  Eric Blake  <ebb9@byu.net>
10377
10378         Fix lseek on mingw.
10379         * modules/lseek: New module.
10380         * m4/lseek.m4: New file.
10381         * lib/lseek.c: New file.
10382         * modules/lseek-tests: New file.
10383         * tests/test-lseek.c: New file.
10384         * tests/test-lseek.sh: New file.
10385         * MODULES.html.sh: Document lseek module.
10386         * modules/fflush (Depends-on): Add lseek, fseeko.
10387         * modules/fseeko (Depends-on): Likewise.
10388         * modules/ftello (Depends-on): Likewise.
10389         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
10390         broken.
10391         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
10392         broken.
10393         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
10394         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
10395         * lib/ftello.c (rpl_ftello): Likewise.
10396         * tests/test-fseeko.c (main): Test this.
10397         * tests/test-fseeko.sh: Likewise.
10398         * tests/test-ftello.c (main): Likewise.
10399         * tests/test-ftello.sh: Likewise.
10400         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
10401         implies replacing fseek.
10402         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
10403         HAVE_FTELLO.
10404         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
10405         * modules/unistd (Makefile.am): Likewise.
10406         * lib/unistd_.h (lseek): Declare a replacement.
10407         * doc/functions/lseek.texi (lseek): Document this fix.
10408         * doc/functions/fseek.texi (fseek): Likewise.
10409         * doc/functions/ftell.texi (ftell): Likewise.
10410
10411 2007-05-24  Bruno Haible  <bruno@clisp.org>
10412
10413         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
10414         in the printed representation of a NaN.
10415         * tests/test-vasprintf-posix.c (test_function): Likewise.
10416         * tests/test-snprintf-posix.h (test_function): Likewise.
10417         * tests/test-sprintf-posix.h (test_function): Likewise.
10418         Reported by Eric Blake.
10419
10420 2007-05-23  Eric Blake  <ebb9@byu.net>
10421
10422         Fix fseeko/ftello on cygwin 1.5.24.
10423         * doc/functions/fseeko.texi (fseeko): Document the fix.
10424         * doc/functions/ftello.texi (ftello): Document the fix.
10425         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
10426         * doc/functions/stdout.text (stdout): New file.
10427         * doc/functions/stderr.text (stderr): New file.
10428         * doc/gnulib.texi (Function Substitutes): Use new files.
10429         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
10430         prior to 1.7.0.
10431         * tests/test-ftello.c (main): Likewise for ftello.
10432         * tests/test-fseeko.sh: New file.
10433         * tests/test-ftello.sh: New file.
10434         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
10435         with seekable stdin.
10436         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
10437         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
10438         (gl_REPLACE_FSEEKO): New macro.
10439         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
10440         * modules/fseeko (Files): Distribute fseeko.c.
10441         * modules/ftello (Files): Distribute ftello.c.
10442         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
10443         mode.
10444         * lib/ftello.c (rpl_ftello): New file.
10445         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
10446         fseeko, ftello.
10447         (gl_STDIN_LARGE_OFFSET): New macro.
10448         * modules/stdio (Makefile.am): Perform the replacement.
10449         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
10450
10451 2007-05-23  Bruno Haible  <bruno@clisp.org>
10452
10453         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
10454         GNULIB_POSIXCHECK is defined.
10455
10456 2007-05-21  Bruno Haible  <bruno@clisp.org>
10457
10458         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
10459         Check also the output for NaN arguments. When cross-compiling, guess
10460         no on IRIX.
10461         * lib/vasnprintf.c: Update comments.
10462         * tests/test-vasnprintf-posix.c (strisnan): New function.
10463         (test_function): Use it.
10464         * tests/test-vasprintf-posix.c (strisnan): New function.
10465         (test_function): Use it.
10466         * tests/test-snprintf-posix.h (strisnan): New function.
10467         (test_function): Use it.
10468         * tests/test-sprintf-posix.h (strisnan): New function.
10469         (test_function): Use it.
10470         Reported by Eric Blake.
10471
10472 2007-05-20  Bruno Haible  <bruno@clisp.org>
10473
10474         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
10475         numbers that fails on BeOS.
10476         * doc/functions/frexpl.texi: Update.
10477
10478 2007-05-20  Jim Meyering  <jim@meyering.net>
10479
10480         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
10481         forced upon us by glibc-2.6.
10482
10483 2007-05-20  Bruno Haible  <bruno@clisp.org>
10484
10485         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
10486         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
10487         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
10488         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
10489         NEED_PRINTF_INFINITE.
10490         (is_infinitel): New function.
10491         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
10492         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
10493         gl_PREREQ_VASNPRINTF_INFINITE.
10494         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
10495         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10496         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
10497         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
10498         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
10499         gl_PREREQ_VASNPRINTF_INFINITE.
10500         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10501         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10502         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10503         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10504         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10505         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10506         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10507         * doc/functions/fprintf.texi: Update.
10508         * doc/functions/printf.texi: Update.
10509         * doc/functions/snprintf.texi: Update.
10510         * doc/functions/sprintf.texi: Update.
10511         * doc/functions/vfprintf.texi: Update.
10512         * doc/functions/vprintf.texi: Update.
10513         * doc/functions/vsnprintf.texi: Update.
10514         * doc/functions/vsprintf.texi: Update.
10515
10516 2007-05-20  Bruno Haible  <bruno@clisp.org>
10517
10518         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
10519         was not found in libc.
10520         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
10521
10522 2007-05-20  Bruno Haible  <bruno@clisp.org>
10523
10524         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10525         printed as "-nan" instead of "nan".
10526         * tests/test-vasprintf-posix.c (test_function): Likewise.
10527         * tests/test-snprintf-posix.h (test_function): Likewise.
10528         * tests/test-sprintf-posix.h (test_function): Likewise.
10529         Needed for HP-UX 11.
10530
10531 2007-05-20  Jim Meyering  <jim@meyering.net>
10532
10533         Fix buggy test for the fchownat-deref bug.
10534         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
10535         symlink required for the run-test.  Without it, this test would
10536         always declare that fchownat doesn't work, and client code would
10537         unnecessarily use the replacement function with fixed libc.
10538         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
10539         Reported by Greg Schafer.
10540
10541 2007-05-19  Bruno Haible  <bruno@clisp.org>
10542
10543         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
10544         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
10545         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
10546         Needed for IRIX 6.5 and Solaris 2.5.1.
10547
10548 2007-05-19  Bruno Haible  <bruno@clisp.org>
10549
10550         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
10551         (test_function): Skip tests involving -0.0 on platforms where
10552         -0.0 = 0.0.
10553         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
10554         (test_function): Skip tests involving -0.0 on platforms where
10555         -0.0 = 0.0.
10556         * tests/test-snprintf-posix.h (have_minus_zero): New function.
10557         (test_function): Skip tests involving -0.0 on platforms where
10558         -0.0 = 0.0.
10559         * tests/test-sprintf-posix.h (have_minus_zero): New function.
10560         (test_function): Skip tests involving -0.0 on platforms where
10561         -0.0 = 0.0.
10562         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
10563         tests.
10564         * tests/test-printf-posix.h (test_function): Likewise.
10565         * tests/test-printf-posix.output: Remove all -0.0 related results.
10566         Needed for IRIX 6.5.
10567
10568 2007-05-19  Bruno Haible  <bruno@clisp.org>
10569
10570         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
10571         printed as "nan0x7fffffff" instead of "nan".
10572         * tests/test-vasprintf-posix.c (test_function): Likewise.
10573         * tests/test-snprintf-posix.h (test_function): Likewise.
10574         * tests/test-sprintf-posix.h (test_function): Likewise.
10575         * tests/test-fprintf-posix.h (NaN): Remove macro.
10576         (test_function): Remove all NaN related tests.
10577         * tests/test-printf-posix.h (NaN): Remove macro.
10578         (test_function): Remove all NaN related tests.
10579         * tests/test-printf-posix.output: Remove all NaN related results.
10580         Needed for IRIX 6.5.
10581
10582 2007-05-19  Bruno Haible  <bruno@clisp.org>
10583
10584         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
10585         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
10586
10587 2007-05-19  Bruno Haible  <bruno@clisp.org>
10588
10589         * lib/float_.h: New file.
10590         * m4/float_h.m4: New file.
10591         * modules/float: New file.
10592         * modules/isnanl (Dependencies): Add float.
10593         * modules/isnanl-nolibm (Dependencies): Likewise.
10594         * modules/mathl (Dependencies): Likewise.
10595         * modules/printf-frexpl (Dependencies): Likewise.
10596         * modules/signbit (Dependencies): Likewise.
10597         * modules/vasnprintf (Dependencies): Likewise.
10598         * doc/headers/float.texi: Update.
10599
10600 2007-05-19  Jim Meyering  <jim@meyering.net>
10601
10602         * lib/utimens.c (gl_futimens): Rename from futimens,
10603         now that glibc-2.6 declares futimens.
10604         * lib/utimens.h: Likewise.
10605
10606 2007-05-19  Bruno Haible  <bruno@clisp.org>
10607
10608         Avoid test failures on mingw.
10609         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
10610         * tests/test-printf-posix.sh: Likewise.
10611         * tests/test-vfprintf-posix.sh: Likewise.
10612         * tests/test-vprintf-posix.sh: Likewise.
10613
10614 2007-05-19  Bruno Haible  <bruno@clisp.org>
10615
10616         Fix *printf result for NaN, Inf, -0.0 on mingw.
10617         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
10618         * lib/vasnprintf.c: Include math.h and isnan.h.
10619         (is_infinite_or_zero): New function.
10620         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
10621         values in the %f, %F, %e, %E, %g, %G directives.
10622         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
10623         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10624         gl_PRINTF_INFINITE and test its result. Invoke
10625         gl_PREREQ_VASNPRINTF_INFINITE.
10626         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10627         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10628         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10629         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10630         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10631         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10632         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10633         * doc/functions/fprintf.texi: Update.
10634         * doc/functions/printf.texi: Update.
10635         * doc/functions/snprintf.texi: Update.
10636         * doc/functions/sprintf.texi: Update.
10637         * doc/functions/vfprintf.texi: Update.
10638         * doc/functions/vprintf.texi: Update.
10639         * doc/functions/vsnprintf.texi: Update.
10640         * doc/functions/vsprintf.texi: Update.
10641
10642 2007-05-19  Bruno Haible  <bruno@clisp.org>
10643
10644         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
10645         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
10646         Instead of multiplying with 10^k, set extra_zeroes to k.
10647         (scale10_round_long_double): Remove function.
10648
10649 2007-05-18  Bruno Haible  <bruno@clisp.org>
10650
10651         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
10652         introduced on 2007-05-06.
10653
10654 2007-05-18  Bruno Haible  <bruno@clisp.org>
10655
10656         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
10657         %g directives.
10658         * tests/test-vasprintf-posix.c (test_function): Likewise.
10659         * tests/test-snprintf-posix.h (test_function): Likewise.
10660         * tests/test-sprintf-posix.h (test_function): Likewise.
10661
10662 2007-05-18  Bruno Haible  <bruno@clisp.org>
10663
10664         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
10665         (strmatch): New function.
10666         (test_function): Test the %f directive on numbers of various exponents.
10667         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
10668         (strmatch): New function.
10669         (test_function): Test the %f directive on numbers of various exponents.
10670         * tests/test-snprintf-posix.h (strmatch): New function.
10671         (test_function): Test the %f directive on numbers of various exponents.
10672         * tests/test-sprintf-posix.h (strmatch): New function.
10673         (test_function): Test the %f directive on numbers of various exponents.
10674         * tests/test-snprintf-posix.c (SIZEOF): New macro.
10675         * tests/test-sprintf-posix.c (SIZEOF): New macro.
10676         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
10677         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
10678
10679 2007-05-18  Bruno Haible  <bruno@clisp.org>
10680
10681         Add support for 'long double' number output.
10682         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
10683         * lib/vasnprintf.c: Include math.h and float+.h.
10684         (mp_limb_t): New type.
10685         (GMP_LIMB_BITS): New macro.
10686         (mp_twolimb_t): New type.
10687         (GMP_TWOLIMB_BITS): New macro.
10688         (mpn_t): New type.
10689         (multiply, divide, convert_to_decimal, decode_long_double,
10690         scale10_round_long_double, scale10_round_decimal_long_double,
10691         floorlog10l): New functions.
10692         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
10693         for the %f, %F, %e, %E, %g, %G directives.
10694         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
10695         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10696         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
10697         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
10698         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10699         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10700         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10701         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10702         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10703         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10704         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10705         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
10706         * modules/snprintf-posix (Depends-on): Likewise.
10707         * modules/sprintf-posix (Depends-on): Likewise.
10708         * modules/vasnprintf-posix (Depends-on): Likewise.
10709         * modules/vasprintf-posix (Depends-on): Likewise.
10710         * modules/vfprintf-posix (Depends-on): Likewise.
10711         * modules/vsnprintf-posix (Depends-on): Likewise.
10712         * modules/vsprintf-posix (Depends-on): Likewise.
10713         * modules/vasnprintf (Files): Add lib/float+.h.
10714         * doc/functions/fprintf.texi: Update.
10715         * doc/functions/printf.texi: Update.
10716         * doc/functions/snprintf.texi: Update.
10717         * doc/functions/sprintf.texi: Update.
10718         * doc/functions/vfprintf.texi: Update.
10719         * doc/functions/vprintf.texi: Update.
10720         * doc/functions/vsnprintf.texi: Update.
10721         * doc/functions/vsprintf.texi: Update.
10722
10723 2007-05-18  Bruno Haible  <bruno@clisp.org>
10724
10725         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
10726
10727 2007-05-18  Bruno Haible  <bruno@clisp.org>
10728
10729         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
10730         for printing 64-bit integers. Needed for mingw.
10731
10732 2007-05-18  Bruno Haible  <bruno@clisp.org>
10733
10734         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
10735         gl_FUNC_FREXPL_WORKS.
10736         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
10737
10738 2007-05-18  Bruno Haible  <bruno@clisp.org>
10739
10740         * modules/frexpl-nolibm-tests: New file.
10741
10742         * modules/frexpl-nolibm: New file.
10743         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
10744
10745 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
10746
10747         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
10748         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
10749         GCC 4.2, which otherwise issues a lot of warnings.
10750         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
10751         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
10752         Likewise.
10753         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
10754         * modules/iconv_open (iconv.h): Likewise.
10755         * modules/locale (locale.h): Likewise.
10756         * modules/netinet_in (netinet/in.h): Likewise.
10757         * modules/sys_select (sys_select.h): Likewise.
10758         * modules/sys_socket (sys/socket.h): Likewise.
10759         * modules/sys_stat (sys/stat.h): Likewise.
10760         * modules/sysexits (sysexits.h): Likewise.
10761         * modules/unistd (unistd.h): Likewise.
10762
10763 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10764
10765         * modules/closein-tests (Makefile.am): Distribute
10766         `test-closein.sh'.
10767
10768 2007-05-17  Bruno Haible  <bruno@clisp.org>
10769
10770         * tests/test-printf-posix.output: Renamed from
10771         tests/test-fprintf-posix.out.
10772         * modules/fprintf-posix-tests: Update.
10773         * modules/printf-posix-tests: Update.
10774         * modules/vfprintf-posix-tests: Update.
10775         * modules/vprintf-posix-tests: Update.
10776         * tests/test-fprintf-posix.sh: Update.
10777         * tests/test-printf-posix.sh: Update.
10778         * tests/test-vfprintf-posix.sh: Update.
10779         * tests/test-vprintf-posix.sh: Update.
10780         Reported by Ralf Wildenhues.
10781
10782 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
10783
10784         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
10785         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
10786         GCC 4.2, which otherwise issues a lot of warnings.
10787         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
10788         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
10789         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
10790         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
10791         it should no longer be needed.
10792         * lib/string_.h: Likewise.
10793         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
10794         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
10795         * modules/inttypes (inttypes.h): Likewise.
10796         * modules/math (math.h): Likewise.
10797         * modules/search (search.h): Likewise.
10798         * modules/signal (signal.h): Likewise.
10799         * modules/stdint (stdint.h): Likewise.
10800         * modules/stdio (stdio.h): Likewise.
10801         * modules/stdlib (stdlib.h): Likewise.
10802         * modules/string (string.h): Likewise.
10803         * modules/sys_time (sys/time.h): Likewise.
10804         * modules/time (time.h): Likewise.
10805         * modules/wchar (wchar.h): Likewise.
10806         * modules/wctype (wtype.h): Likewise.
10807
10808 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
10809
10810         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
10811
10812 2007-05-13  Bruno Haible  <bruno@clisp.org>
10813
10814         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
10815         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
10816         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
10817         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
10818         (gl_PREREQ_STRTOK_R): Don't require it here.
10819
10820 2007-05-13  Bruno Haible  <bruno@clisp.org>
10821
10822         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
10823         when used in C++ mode.
10824
10825 2007-05-12  Bruno Haible  <bruno@clisp.org>
10826
10827         * lib/linebuffer.h: Tweak doc.
10828         * lib/linebuffer.c: Likewise.
10829
10830 2007-05-12  James Youngman  <jay@gnu.org>
10831
10832         * lib/linebuffer.c (readlinebuffer_delim): New function,
10833         like readlinebuffer, but use a caller-specified delimiter.
10834         (readlinebuffer): Just call readlinebuffer_delim with '\n'
10835         as the delimiter.
10836         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
10837
10838 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
10839
10840         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
10841         * modules/openat (Files): Remove openat-die.c.
10842         (Depends-on): Add openat-die.
10843         * modules/openat-die: New module.
10844
10845 2007-05-06  Bruno Haible  <bruno@clisp.org>
10846
10847         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
10848         Update with info about Cygwin.
10849         * doc/functions/fprintf.texi: Update.
10850         * doc/functions/printf.texi: Update.
10851         * doc/functions/snprintf.texi: Update.
10852         * doc/functions/sprintf.texi: Update.
10853         * doc/functions/vfprintf.texi: Update.
10854         * doc/functions/vprintf.texi: Update.
10855         * doc/functions/vsnprintf.texi: Update.
10856         * doc/functions/vsprintf.texi: Update.
10857         Reported by Eric Blake.
10858
10859 2007-05-06  Bruno Haible  <bruno@clisp.org>
10860
10861         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
10862         padding ourselves for the floating-point directives.
10863         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
10864         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
10865         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
10866         gl_PRINTF_FLAG_ZERO and test its result. Invoke
10867         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
10868         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10869         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
10870         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10871         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10872         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10873         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10874         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10875         * tests/test-snprintf-posix.h (test_function): Also check the width
10876         and some flags in the %f directive.
10877         * tests/test-sprintf-posix.h (test_function): Likewise.
10878         * tests/test-vasnprintf-posix.c (test_function): Likewise.
10879         * tests/test-vasprintf-posix.c (test_function): Likewise.
10880         * doc/functions/fprintf.texi: Update.
10881         * doc/functions/printf.texi: Update.
10882         * doc/functions/snprintf.texi: Update.
10883         * doc/functions/sprintf.texi: Update.
10884         * doc/functions/vfprintf.texi: Update.
10885         * doc/functions/vprintf.texi: Update.
10886         * doc/functions/vsnprintf.texi: Update.
10887         * doc/functions/vsprintf.texi: Update.
10888
10889 2007-05-06  Bruno Haible  <bruno@clisp.org>
10890
10891         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
10892         pass the ' flag character to sprintf or snprintf.
10893         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
10894         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
10895         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
10896         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
10897         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
10898         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10899         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
10900         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10901         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10902         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10903         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10904         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10905         * tests/test-snprintf-posix.h (test_function): Also check the grouping
10906         flag.
10907         * tests/test-sprintf-posix.h (test_function): Likewise.
10908         * tests/test-vasnprintf-posix.c (test_function): Likewise.
10909         * tests/test-vasprintf-posix.c (test_function): Likewise.
10910         * doc/functions/fprintf.texi: Update.
10911         * doc/functions/printf.texi: Update.
10912         * doc/functions/snprintf.texi: Update.
10913         * doc/functions/sprintf.texi: Update.
10914         * doc/functions/vfprintf.texi: Update.
10915         * doc/functions/vprintf.texi: Update.
10916         * doc/functions/vsnprintf.texi: Update.
10917         * doc/functions/vsprintf.texi: Update.
10918
10919 2007-05-01  Bruno Haible  <bruno@clisp.org>
10920
10921         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
10922
10923 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
10924
10925         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
10926         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
10927
10928 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
10929
10930         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
10931         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
10932         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
10933
10934 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
10935
10936         * lib/argp-help.c (struct hol_entry): New member `ord'.
10937         (HOL_ENTRY_PTRCMP): Use ord for comparison
10938         (hol_sort): Initialize ord.
10939
10940 2007-05-01  Bruno Haible  <bruno@clisp.org>
10941
10942         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
10943         Reported by Eric Blake.
10944         * doc/gnulib.texi (Function Substitutes): Update.
10945
10946 2007-05-01  Bruno Haible  <bruno@clisp.org>
10947
10948         * doc/functions.texi: Remove file, now redundant through
10949         doc/functions/*.texi.
10950
10951 2007-05-01  Bruno Haible  <bruno@clisp.org>
10952
10953         * modules/argp (Depends-on): Add sleep.
10954
10955 2007-05-01  Bruno Haible  <bruno@clisp.org>
10956
10957         * modules/sleep-tests: New file.
10958         * tests/test-sleep.c: New file.
10959
10960         * modules/sleep: New file.
10961         * lib/sleep.c: New file.
10962         * m4/sleep.m4: New file.
10963         * lib/unistd_.h (sleep): New declaration.
10964         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
10965         HAVE_SLEEP.
10966         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
10967         * doc/functions/sleep.texi: Document the sleep module.
10968
10969 2007-05-01  Bruno Haible  <bruno@clisp.org>
10970
10971         * lib/sigprocmask.h: Remove file.
10972         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
10973         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
10974         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
10975         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
10976         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
10977         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
10978         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
10979         HAVE_SIGSET_T as a shell variable.
10980         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
10981         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
10982         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
10983         (Depends-on): Add signal. Remove verify.
10984         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
10985         (Include): Mention <signal.h> instead of sigprocmask.h.
10986         * NEWS: Mention the change.
10987         * lib/fatal-signal.c: Don't include sigprocmask.h.
10988
10989 2007-05-01  Bruno Haible  <bruno@clisp.org>
10990
10991         * modules/signal: New file.
10992         * lib/signal_.h: New file.
10993         * m4/signal_h.m4: New file.
10994
10995 2007-05-01  Bruno Haible  <bruno@clisp.org>
10996
10997         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
10998         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
10999         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
11000         HAVE_WCTYPE_CTMP_BUG into wctype.h.
11001
11002 2007-05-01  Bruno Haible  <bruno@clisp.org>
11003
11004         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
11005         configure time.
11006         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
11007         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
11008         * modules/sys_stat (Makefile.am): Substitute their values into
11009         sys/stat.h.
11010
11011 2007-05-01  Bruno Haible  <bruno@clisp.org>
11012
11013         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
11014         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
11015         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
11016
11017 2007-05-01  Bruno Haible  <bruno@clisp.org>
11018
11019         * doc/header/assert.texi: Undo last change: don't mention the gnulib
11020         'assert' module here.
11021
11022 2007-05-01  Bruno Haible  <bruno@clisp.org>
11023
11024         * doc/functions/*.texi: New files.
11025         * doc/functions/google-ranking.txt: New file.
11026         * doc/gnulib.texi (Function Substitutes): New chapter.
11027         (ctime, inet_ntoa): Remove sections.
11028         * doc/ctime.texi: Remove file.
11029         * doc/inet_ntoa.texi: Remove file.
11030         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
11031         dependencies.
11032         (%.info): New rule, specifying a --reference-limit.
11033
11034 2007-05-01  Bruno Haible  <bruno@clisp.org>
11035
11036         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
11037
11038 2007-05-01  Bruno Haible  <bruno@clisp.org>
11039
11040         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
11041         the portability of 'mkdir' to mingw systems.
11042
11043 2007-05-01  Bruno Haible  <bruno@clisp.org>
11044
11045         * doc/headers/google-ranking.txt: New file.
11046
11047 2007-04-30  Eric Blake  <ebb9@byu.net>
11048
11049         Prefer fseeko to fseek.
11050         * modules/getpass (Depends-on): Add fseeko.
11051         * lib/getpass.c (getpass): Use fseeko, not fseek.
11052
11053 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
11054
11055         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
11056         assumes the sorting is stable, while most qsort implementations
11057         are not.  Use argument addresses to ensure they never compare as
11058         equal.
11059
11060         * tests/test-argp-2.sh (usage-indent test): Fix output
11061         (func_compare): Restore diff options
11062         * tests/test-argp.c: Restore #include "progname.h"
11063
11064 2007-04-29  Bruno Haible  <bruno@clisp.org>
11065
11066         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
11067         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11068         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
11069         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11070         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
11071         (configure.ac): Define CHECK_SNPRINTF_POSIX.
11072         (TESTS, check_PROGRAMS): Add test-snprintf.
11073         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
11074         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
11075         (TESTS, check_PROGRAMS): Add test-vsnprintf.
11076         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
11077         assertions that fail on HP-UX, OSF/1, or IRIX.
11078         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
11079
11080 2007-04-29  Bruno Haible  <bruno@clisp.org>
11081
11082         * MODULES.html.sh (posix_functions): Remove 'contents'.
11083
11084 2007-04-29  Karl Berry  <karl@gnu.org>
11085
11086         * config/srclist.txt (gendocs_template_min): new entry.
11087
11088 2007-04-29  Bruno Haible  <bruno@clisp.org>
11089
11090         Work around fpurge bug on BSD systems.
11091         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
11092         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
11093         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
11094         fpurge to rpl_fpurge if the system already has this function.
11095         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
11096         the case where the system already has this function. Correct invariants
11097         on BSD systems.
11098         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
11099         BSD systems.
11100
11101 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
11102
11103         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
11104         proposed by Sven Verdoolaege.
11105
11106         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
11107         options.
11108         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
11109         (usage and help tests): Update
11110
11111 2007-04-29  Bruno Haible  <bruno@clisp.org>
11112
11113         * tests/test-fflush.c (main): Use a file of size 17, not 10.
11114         Print more information in case of failure. Disable a test on BeOS.
11115
11116 2007-04-29  Bruno Haible  <bruno@clisp.org>
11117
11118         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
11119         This helps debugging on systems on which no gdb is available.
11120
11121 2007-04-29  Bruno Haible  <bruno@clisp.org>
11122
11123         * lib/freading.h: Improve comments.
11124         * lib/fwriting.h: Likewise.
11125         * tests/test-freading.c (main): Don't check freading immediately after
11126         repositioning. Needed for glibc.
11127
11128 2007-04-29  Bruno Haible  <bruno@clisp.org>
11129
11130         * lib/freading.c (freading): Trivial simplification.
11131
11132 2007-04-28  Bruno Haible  <bruno@clisp.org>
11133
11134         * tests/test-fwriting.c (main): Also test the interaction between
11135         fflush and fwriting.
11136         * modules/fwriting-tests (Depends-on): Add fflush.
11137
11138         * tests/test-freading.c (main): Also test the interaction between
11139         fflush and freading.
11140         * modules/freading-tests (Depends-on): Add fflush.
11141
11142 2007-04-28  Bruno Haible  <bruno@clisp.org>
11143
11144         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
11145         fseeko and ftello.
11146         Suggested by Eric Blake.
11147
11148 2007-04-28  Jim Meyering  <jim@meyering.net>
11149
11150         Avoid false-negative in gl_STDINT_H's C99 conformance test.
11151         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
11152         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
11153
11154 2007-04-27  Eric Blake  <ebb9@byu.net>
11155
11156         * doc/headers/assert.texi (assert.h): Document assert module use.
11157
11158 2007-04-27  Bruno Haible  <bruno@clisp.org>
11159
11160         * doc/headers/*.texi: New files.
11161         * doc/gnulib.texi (Header File Substitutes): New chapter.
11162         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
11163         dependencies.
11164         (standards.info ,standards.html, standards.dvi): Update dependencies.
11165         (mostlyclean, clean): New targets.
11166
11167 2007-04-27  Bruno Haible  <bruno@clisp.org>
11168
11169         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
11170         * modules/sysexits (Files, Makefile.am): Update.
11171
11172         * lib/sys_socket_.h: Renamed from lib/socket_.h.
11173         * modules/sys_socket (Files, Makefile.am): Update.
11174
11175         * lib/sys_stat_.h: Renamed from lib/stat_.h.
11176         * modules/sys_stat (Files, Makefile.am): Update.
11177
11178 2007-04-27  Eric Blake  <ebb9@byu.net>
11179
11180         * lib/freading.h: Improve comments.
11181         * lib/fwriting.h: Likewise.
11182         * lib/fflush.c: Likewise.
11183
11184         Fix closein for mingw.
11185         * modules/closein-tests: Add tests for closein.
11186         * tests/test-closein.c: New file.
11187         * tests/test-closein.sh: Likewise.
11188         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
11189         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
11190
11191 2007-04-27  Bruno Haible  <bruno@clisp.org>
11192
11193         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
11194         version is < 6.
11195         * lib/math_.h [__DECC]: Likewise.
11196         * lib/stdio_.h [__DECC]: Likewise.
11197         * lib/stdlib_.h [__DECC]: Likewise.
11198         * lib/string_.h [__DECC]: Likewise.
11199         * lib/time_.h [__DECC]: Likewise.
11200         * lib/wchar_.h [__DECC]: Likewise.
11201         * lib/wctype_.h [__DECC]: Likewise.
11202
11203 2007-04-27  Bruno Haible  <bruno@clisp.org>
11204
11205         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
11206
11207 2007-04-27  Bruno Haible  <bruno@clisp.org>
11208
11209         * lib/fflush.c: Add comments.
11210         * modules/fpurge-tests (Depends-on): Add fflush.
11211         * modules/freadable-tests (Depends-on): Likewise.
11212         * modules/fwritable-tests (Depends-on): Likewise.
11213
11214 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
11215
11216         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
11217         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
11218         Report by Bruno Haible <bruno@clisp.org>.
11219
11220 2007-04-26  Eric Blake  <ebb9@byu.net>
11221
11222         Fix fflush on mingw.
11223         * modules/fflush (Depends-on): Add freading.
11224         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
11225         but unread data.
11226
11227 2007-04-26  Eric Blake  <ebb9@byu.net>
11228         and Bruno Haible  <bruno@clisp.org>
11229
11230         Implement freading and fwriting.
11231         * lib/freading.c: New file.
11232         * lib/freading.h: Likewise.
11233         * m4/freading.m4: Likewise.
11234         * modules/freading: Likewise.
11235         * modules/freading-tests: Likewise.
11236         * tests/test-freading.c: Likewise.
11237         * lib/fwriting.c: New file.
11238         * lib/fwriting.h: Likewise.
11239         * m4/fwriting.m4: Likewise.
11240         * modules/fwriting: Likewise.
11241         * modules/fwriting-tests: Likewise.
11242         * tests/test-fwriting.c: Likewise.
11243         * MODULES.html.sh (File stream based Input/Output): Mention them.
11244
11245 2007-04-26  Bruno Haible  <bruno@clisp.org>
11246
11247         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
11248         'long' when we assume it.
11249         Suggested by Eric Blake.
11250
11251 2007-04-26  Bruno Haible  <bruno@clisp.org>
11252
11253         Ensure fseeko, ftello are declared on glibc systems.
11254         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
11255         * modules/fseeko (configure.ac-early): Likewise.
11256         * modules/ftello (configure.ac-early): Likewise.
11257         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
11258         AC_FUNC_FSEEKO for this.
11259         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
11260         (gl_CHECK_FSEEKO): Remove macro.
11261
11262 2007-04-26  Bruno Haible  <bruno@clisp.org>
11263
11264         * tests/test-fflush.c (main): Also check the ftell result after
11265         fflush and fseek/fseeko.
11266         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
11267         file descriptor position cache in the stream.
11268         * lib/fseeko.c (rpl_fseeko): Likewise.
11269
11270 2007-04-26  Bruno Haible  <bruno@clisp.org>
11271
11272         * modules/fflush-tests (Depends-on): Add fseeko.
11273
11274 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
11275             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11276
11277         * lib/argz_.h: ensure error_t definition is obtained in same
11278         mechanism system argz.h would have.
11279         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
11280         argz facilities are known bad.  Err on the side of caution if
11281         cross-compiling.
11282
11283 2007-04-25  Eric Blake  <ebb9@byu.net>
11284
11285         * lib/fpurge.c (includes): Use stdlib.h for free.
11286         * tests/test-fflush.c (main): Also test fflush-fseeko.
11287
11288 2007-04-25  Bruno Haible  <bruno@clisp.org>
11289
11290         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
11291         * lib/fseeko.c: New file.
11292         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
11293         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
11294         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
11295         gl_FUNC_FSEEKO.
11296         (gl_FUNC_FSEEKO): Invoke it.
11297         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
11298         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
11299         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
11300
11301 2007-04-25  Bruno Haible  <bruno@clisp.org>
11302
11303         * modules/fflush (Depends-on): Add ftello.
11304
11305 2007-04-25  Bruno Haible  <bruno@clisp.org>
11306
11307         * modules/ftello-tests: New file.
11308         * tests/test-ftello.c: New file.
11309
11310         * modules/ftello: New file.
11311         * m4/ftello.m4: New file.
11312         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
11313         HAVE_FTELLO.
11314         * lib/stdio_.h (ftello): New declaration.
11315         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
11316         HAVE_FTELLO.
11317
11318 2007-04-25  Bruno Haible  <bruno@clisp.org>
11319
11320         * modules/fseeko-tests: New file.
11321         * tests/test-fseeko.c: New file.
11322
11323         * modules/fseeko: New file.
11324         * m4/fseeko.m4: New file.
11325         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
11326         HAVE_FSEEKO.
11327         * lib/stdio_.h (fseeko): New declaration.
11328         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
11329         HAVE_FSEEKO.
11330
11331 2007-04-25  Bruno Haible  <bruno@clisp.org>
11332
11333         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
11334
11335 2007-04-25  Bruno Haible  <bruno@clisp.org>
11336
11337         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
11338         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
11339         * tests/test-unistd.c: Likewise.
11340         * tests/test-fcntl.c: Likewise.
11341
11342 2007-04-23  Eric Blake  <ebb9@byu.net>
11343
11344         * lib/fflush.c: Fix missing include.
11345         Reported by Bruno Haible.
11346
11347 2007-04-23  Bruno Haible  <bruno@clisp.org>
11348
11349         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
11350         Reported by Eric Blake.
11351
11352 2007-04-23  Bruno Haible  <bruno@clisp.org>
11353
11354         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
11355
11356 2007-04-23  Bruno Haible  <bruno@clisp.org>
11357
11358         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
11359
11360 2007-04-23  Bruno Haible  <bruno@clisp.org>
11361
11362         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
11363         Needed on HP-UX 11.
11364
11365 2007-04-16  Eric Blake  <ebb9@byu.net>
11366
11367         Make fflush rely on fpurge.
11368         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
11369         open coding all variants.
11370         * modules/fflush (Depends-on): Add fpurge and unistd.
11371         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
11372         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
11373
11374         Fix --with-tests compilation on cygwin.
11375         * modules/argmatch-tests (Makefile.am): List gnulib library first
11376         in LDADD.
11377         * modules/argp-tests (Makefile.am): Likewise.
11378         * modules/array-list-tests (Makefile.am): Likewise.
11379         * modules/array-oset-tests (Makefile.am): Likewise.
11380         * modules/avltree-list-tests (Makefile.am): Likewise.
11381         * modules/avltree-oset-tests (Makefile.am): Likewise.
11382         * modules/avltreehash-list-tests (Makefile.am): Likewise.
11383         * modules/carray-list-tests (Makefile.am): Likewise.
11384         * modules/dirname-tests (Makefile.am): Likewise.
11385         * modules/frexp-tests (Makefile.am): Likewise.
11386         * modules/isnanl-tests (Makefile.am): Likewise.
11387         * modules/linked-list-tests (Makefile.am): Likewise.
11388         * modules/linkedhash-list-tests (Makefile.am): Likewise.
11389         * modules/lock-tests (Makefile.am): Likewise.
11390         * modules/rbtree-list-tests (Makefile.am): Likewise.
11391         * modules/rbtree-oset-tests (Makefile.am): Likewise.
11392         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
11393         * modules/tls-tests (Makefile.am): Likewise.
11394         * modules/tsearch-tests (Makefile.am): Likewise.
11395         * modules/xvasprintf-tests (Makefile.am): Likewise.
11396
11397         Fix fpurge for cygwin.
11398         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
11399         value.
11400         * modules/fpurge-tests (Depends-on): Clean up trash.
11401
11402 2007-04-16  Simon Josefsson  <simon@josefsson.org>
11403
11404         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
11405
11406         * m4/autobuild.m4: Re-indent.
11407
11408 2007-04-13  Bruno Haible  <bruno@clisp.org>
11409
11410         * modules/fpurge-tests: New file.
11411         * tests/test-fpurge.c: New file.
11412
11413         * modules/fpurge: New file.
11414         * lib/fpurge.h: New file.
11415         * lib/fpurge.c: New file.
11416         * m4/fpurge.m4: New file.
11417
11418 2007-04-13  Bruno Haible  <bruno@clisp.org>
11419
11420         * modules/fbufmode-tests: New file.
11421         * tests/test-fbufmode.c: New file.
11422
11423         * modules/fbufmode: New file.
11424         * lib/fbufmode.h: New file.
11425         * lib/fbufmode.c: New file.
11426         * m4/fbufmode.m4: New file.
11427
11428 2007-04-13  Bruno Haible  <bruno@clisp.org>
11429
11430         * modules/fwritable-tests: New file.
11431         * tests/test-fwritable.c: New file.
11432
11433         * modules/fwritable: New file.
11434         * lib/fwritable.h: New file.
11435         * lib/fwritable.c: New file.
11436         * m4/fwritable.m4: New file.
11437
11438 2007-04-13  Bruno Haible  <bruno@clisp.org>
11439
11440         * modules/freadable-tests: New file.
11441         * tests/test-freadable.c: New file.
11442
11443         * modules/freadable: New file.
11444         * lib/freadable.h: New file.
11445         * lib/freadable.c: New file.
11446         * m4/freadable.m4: New file.
11447
11448 2007-04-13  Bruno Haible  <bruno@clisp.org>
11449
11450         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
11451         MOSTLYCLEANFILES.
11452
11453 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
11454
11455         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
11456         gzip bootstrap.conf to avoid dragging in i18n machinery.
11457         (gnulib_tool_option): Use it.
11458
11459 2007-04-13  Bruno Haible  <bruno@clisp.org>
11460
11461         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
11462         %F directives.
11463         * tests/test-vasprintf-posix.c (test_function): Likewise.
11464         * tests/test-snprintf-posix.h (test_function): Likewise.
11465         * tests/test-sprintf-posix.h (test_function): Likewise.
11466         * tests/test-fprintf-posix.h (test_function): Likewise.
11467         * tests/test-printf-posix.h (test_function): Likewise.
11468         * tests/test-fprintf-posix.out: Likewise.
11469
11470 2007-04-13  Bruno Haible  <bruno@clisp.org>
11471
11472         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
11473         * modules/tls-tests (configure.ac): Likewise.
11474         Reported by Arto C. Nirkko <anirkko@insel.ch>.
11475
11476 2007-04-13  Bruno Haible  <bruno@clisp.org>
11477
11478         * lib/tls.c (glthread_tls_get): Fix return type.
11479         Patch by Arto C. Nirkko <anirkko@insel.ch>.
11480
11481 2007-04-12  Eric Blake  <ebb9@byu.net>
11482
11483         * modules/gettime (Depends-on): Remove gettime.
11484         Reported by Dmitry V. Levin.
11485
11486 2007-04-12  Bruno Haible  <bruno@clisp.org>
11487
11488         * modules/fflush (Include): Mention <stdio.h>.
11489         * modules/strtoimax (Include): Mention <inttypes.h>.
11490         * modules/strtoumax (Include): Likewise.
11491
11492 2007-04-12  Eric Blake  <ebb9@byu.net>
11493
11494         * .cvsignore: New file.
11495         * .gitignore: Likewise.
11496
11497 2007-04-12  Bruno Haible  <bruno@clisp.org>
11498
11499         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
11500         not before, since $(LDADD) often contains libgnu.a.
11501         * modules/striconv-tests (test_striconv_LDADD): Likewise.
11502         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
11503         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
11504         Needed on Cygwin.
11505
11506 2007-04-12  Eric Blake  <ebb9@byu.net>
11507
11508         Work around glibc's failure to flush stdin on fclose.
11509         * lib/closein.c (close_stdin): Flush stdin before closing.
11510
11511         Work around glibc's failure to reset seekable stdin on exit.
11512         * modules/closein: New module.
11513         * lib/closein.c: New file.
11514         * lib/closein.h: Likewise.
11515         * m4/closein.m4: Likewise.
11516         * MODULES.html.sh (File stream based Input/Output): Document it.
11517
11518 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11519
11520         * gnulib-tool: Rename generated 'autobuild' script to
11521         'do-autobuild' in --create-megatestdir output.
11522
11523         * doc/gnulib.texi (Build robot for gnulib): Fix.
11524
11525 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11526
11527         * modules/sysexits (Depends-on): Add absolute-header.
11528
11529 2007-04-12  Eric Blake  <ebb9@byu.net>
11530
11531         No need to preserve errno on success.
11532         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
11533         Reported by Bruno Haible.
11534
11535 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11536
11537         * MODULES.html.sh (Support for maintaining and releasing
11538         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
11539
11540 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11541
11542         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
11543
11544 2007-04-12  Simon Josefsson  <simon@josefsson.org>
11545
11546         * modules/autobuild: New module.
11547
11548         * m4/autobuild.m4: New file.
11549
11550 2007-04-11  Bruno Haible  <bruno@clisp.org>
11551
11552         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
11553         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
11554         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
11555         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
11556         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11557         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11558         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11559         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11560         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11561         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11562         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
11563         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11564         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11565         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
11566         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11567         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11568         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
11569         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11570         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11571         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
11572         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11573         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11574         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
11575         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11576         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11577         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
11578         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
11579         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
11580         Reported by Eric Blake.
11581
11582 2007-04-11  Bruno Haible  <bruno@clisp.org>
11583
11584         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
11585
11586 2007-04-10  Bruno Haible  <bruno@clisp.org>
11587
11588         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
11589         for NaN and Infinity. Needed on FreeBSD 6.1.
11590         * tests/test-vasnprintf-posix.c (test_function): Undo last change
11591         regarding results for "%010a" of Infinity and NaN.
11592         * tests/test-vasprintf-posix.c (test_function): Likewise.
11593         * tests/test-snprintf-posix.h (test_function): Likewise.
11594         * tests/test-sprintf-posix.h (test_function): Likewise.
11595         * tests/test-fprintf-posix.h (test_function): Likewise.
11596         * tests/test-printf-posix.h (test_function): Likewise.
11597         * tests/test-fprintf-posix.out: Likewise.
11598
11599 2007-04-10  Bruno Haible  <bruno@clisp.org>
11600
11601         * modules/locale-tests: New file.
11602         * tests/test-locale.c: New file.
11603
11604         * modules/locale: New file.
11605         * lib/locale_.h: New file.
11606         * m4/locale_h.m4: New file.
11607
11608 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
11609             Bruno Haible  <bruno@clisp.org>
11610
11611         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
11612         be determined, test for availability of the copysignf, copysign,
11613         copysignl functions.
11614         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
11615         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
11616         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
11617
11618 2007-04-09  Eric Blake  <ebb9@byu.net>
11619
11620         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
11621         * modules/stdio (Makefile.am): Support fflush.
11622         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11623         * modules/fflush: New file.
11624         * lib/fflush.c: Likewise.
11625         * m4/fflush.m4: Likewise.
11626         * modules/fflush-tests: New test.
11627         * tests/test-fflush.c: Likewise.
11628         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
11629
11630 2007-04-06  Bruno Haible  <bruno@clisp.org>
11631
11632         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
11633         (VASNPRINTF): Use signbit for faster determination whether to print a
11634         minus sign.
11635         * modules/vasnprintf (Files): Remove lib/float+.h.
11636         * modules/fprintf-posix (Depends-on): Add signbit.
11637         * modules/snprintf-posix (Depends-on): Likewise.
11638         * modules/sprintf-posix (Depends-on): Likewise.
11639         * modules/vasnprintf-posix (Depends-on): Likewise.
11640         * modules/vasprintf-posix (Depends-on): Likewise.
11641         * modules/vfprintf-posix (Depends-on): Likewise.
11642         * modules/vsnprintf-posix (Depends-on): Likewise.
11643         * modules/vsprintf-posix (Depends-on): Likewise.
11644
11645 2007-04-06  Bruno Haible  <bruno@clisp.org>
11646
11647         * tests/test-frexp.c (main): Test also the sign bit of zero results.
11648         * tests/test-frexpl.c (main): Likewise.
11649         * tests/test-ldexpl.c (main): Likewise.
11650         * modules/frexp-tests (Depends-on): Add signbit.
11651         * modules/frexpl-tests (Depdends-on): Likewise.
11652         * modules/ldexpl-tests (Depdends-on): Likewise.
11653
11654 2007-04-06  Bruno Haible  <bruno@clisp.org>
11655
11656         * modules/signbit-tests: New file.
11657         * tests/test-signbit.c: New file.
11658
11659         * modules/signbit: New file.
11660         * lib/signbitf.c: New file.
11661         * lib/signbitd.c: New file.
11662         * lib/signbitl.c: New file.
11663         * m4/signbit.m4: New file.
11664         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
11665         (signbit): New macro.
11666         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
11667         REPLACE_SIGNBIT.
11668         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
11669         REPLACE_FREXPL into math.h.
11670
11671 2007-04-06  Bruno Haible  <bruno@clisp.org>
11672
11673         * modules/isnanf-nolibm-tests: New file.
11674         * tests/test-isnanf.c: New file.
11675
11676         * modules/isnanf-nolibm: New file.
11677         * lib/isnanf.h: New file.
11678         * lib/isnanf.c: New file.
11679         * lib/isnan.c: Consider the USE_FLOAT macro.
11680         * m4/isnanf.m4: New file.
11681
11682 2007-04-06  Bruno Haible  <bruno@clisp.org>
11683
11684         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
11685         (Link): New section.
11686
11687         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
11688
11689 2007-04-06  Bruno Haible  <bruno@clisp.org>
11690
11691         Assume the 'long double' type.
11692         * m4/longdouble.m4: Remove file.
11693         * config/srclist.txt: Don't mention longdouble.m4.
11694         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
11695         * lib/float+.h: Likewise.
11696         * lib/frexp.c: Likewise.
11697         * lib/printf-args.h: Likewise.
11698         * lib/printf-args.c: Likewise.
11699         * lib/printf-frexp.c: Likewise.
11700         * lib/printf-parse.c: Likewise.
11701         * lib/vasnprintf.c: Likewise.
11702         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
11703         * m4/intl.m4: Likewise.
11704         * m4/isnanl.m4: Likewise.
11705         * m4/printf.m4: Likewise.
11706         * m4/printf-frexpl.m4: Likewise.
11707         * m4/vasnprintf.m4: Likewise.
11708         * modules/allocsa (Files): Remove m4/longdouble.m4.
11709         * modules/gettext (Files): Likewise.
11710         * modules/relocatable-prog-wrapper (Files): Likewise.
11711         * modules/vasnprintf (Files): Likewise.
11712         * modules/isnanl (Files): Likewise.
11713         (Include): Simplify.
11714         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
11715         (Include): Simplify.
11716         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
11717         (Include): Simplify.
11718         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
11719         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11720         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
11721         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11722         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
11723         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11724         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
11725         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11726         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
11727         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11728         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
11729         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
11730         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
11731         * tests/test-isnanl.c: Likewise.
11732         * tests/test-snprintf-posix.h: Likewise.
11733         * tests/test-sprintf-posix.h: Likewise.
11734         * tests/test-vasnprintf-posix.c: Likewise.
11735         * tests/test-vasnprintf-posix2.c: Likewise.
11736         * tests/test-vasprintf-posix.c: Likewise.
11737
11738 2007-04-06  Bruno Haible  <bruno@clisp.org>
11739
11740         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
11741         * lib/math_.h [__DECC]: Include the overridden include file through
11742         #include_next, outside the double-inclusion guard.
11743         * lib/stdio_.h [__DECC]: Likewise.
11744         * lib/stdlib_.h [__DECC]: Likewise.
11745         * lib/string_.h [__DECC]: Likewise.
11746         * lib/time_.h [__DECC]: Likewise.
11747         * lib/wchar_.h [__DECC]: Likewise.
11748         * lib/wctype_.h [__DECC]: Likewise.
11749         * lib/inttypes_.h [__DECC]: Likewise.
11750         Reported by Albert Chin <china@thewrittenword.com> in
11751         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
11752
11753 2007-04-04  Eric Blake  <ebb9@byu.net>
11754
11755         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
11756         1.5.x.
11757
11758 2007-04-04  Bruno Haible  <bruno@clisp.org>
11759
11760         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
11761         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
11762
11763 2007-04-04  Bruno Haible  <bruno@clisp.org>
11764
11765         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
11766         results for "%010a" of Infinity and NaN.
11767         * tests/test-vasprintf-posix.c (test_function): Likewise.
11768         * tests/test-snprintf-posix.h (test_function): Likewise.
11769         * tests/test-sprintf-posix.h (test_function): Likewise.
11770         * tests/test-fprintf-posix.h (test_function): Remove these tests.
11771         * tests/test-printf-posix.h (test_function): Likewise.
11772         * tests/test-fprintf-posix.out: Update.
11773         Needed for FreeBSD 6.1.
11774
11775 2007-04-04  Bruno Haible  <bruno@clisp.org>
11776
11777         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
11778         directly used by the gnulib modules nor by gnulib-tool.
11779
11780 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
11781
11782         * DEPENDENCIES: Give overall description of version dependency
11783         desirability.  Use more-typical names for apps.
11784         Add shell, coreutils, diffutils, grep, tar, gzip.
11785
11786 2007-04-04  Simon Josefsson  <simon@josefsson.org>
11787
11788         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
11789
11790 2007-04-04  Karl Berry  <karl@gnu.org>
11791
11792         * MODULES.html.sh (func_module): missing '.
11793
11794 2007-04-03  Bruno Haible  <bruno@clisp.org>
11795
11796         * modules/argmatch-tests (Makefile.am): New variable
11797         test_argmatch_LDADD.
11798         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
11799         * modules/array-list-tests (Makefile.am): New variable
11800         test_array_list_LDADD.
11801         * modules/array-oset-tests (Makefile.am): New variable
11802         test_array_oset_LDADD.
11803         * modules/avltree-list-tests (Makefile.am): New variable
11804         test_avltree_list_LDADD.
11805         * modules/avltree-oset-tests (Makefile.am): New variable
11806         test_avltree_oset_LDADD.
11807         * modules/avltreehash-list-tests (Makefile.am): New variable
11808         test_avltreehash_list_LDADD.
11809         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
11810         test_canonicalize_lgpl_LDADD.
11811         * modules/carray-list-tests (Makefile.am): New variable
11812         test_carray_list_LDADD.
11813         * modules/dirname-tests (Makefile.am): New variable
11814         test_dirname_LDADD.
11815         * modules/linked-list-tests (Makefile.am): New variable
11816         test_linked_list_LDADD.
11817         * modules/linkedhash-list-tests (Makefile.am): New variable
11818         test_linkedhash_list_LDADD.
11819         * modules/rbtree-list-tests (Makefile.am): New variable
11820         test_rbtree_list_LDADD.
11821         * modules/rbtree-oset-tests (Makefile.am): New variable
11822         test_rbtree_oset_LDADD.
11823         * modules/rbtreehash-list-tests (Makefile.am): New variable
11824         test_rbtreehash_list_LDADD.
11825         * modules/xvasprintf-tests (Makefile.am): New variable
11826         test_xvasprintf_LDADD.
11827         Reported by Eric Blake.
11828
11829 2007-04-03  Eric Blake  <ebb9@byu.net>
11830
11831         * DEPENDENCIES: Weaken m4 requirements.
11832
11833 2007-04-03  Bruno Haible  <bruno@clisp.org>
11834
11835         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
11836         * modules/isnanl-tests (configure.ac): Likewise.
11837
11838 2007-04-03  Ben Pfaff  <blp@gnu.org>
11839
11840         * modules/iconv_open: Add $(srcdir)/ to source directory
11841         references in Makefile fragments that call gperf, to fix VPATH
11842         builds.
11843
11844 2007-04-03  Bruno Haible  <bruno@clisp.org>
11845
11846         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
11847         * lib/ldexpl.c: Undo last change.
11848
11849 2007-04-03  Bruno Haible  <bruno@clisp.org>
11850
11851         * modules/printf-frexpl (Depends-on): Undo last change.
11852         (Files): Add m4/ldexpl.m4.
11853
11854 2007-04-03  Bruno Haible  <bruno@clisp.org>
11855
11856         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
11857         * modules/isnanl (Link): New section.
11858
11859         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
11860         * modules/frexp (Link): New section.
11861
11862         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
11863         * modules/frexpl (Link): New section.
11864
11865         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
11866         * modules/ldexpl (Link): New section.
11867
11868 2007-04-03  Bruno Haible  <bruno@clisp.org>
11869
11870         * modules/TEMPLATE-EXTENDED: New file.
11871         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
11872
11873 2007-04-03  Bruno Haible  <bruno@clisp.org>
11874
11875         * DEPENDENCIES: New file.
11876         Suggested by Simon Josefsson.
11877
11878 2007-04-03  Bruno Haible  <bruno@clisp.org>
11879
11880         * doc/gnulib.texi: Escape @.
11881
11882 2007-04-03  James Youngman  <jay@gnu.org>
11883         and Paul Eggert  <eggert@cs.ucla.edu>
11884
11885         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
11886         birthtime on all systems that have birthtime, not just those which
11887         use st_birthtimensec rather than st_birthtim.  Putting zero in
11888         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
11889         that the birth time is not available for files on an NFS mount.
11890
11891 2007-04-03  Simon Josefsson  <simon@josefsson.org>
11892
11893         * modules/memxor: Move back from crypto/, suggested by Bruno.
11894         * modules/crypto/hmac-sha1: Fix memxor dependency.
11895
11896         * modules/crypto/gc: Moved from ../.
11897
11898 2007-04-02  Eric Blake  <ebb9@byu.net>
11899
11900         * lib/ldexpl.c (includes): Avoid libm.
11901
11902         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
11903
11904 2007-04-02  Bruno Haible  <bruno@clisp.org>
11905
11906         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
11907         on IRIX.
11908
11909 2007-04-02  Bruno Haible  <bruno@clisp.org>
11910
11911         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
11912         x86 or x86_64 platforms running MacOS X.
11913         Reported by Ryan Schmidt <@ryandesign.com>.
11914
11915 2007-04-02  Bruno Haible  <bruno@clisp.org>
11916
11917         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
11918         i386.
11919
11920 2007-04-01  Simon Josefsson  <simon@josefsson.org>
11921
11922         * modules/crypto/arcfour: Moved from ../.
11923         * modules/crypto/arcfour-tests: Moved from ../.
11924         * modules/crypto/arctwo: Moved from ../.
11925         * modules/crypto/arctwo-tests: Moved from ../.
11926         * modules/crypto/des: Moved from ../.
11927         * modules/crypto/des-tests: Moved from ../.
11928         * modules/crypto/gc-arcfour: Moved from ../.
11929         * modules/crypto/gc-arcfour-tests: Moved from ../.
11930         * modules/crypto/gc-arctwo: Moved from ../.
11931         * modules/crypto/gc-arctwo-tests: Moved from ../.
11932         * modules/crypto/gc-des: Moved from ../.
11933         * modules/crypto/gc-des-tests: Moved from ../.
11934         * modules/crypto/gc-hmac-md5: Moved from ../.
11935         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
11936         * modules/crypto/gc-hmac-sha1: Moved from ../.
11937         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
11938         * modules/crypto/gc-md2: Moved from ../.
11939         * modules/crypto/gc-md2-tests: Moved from ../.
11940         * modules/crypto/gc-md4: Moved from ../.
11941         * modules/crypto/gc-md4-tests: Moved from ../.
11942         * modules/crypto/gc-md5: Moved from ../.
11943         * modules/crypto/gc-md5-tests: Moved from ../.
11944         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
11945         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
11946         * modules/crypto/gc-random: Moved from ../.
11947         * modules/crypto/gc-rijndael: Moved from ../.
11948         * modules/crypto/gc-rijndael-tests: Moved from ../.
11949         * modules/crypto/gc-sha1: Moved from ../.
11950         * modules/crypto/gc-sha1-tests: Moved from ../.
11951         * modules/crypto/gc-tests: Moved from ../.
11952         * modules/crypto/hmac-md5: Moved from ../.
11953         * modules/crypto/hmac-md5-tests: Moved from ../.
11954         * modules/crypto/hmac-sha1: Moved from ../.
11955         * modules/crypto/hmac-sha1-tests: Moved from ../.
11956         * modules/crypto/md2: Moved from ../.
11957         * modules/crypto/md2-tests: Moved from ../.
11958         * modules/crypto/md4: Moved from ../.
11959         * modules/crypto/md4-tests: Moved from ../.
11960         * modules/crypto/md5: Moved from ../.
11961         * modules/crypto/md5-tests: Moved from ../.
11962         * modules/crypto/memxor: Moved from ../.
11963         * modules/crypto/rijndael: Moved from ../.
11964         * modules/crypto/rijndael-tests: Moved from ../.
11965         * modules/crypto/sha1: Moved from ../.
11966
11967 2007-03-30  James Youngman  <jay@gnu.org>
11968
11969         * tests/test-stat-time.c (prepare_test): use chmod() rather than
11970         rename() to change the ctime of a file (because ctime is unaffected
11971         by rename on jfs2 on AIX 5.1).
11972         (main): Start by doing cleanup, in case a previous run failed leaving
11973         test files behind.
11974
11975 2007-03-31  Bruno Haible  <bruno@clisp.org>
11976
11977         Support old proprietary implementations of iconv.
11978         * modules/iconv_open: New file.
11979         * lib/iconv_.h: New file.
11980         * m4/iconv_h.m4: New file.
11981         * lib/iconv_open.c: New file.
11982         * lib/iconv_open-aix.gperf: New file.
11983         * lib/iconv_open-hpux.gperf: New file.
11984         * lib/iconv_open-irix.gperf: New file.
11985         * lib/iconv_open-osf.gperf: New file.
11986         * m4/iconv_open.m4: New file.
11987         * modules/linebreak (Depends-on): Add iconv_open.
11988         * modules/striconv (Depends-on): Likewise.
11989         * modules/striconveh (Depends-on): Likewise.
11990         * modules/unicodeio (Depends-on): Likewise.
11991         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
11992         (iconv_t)(-1).
11993         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
11994         conversion if cd is (iconv_t)(-1).
11995         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
11996         is not possible.
11997
11998 2007-03-31  Bruno Haible  <bruno@clisp.org>
11999
12000         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
12001         work on Solaris either. Protect also second use of "autodetect_jp".
12002
12003 2007-03-31  Bruno Haible  <bruno@clisp.org>
12004
12005         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
12006         the function is not present.
12007
12008 2007-03-31  Bruno Haible  <bruno@clisp.org>
12009
12010         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
12011         the function is not present.
12012
12013 2007-03-31  Bruno Haible  <bruno@clisp.org>
12014
12015         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
12016         a bug in HP-UX iconv_open().
12017
12018 2007-03-31  Bruno Haible  <bruno@clisp.org>
12019
12020         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
12021         (Mathematics <math.h>): New section, add fpieee.
12022         (Input/output <stdio.h>): Add fseterr.
12023         (Mathematics <math.h>): New section, add printf-frexp.
12024         (Container data structures): Add sublist.
12025         (Core language properties): Add fpucw, inline.
12026         (Functions for greatest-width integer types <inttypes.h>): Add
12027         imaxabs, imaxdiv, inttypes.
12028         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
12029         isnanl-nolibm, ldexp.
12030         (Mathematics <math.h>): New section, add printf-frexpl.
12031         (Support for systems lacking POSIX:2001): Add fprintf-posix,
12032         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
12033         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
12034         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
12035         (Unicode string functions): Add unistr/u*-mbtoucr.
12036         (Java): Add javacomp-script, javaexec-script.
12037         (C#): Add csharpcomp-script, csharpexec-script.
12038         (Support for building libraries and executables): Add havelib,
12039         relocatable-*.
12040         (Support for maintaining and releasing projects): Renamed from
12041         'Support for maintaining and release projects'. Add announce-gen.
12042
12043 2007-03-31  Bruno Haible  <bruno@clisp.org>
12044
12045         * README: Talk primarily about git.
12046         (git and CVS): Renamed from CVS.
12047         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
12048         gnulib is available through git.
12049         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
12050
12051 2007-03-30  Bruno Haible  <bruno@clisp.org>
12052
12053         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
12054         * lib/poll_.h: Likewise.
12055         * lib/stat_.h: Likewise.
12056         * lib/sys_time_.h: Likewise.
12057         * lib/sysexit_.h: Likewise.
12058         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
12059         * lib/stdbool_.h: Likewise.
12060         * lib/byteswap_.h: Add double-inclusion guard.
12061
12062 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
12063
12064         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
12065
12066 2007-03-30  Karl Berry  <karl@gnu.org>
12067
12068         * config/srclist-update: double space after USA in the license
12069         substitution, since that's how it's usually (?) written.
12070
12071 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
12072
12073         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
12074         reported by Bruno Haible.
12075
12076 2007-03-29  Bruno Haible  <bruno@clisp.org>
12077
12078         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
12079         a bug in AIX iconv().
12080
12081 2007-03-29  Bruno Haible  <bruno@clisp.org>
12082
12083         * modules/ldexpl-tests: New file.
12084         * tests/test-ldexpl.c: New file.
12085
12086 2007-03-29  Bruno Haible  <bruno@clisp.org>
12087
12088         * lib/ldexpl.c: Include fpucw.h.
12089         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
12090         multiplication.
12091         * modules/ldexpl (Depends-on): Add fpucw.
12092
12093 2007-03-29  Bruno Haible  <bruno@clisp.org>
12094
12095         * modules/ldexpl: New file.
12096         * m4/ldexpl.m4: New file.
12097         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
12098         set.
12099         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
12100         REPLACE_LDEXPL.
12101         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
12102         REPLACE_LDEXPL.
12103         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
12104         gl_FUNC_LDEXPL_WORKS.
12105         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
12106         * modules/mathl (Files): Remove lib/ldexpl.c.
12107         (Depends-on): Add ldexpl.
12108
12109 2007-03-29  Bruno Haible  <bruno@clisp.org>
12110
12111         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
12112
12113 2007-03-29  Bruno Haible  <bruno@clisp.org>
12114
12115         * tests/test-striconveh.c (main): Don't assume that a direct conversion
12116         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
12117         and possibly also HP-UX.
12118         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
12119         work on AIX, IRIX, HP-UX, OSF/1.
12120         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
12121         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
12122         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
12123         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
12124         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
12125         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
12126
12127 2007-03-29  Bruno Haible  <bruno@clisp.org>
12128
12129         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
12130
12131 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
12132
12133         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
12134         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
12135
12136 2007-03-29  Eric Blake  <ebb9@byu.net>
12137
12138         * lib/acl-internal.h: Remove redundant include.
12139         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
12140         Cygwin when a file is locked.
12141
12142 2007-03-29  Bruno Haible  <bruno@clisp.org>
12143
12144         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
12145         file.
12146         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
12147
12148 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
12149
12150         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
12151         try to remove a parent directory if the child couldn't be removed
12152         (except for the first rmdir, which could fail because the child
12153         doesn't exist).  Problem reported by Jeff Blaine in
12154         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
12155
12156 2007-03-28  Bruno Haible  <bruno@clisp.org>
12157
12158         * lib/striconveh.c (utf8conv_carefully): New function.
12159         (mem_cd_iconveh_internal): Invoke it.
12160
12161 2007-03-28  Bruno Haible  <bruno@clisp.org>
12162
12163         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
12164         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
12165         input.
12166         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
12167         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
12168         unistr/u8-uctomb.
12169
12170 2007-03-28  Bruno Haible  <bruno@clisp.org>
12171
12172         * modules/unistr/u8-mbtoucr: New file.
12173         * lib/unistr/u8-mbtoucr.c: New file.
12174         * modules/unistr/u16-mbtoucr: New file.
12175         * lib/unistr/u16-mbtoucr.c: New file.
12176         * modules/unistr/u16-mbtoucr: New file.
12177         * lib/unistr/u16-mbtoucr.c: New file.
12178         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
12179
12180 2007-03-27  Simon Josefsson  <simon@josefsson.org>
12181             Bruno Haible  <bruno@clisp.org>
12182
12183         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
12184         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
12185         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
12186
12187         * m4/stdio_h.m4: Add stubs for vasprintf too.
12188
12189         * modules/stdio: Support vasprintf in sed command.
12190
12191         * modules/vasprintf: Depend on stdio for prototypes.  Remove
12192         vasprintf.h.  Add stdio module indicator.
12193
12194         * lib/stdio_.h: Declare asprintf and vasprintf, based on
12195         vasprintf.h.
12196
12197         * lib/vasprintf.h: File removed.
12198
12199         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
12200         * lib/vasprintf.c: Ditto.
12201         * lib/xvasprintf.c: Ditto.
12202         * tests/test-vasprintf-posix.c: Ditto.
12203         * tests/test-vasprintf.c: Ditto.
12204
12205 2007-03-27  Bruno Haible  <bruno@clisp.org>
12206
12207         Make vasnprintf multithread-safe.
12208         * lib/vasnprintf.c (decimal_point_char): New function.
12209         (VASNPRINTF): Use it.
12210         Suggested by Simon Josefsson.
12211
12212 2007-03-27  Eric Blake  <ebb9@byu.net>
12213
12214         Support sub-second birthtime on cygwin.
12215         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
12216         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
12217         (get_stat_birthtime): Also work with st_birthtim.
12218
12219 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
12220
12221         * lib/stat-time.h (USE_BIRTHTIME): Remove.
12222         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
12223         (get_stat_birthtime_ns): Do not try to use "spare" fields.
12224         (get_stat_birthtime_ns): Simplify compile-time tests.
12225         (get_stat_birthtime): Change the API to look like
12226         get_stat_mtime etc., except return a negative tv_nsec on error.
12227         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
12228         Don't check for "spare" fields.
12229         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
12230         or for struct stat.st_birthtime, as these tests aren't used.
12231         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
12232
12233 2007-03-27  Bruno Haible  <bruno@clisp.org>
12234
12235         * lib/stat-time.h: Include <sys/stat.h>.
12236
12237 2007-03-27  James Youngman  <jay@gnu.org>
12238
12239         * lib/stat-time.h (get_stat_birthtime): New function for
12240           retrieving st_birthtime as provided by UFS2 (hence *BSD).
12241         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
12242           and its variants.
12243         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
12244         * modules/stat-time-test: New file.
12245         * tests/test-stat-time.c: New test, devised by Bruno Haible.
12246
12247 2007-03-26  Bruno Haible  <bruno@clisp.org>
12248
12249         Better support of signalling NaNs.
12250         * lib/atanl.c: Include isnanl.h.
12251         (atanl): Perform test for NaN at the beginning of the function and
12252         through a call to isnanl.
12253         * lib/cosl.c: Include isnanl.h.
12254         (cosl): Perform test for NaN at the beginning of the function and
12255         through a call to isnanl.
12256         * lib/ldexpl.c: Include isnanl.h.
12257         (ldexpl): Perform test for NaN through a call to isnanl.
12258         * lib/logl.c: Include isnanl.h.
12259         (logl): Perform test for NaN at the beginning of the function and
12260         through a call to isnanl.
12261         * lib/sinl.c: Include isnanl.h.
12262         (sinl): Perform test for NaN at the beginning of the function and
12263         through a call to isnanl.
12264         * lib/sqrtl.c: Include isnanl.h.
12265         (sqrtl): Perform test for NaN at the beginning of the function and
12266         through a call to isnanl.
12267         * lib/tanl.c: Include isnanl.h.
12268         (tanl): Perform test for NaN at the beginning of the function and
12269         through a call to isnanl.
12270         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
12271         * modules/mathl (Depends-on): Add isnanl.
12272
12273 2007-03-26  Eric Blake  <ebb9@byu.net>
12274
12275         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
12276         regression in logic sense of previous patch.
12277
12278 2007-03-26  Bruno Haible  <bruno@clisp.org>
12279
12280         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
12281         unportable shell command "if ! ...".
12282         Reported by Ralf Wildenhues.
12283
12284 2007-03-25  Bruno Haible  <bruno@clisp.org>
12285
12286         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
12287         <sysexits.h> file, and only add EX_CONFIG.
12288         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
12289         absolute file name and whether it is sufficient. Substitute also
12290         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
12291         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
12292         ABSOLUTE_SYSEXITS_H into sysexits.h.
12293
12294 2007-03-25  Bruno Haible  <bruno@clisp.org>
12295
12296         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
12297         hints is NULL.
12298
12299 2007-03-25  Bruno Haible  <bruno@clisp.org>
12300
12301         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
12302         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
12303
12304 2007-03-25  Bruno Haible  <bruno@clisp.org>
12305
12306         * lib/vasnprintf.c: Include langinfo.h.
12307         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
12308         multithread-safe.
12309         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
12310         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
12311         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12312         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12313         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12314         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12315         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12316         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
12317         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12318         Reported by Simon Josefsson.
12319
12320 2007-03-25  Bruno Haible  <bruno@clisp.org>
12321
12322         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
12323         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
12324         * modules/vasnprintf (Depends-on): Add stdint.
12325
12326 2007-03-25  Bruno Haible  <bruno@clisp.org>
12327
12328         * modules/fpieee: New file.
12329         * m4/fpieee.m4: New file.
12330         * modules/isnan-nolibm (Depends-on): Add fpieee.
12331         * modules/isnanl-nolibm (Depends-on): Add fpieee.
12332         * modules/isnanl (Depends-on): Add fpieee.
12333
12334 2007-03-25  Bruno Haible  <bruno@clisp.org>
12335
12336         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
12337
12338 2007-03-25  Bruno Haible  <bruno@clisp.org>
12339
12340         Avoid test failures on IRIX 6.5.
12341         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
12342         (main): Use it.
12343         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
12344         macros.
12345         (main): Use them.
12346
12347 2007-03-25  Bruno Haible  <bruno@clisp.org>
12348
12349         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
12350         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
12351         exists but doesn't work.
12352         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
12353         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
12354         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
12355         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
12356
12357 2007-03-25  Bruno Haible  <bruno@clisp.org>
12358
12359         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
12360         returns inf. Needed on IRIX 6.5.
12361
12362 2007-03-25  Bruno Haible  <bruno@clisp.org>
12363
12364         * tests/test-frexpl.c: Include isnanl-nolibm.h.
12365         (main): Use isnanl instead of x != x idiom.
12366         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
12367
12368         * tests/test-frexp.c: Include isnan.h.
12369         (main): Use isnan instead of x != x idiom.
12370         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
12371
12372 2007-03-25  Bruno Haible  <bruno@clisp.org>
12373
12374         * tests/test-frexp.c (NaN): New function/macro.
12375         (main): Use it instead of 0.0 / 0.0.
12376         * tests/test-isnan.c (NaN): New function/macro.
12377         (main): Use it instead of 0.0 / 0.0.
12378         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
12379         (test_function): Use it instead of 0.0 / 0.0.
12380         * tests/test-vasprintf-posix.c (NaN): New function/macro.
12381         (test_function): Use it instead of 0.0 / 0.0.
12382         * tests/test-snprintf-posix.h (NaN): New function/macro.
12383         (test_function): Use it instead of 0.0 / 0.0.
12384         * tests/test-sprintf-posix.h (NaN): New function/macro.
12385         (test_function): Use it instead of 0.0 / 0.0.
12386         * tests/test-fprintf-posix.h (NaN): New function/macro.
12387         (test_function): Use it instead of 0.0 / 0.0.
12388         * tests/test-printf-posix.h (NaN): New function/macro.
12389         (test_function): Use it instead of 0.0 / 0.0.
12390
12391         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
12392
12393 2007-03-25  Bruno Haible  <bruno@clisp.org>
12394
12395         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
12396
12397 2007-03-25  Bruno Haible  <bruno@clisp.org>
12398
12399         * lib/regexec.c (merge_state_with_log): Make static.
12400
12401 2007-03-25  Bruno Haible  <bruno@clisp.org>
12402
12403         * lib/trigl.c (kernel_rem_pio2): Make static.
12404
12405 2007-03-25  Bruno Haible  <bruno@clisp.org>
12406
12407         * lib/sincosl.c (sincosl_table): Make static.
12408
12409 2007-03-25  Bruno Haible  <bruno@clisp.org>
12410
12411         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
12412         if the compiler does not support C99.
12413
12414 2007-03-25  Bruno Haible  <bruno@clisp.org>
12415
12416         * modules/time (Makefile.am): Ensure all rule action lines start with a
12417         tab.
12418
12419 2007-03-24  Bruno Haible  <bruno@clisp.org>
12420
12421         * modules/tsearch-tests: New file.
12422         * tests/test-tsearch.sh: New file.
12423         * tests/test-tsearch.c: New file, mostly copied from glibc.
12424
12425         * modules/search-tests: New file.
12426         * tests/test-search.c: New file.
12427
12428         * modules/search: New file.
12429         * lib/search_.h: New file, incorporating lib/tsearch.h.
12430         * m4/search_h.m4: New file.
12431         * lib/tsearch.h: Remove file.
12432         * lib/tsearch.c: Include search.h instead of tsearch.h.
12433         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
12434         HAVE_TSEARCH.
12435         * modules/tsearch (Files): Remove lib/tsearch.h.
12436         (Depends-on): Add search.
12437         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
12438         (Include): Change tsearch.h into search.h.
12439
12440 2007-03-24  Bruno Haible  <bruno@clisp.org>
12441
12442         * modules/fpucw: New file.
12443         * lib/fpucw.h: New file.
12444         * lib/frexp.c: Include fpucw.h.
12445         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
12446         (FUNC): Use them.
12447         * lib/printf-frexp.c: Include fpucw.h.
12448         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
12449         (FUNC): Use them.
12450         * lib/vasnprintf.c: Include fpucw.h.
12451         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
12452         'long double' calculations.
12453         * tests/test-frexpl.c: Include fpucw.h.
12454         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
12455         * tests/test-printf-frexpl.c: Include fpucw.h.
12456         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
12457         * modules/frexpl (Depends-on): Add fpucw.
12458         * modules/printf-frexpl (Depends-on): Likewise.
12459         * modules/fprintf-posix (Depends-on): Likewise.
12460         * modules/snprintf-posix (Depends-on): Likewise.
12461         * modules/sprintf-posix (Depends-on): Likewise.
12462         * modules/vasnprintf-posix (Depends-on): Likewise.
12463         * modules/vasprintf-posix (Depends-on): Likewise.
12464         * modules/vfprintf-posix (Depends-on): Likewise.
12465         * modules/vsnprintf-posix (Depends-on): Likewise.
12466         * modules/vsprintf-posix (Depends-on): Likewise.
12467         * modules/frexpl-tests (Depends-on): Likewise.
12468         * modules/printf-frexpl-tests (Depends-on): Likewise.
12469
12470 2007-03-24  Bruno Haible  <bruno@clisp.org>
12471
12472         * lib/float+.h: New file.
12473         * lib/isnan.c: Include float+.h.
12474         (SIZE): New macro.
12475         (FUNC): Compare only SIZE bytes of the value.
12476         * lib/vasnprintf.c: Include float+.h.
12477         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
12478         SIZEOF_LDBL or SIZEOF_DBL bytes.
12479         * modules/isnan-nolibm (Files): Add lib/float+.h.
12480         * modules/isnanl-nolibm (Files): Add lib/float+.h.
12481         * modules/isnanl (Files): Add lib/float+.h.
12482         * modules/vasnprintf (Files): Add lib/float+.h.
12483
12484 2007-03-24  Bruno Haible  <bruno@clisp.org>
12485
12486         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
12487         include isnanl-nolibm.h.
12488
12489 2007-03-24  Bruno Haible  <bruno@clisp.org>
12490
12491         * tests/test-read-file.c (main): Don't produce spurious output for
12492         expected situations. Make the test fail if it encountered unexpected
12493         results.
12494
12495 2007-03-24  Bruno Haible  <bruno@clisp.org>
12496
12497         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
12498         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
12499
12500 2007-03-24  Bruno Haible  <bruno@clisp.org>
12501
12502         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
12503
12504 2007-03-24  Bruno Haible  <bruno@clisp.org>
12505
12506         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
12507         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
12508
12509         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
12510         * modules/utf8-ucs4: Turn into a symbolic link to module
12511         unistr/u8-mbtouc.
12512
12513         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
12514         utf8-ucs4-unsafe.
12515         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
12516         unistr/u8-mbtouc-unsafe.
12517
12518         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
12519         * modules/utf16-ucs4: Turn into a symbolic link to module
12520         unistr/u16-mbtouc.
12521
12522         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
12523         utf16-ucs4-unsafe.
12524         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
12525         unistr/u16-mbtouc-unsafe.
12526
12527         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
12528         * modules/ucs4-utf8: Turn into a symbolic link to module
12529         unistr/u8-ubtomb.
12530
12531         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
12532         * modules/ucs4-utf16: Turn into a symbolic link to module
12533         unistr/u16-ubtomb.
12534
12535 2007-03-24  Bruno Haible  <bruno@clisp.org>
12536
12537         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
12538         Enable the function only if HAVE_INLINE.
12539         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
12540         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12541         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
12542         Enable the function only if HAVE_INLINE.
12543         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
12544         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
12545         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
12546         Enable the function only if HAVE_INLINE.
12547         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
12548         Enable the function only if HAVE_INLINE.
12549         * modules/utf8-ucs4: Update.
12550         * modules/utf8-ucs4-unsafe: Update.
12551         * modules/utf16-ucs4: Update.
12552         * modules/utf16-ucs4-unsafe: Update.
12553         * modules/ucs4-utf8: Update.
12554         * modules/ucs4-utf16: Update.
12555
12556 2007-03-24  Bruno Haible  <bruno@clisp.org>
12557
12558         * lib/utf8-ucs4.h: Remove file.
12559         * lib/utf8-ucs4-unsafe.h: Remove file.
12560         * lib/utf16-ucs4.h: Remove file.
12561         * lib/utf16-ucs4-unsafe.h: Remove file.
12562         * lib/ucs4-utf8.h: Remove file.
12563         * lib/ucs4-utf16.h: Remove file.
12564         * lib/unistr.h: Include their previous contents.
12565         * m4/utf-ucs4.m4: Remove file.
12566         * m4/ucs4-utf.m4: Remove file.
12567         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
12568         (Depends-on): Add unistr/base.
12569         (configure.ac): Remove gl_UTF_UCS4.
12570         (Makefile.am): Update.
12571         (Include): Change to unistr.h.
12572         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
12573         (Depends-on): Add unistr/base.
12574         (configure.ac): Remove gl_UTF_UCS4.
12575         (Makefile.am): Update.
12576         (Include): Change to unistr.h.
12577         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
12578         (Depends-on): Add unistr/base.
12579         (configure.ac): Remove gl_UTF_UCS4.
12580         (Makefile.am): Update.
12581         (Include): Change to unistr.h.
12582         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
12583         (Depends-on): Add unistr/base.
12584         (configure.ac): Remove gl_UTF_UCS4.
12585         (Makefile.am): Update.
12586         (Include): Change to unistr.h.
12587         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
12588         (Depends-on): Add unistr/base.
12589         (configure.ac): Remove gl_UCS4_UTF.
12590         (Makefile.am): Update.
12591         (Include): Change to unistr.h.
12592         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
12593         (Depends-on): Add unistr/base.
12594         (configure.ac): Remove gl_UCS4_UTF.
12595         (Makefile.am): Update.
12596         (Include): Change to unistr.h.
12597         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
12598         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
12599         utf8-ucs4-unsafe.h.
12600         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
12601         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
12602         utf16-ucs4-unsafe.h.
12603         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
12604         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
12605         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
12606         * lib/unistr/u8-strchr.c: Likewise.
12607         * lib/unistr/u8-strrchr.c: Likewise.
12608         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
12609         * lib/unistr/u16-strchr.c: Likewise.
12610         * lib/unistr/u16-strrchr.c: Likewise.
12611         * lib/striconveh.c: Update.
12612         * lib/linebreak.c: Update.
12613
12614 2007-03-24  Bruno Haible  <bruno@clisp.org>
12615
12616         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
12617         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
12618
12619 2007-03-22  Bruno Haible  <bruno@clisp.org>
12620
12621         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
12622
12623 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
12624
12625         * MODULES.html.sh (File system functions): New module write-any-file.
12626         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
12627         * m4/write-any-file.m4: New files.
12628
12629 2007-03-23  Eric Blake  <ebb9@byu.net>
12630
12631         * gnulib-tool: Rearrange space-tab sequences, since some editors
12632         like to eat them.
12633
12634 2007-03-23  Eric Blake  <ebb9@byu.net>
12635
12636         * lib/version-etc.c (version_etc_va): Update license wording to
12637         be more concise.  Recommended by Richard Stallman.
12638
12639 2007-03-22  Bruno Haible  <bruno@clisp.org>
12640
12641         * lib/poll.c (MSG_PEEK): New fallback definition.
12642
12643 2007-03-22  Bruno Haible  <bruno@clisp.org>
12644
12645         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
12646         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
12647         (main): Update.
12648         Fixes a compilation error on BeOS.
12649
12650 2007-03-22  Bruno Haible  <bruno@clisp.org>
12651
12652         * modules/frexpl-tests: New file.
12653         * tests/test-frexpl.c: New file.
12654
12655         * modules/frexpl: New file.
12656         * m4/frexpl.m4: New file.
12657         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
12658         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
12659         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
12660         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
12661         (Depends-on): Add frexpl. Remove isnanl-nolibm.
12662         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
12663
12664 2007-03-22  Bruno Haible  <bruno@clisp.org>
12665
12666         * lib/frexpl.c: Share code with lib/frexp.c.
12667         * modules/mathl (Files): Add lib/frexp.c.
12668         (Depends-on): Add isnanl-nolibm.
12669
12670 2007-03-22  Bruno Haible  <bruno@clisp.org>
12671
12672         * modules/printf-frexp (Files): Add m4/frexp.m4.
12673         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
12674         only if the found frexp function actually works.
12675
12676 2007-03-22  Bruno Haible  <bruno@clisp.org>
12677
12678         * lib/frexp.c: Remove older implementation that uses divisions.
12679
12680 2007-03-21  Bruno Haible  <bruno@clisp.org>
12681
12682         * modules/frexp-tests: New file.
12683         * tests/test-frexp.c: New file.
12684
12685         * modules/frexp: New file.
12686         * lib/frexp.c: New file.
12687         * m4/frexp.m4: New file.
12688         * lib/math_.h (frexp): New declaration.
12689         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
12690         REPLACE_FREXP.
12691         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
12692
12693 2007-03-21  Bruno Haible  <bruno@clisp.org>
12694
12695         * modules/isnanl-tests: New file.
12696         * tests/test-isnanl.c: New file.
12697
12698         * modules/isnanl: New file.
12699         * lib/isnanl.h: New file.
12700         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
12701         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
12702         gl_FUNC_ISNANL_WORKS.
12703         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
12704         New macros.
12705
12706 2007-03-21  Bruno Haible  <bruno@clisp.org>
12707
12708         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
12709         lib/isnanl.h.
12710         (Include): Update.
12711         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
12712         * lib/vasnprintf.c: Update.
12713         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
12714         tests/test-isnanl.h, remove tests/test-isnanl.c.
12715         (Makefile.am): Update.
12716         * tests/test-isnanl-nolibm.c: New file.
12717         * tests/test-isnanl.h: New file.
12718         * tests/test-isnanl.c: Remove file.
12719
12720 2007-03-21  Jim Meyering  <jim@meyering.net>
12721
12722         When trying to open ".", treat ESTALE like EACCES.
12723         * lib/savewd.c (savewd_save): Resort to forking not just upon
12724         failure with EACCES, but also when errno is ESTALE.
12725
12726 2007-03-20  Bruno Haible  <bruno@clisp.org>
12727
12728         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
12729         Needed on AIX 5.1. Reported by Matthew Woehlke.
12730
12731 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12732
12733         Suggestions by Bruno Haible:
12734         * lib/acl-internal.h: Include "gettext.h" rather than rolling
12735         our own.
12736         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
12737         * modules/acl (Depends-on): Add gettext.
12738
12739 2007-03-19  Bruno Haible  <bruno@clisp.org>
12740
12741         * modules/iconvme: Remove file.
12742         * lib/iconvme.h: Remove file.
12743         * lib/iconvme.c: Remove file.
12744         * m4/iconvme.m4: Remove file.
12745
12746 2007-03-19  Bruno Haible  <bruno@clisp.org>
12747
12748         * doc/relocatable-maint.texi: Break long shell script line.
12749         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
12750
12751 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12752
12753         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
12754         handle file_has_acl.
12755         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
12756         * lib/acl.c: Move header inclusions and related macro defns into
12757         lib/acl-internal.h.
12758         (S_ISLNK): Remove defn, since that's now done for us.
12759         (file_has_acl): Move to lib/file-has-acl.c.
12760         Call acl_trivial if available.  This is the crucial part of the fix.
12761         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
12762         shared within the library.  Rewrite a bit, partly to make it compatible
12763         with the GNU coding style.
12764         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
12765         Remove unnecessary double-quotes.
12766         Don't test for acl_to_text; the build will catch that.
12767         Replace acl_entries if it doesn't exist and it is needed.
12768         Check for -lsec and acl_trivial (as used on Solaris 10).
12769         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
12770         lib/file-has-acl.c.
12771         (Depends-on): Add sys_stat, for S_ISLNK.
12772
12773 2007-03-19  Ben Pfaff  <blp@gnu.org>
12774
12775         * doc/gnulib.texi: Fix typos.
12776         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
12777
12778 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
12779
12780         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
12781         If size is zero here, buf must be zero.
12782
12783 2007-03-19  Simon Josefsson  <simon@josefsson.org>
12784
12785         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
12786         <bruno@clisp.org>.
12787
12788 2007-03-18  Bruno Haible  <bruno@clisp.org>
12789
12790         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
12791         Suggested by Eric Blake.
12792
12793 2007-03-18  Ben Pfaff  <blp@gnu.org>
12794
12795         * doc/relocatable.texi: Recommend using as prefix a directory
12796         that does not exist and will never be created.  Based on
12797         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
12798         and others.
12799
12800 2007-03-17  Bruno Haible  <bruno@clisp.org>
12801
12802         * lib/fchownat.c: Include lchown.h.
12803
12804 2007-03-17  Bruno Haible  <bruno@clisp.org>
12805
12806         Fix endless loop when the given allocated size was > INT_MAX.
12807         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
12808         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
12809         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
12810         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
12811         * lib/sprintf.c (sprintf): Likewise.
12812
12813 2007-03-17  Bruno Haible  <bruno@clisp.org>
12814
12815         * tests/test-argp-2.sh (func_compare): Output a context diff.
12816
12817 2007-03-17  Bruno Haible  <bruno@clisp.org>
12818
12819         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
12820         locale's decimal-point character.
12821
12822 2007-03-17  Bruno Haible  <bruno@clisp.org>
12823
12824         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
12825         before comparing it. Needed because on some platforms (e.g. x86) a
12826         'long double' occupies less bytes than sizeof (long double).
12827
12828 2007-03-17  Bruno Haible  <bruno@clisp.org>
12829
12830         * tests/test-crc.c (main): Make printf statements 64-bit clean.
12831         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
12832         * tests/test-getaddrinfo.c (simple): Likewise.
12833         * tests/test-read-file.c (main): Likewise.
12834
12835 2007-03-17  Bruno Haible  <bruno@clisp.org>
12836
12837         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
12838
12839 2007-03-17  Bruno Haible  <bruno@clisp.org>
12840
12841         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
12842         unused variable.
12843
12844 2007-03-17  Bruno Haible  <bruno@clisp.org>
12845
12846         * tests/test-c-strcasecmp.c: Include c-strcase.h.
12847         * tests/test-c-strncasecmp.c: Likewise.
12848
12849 2007-03-17  Bruno Haible  <bruno@clisp.org>
12850
12851         * modules/stdlib (Depends-on): Add unistd.
12852         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
12853         Needed for MacOS X 10.3.
12854
12855 2007-03-17  Bruno Haible  <bruno@clisp.org>
12856
12857         * lib/unistr/u-strdup.h: Include <stdlib.h>.
12858
12859 2007-03-17  Bruno Haible  <bruno@clisp.org>
12860
12861         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
12862
12863 2007-03-17  Bruno Haible  <bruno@clisp.org>
12864
12865         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
12866         to reflect files copied from gnulib (with or without modifications).
12867         Suggested by Jim Meyering.
12868
12869 2007-03-17  Eric Blake  <ebb9@byu.net>
12870
12871         * NEWS: Document stdlib change from 2007-02-18.
12872
12873 2007-03-17  Jim Meyering  <jim@meyering.net>
12874
12875         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
12876         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
12877         someone uses a name containing shell meta-characters.
12878         Reported by Alfred M. Szmidt.
12879
12880         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
12881
12882 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
12883
12884         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
12885         and copy gettext configuration files only if configure.ac contains
12886         a use of AM_GNU_GETTEXT_VERSION.
12887
12888 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
12889
12890         * build-aux/bootstrap (gnulib_name): New variable.
12891         (gnulib_tool_options): Use it.
12892
12893 2007-03-13  Simon Josefsson  <simon@josefsson.org>
12894
12895         * tests/test-des.c: Use new namespace.
12896
12897 2007-03-15  Bruno Haible  <bruno@clisp.org>
12898
12899         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
12900         Reported by James Youngman <jay@gnu.org>.
12901
12902 2007-03-15  Bruno Haible  <bruno@clisp.org>
12903
12904         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
12905         declared prototype. Needed with cc on OSF/1 5.1.
12906
12907 2007-03-15  Bruno Haible  <bruno@clisp.org>
12908
12909         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
12910         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
12911         (struct gl_list_implementation): Add dispose_fn argument to the
12912         'create_empty', 'create' methods.
12913         (struct gl_list_impl_base): Add field 'dispose_fn'.
12914         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
12915         argument.
12916         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
12917         dispose_fn argument.
12918         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
12919         dispose_fn on the dropped values.
12920         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
12921         dispose_fn argument.
12922         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
12923         dropped values.
12924         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
12925         (gl_tree_remove_node): Call dispose_fn on the dropped value.
12926         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
12927         (gl_tree_remove_node): Call dispose_fn on the dropped value.
12928         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
12929         argument.
12930         (gl_tree_list_free): Call dispose_fn on the dropped values.
12931         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
12932         the dropped values.
12933         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
12934         Add dispose_fn argument.
12935         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
12936         Call dispose_fn on the dropped values.
12937         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
12938         Add dispose_fn argument.
12939         (gl_sublist_create): Initialize the 'dispose_fn' field.
12940         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
12941         * tests/test-array_list.c (main): Update.
12942         * tests/test-carray_list.c (main): Update.
12943         * tests/test-avltree_list.c (main): Update.
12944         * tests/test-rbtree_list.c (main): Update.
12945         * tests/test-avltreehash_list.c (main): Update.
12946         * tests/test-rbtreehash_list.c (main): Update.
12947         * tests/test-linked_list.c (main): Update.
12948         * tests/test-linkedhash_list.c (main): Update.
12949         * tests/test-array_oset.c (main): Update.
12950
12951 2007-03-15  Bruno Haible  <bruno@clisp.org>
12952
12953         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
12954         (gl_oset_create_empty): Add dispose_fn argument.
12955         (struct gl_oset_implementation): Add dispose_fn argument to
12956         'create_empty' method.
12957         (struct gl_oset_impl_base): Add dispose_fn field.
12958         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
12959         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
12960         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
12961         values.
12962         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
12963         (gl_tree_oset_free): Call dispose_fn on the dropped values.
12964         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
12965         dropped value.
12966         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
12967         dropped value.
12968         * tests/test-array_oset.c (main): Update.
12969         * tests/test-avltree_oset.c (main): Update.
12970         * tests/test-rbtree_oset.c (main): Update.
12971         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
12972
12973 2007-03-13  Bruno Haible  <bruno@clisp.org>
12974
12975         * tests/test-stdbool.c (i): Update after last patch.
12976
12977 2007-03-12  Bruno Haible  <bruno@clisp.org>
12978
12979         * lib/quotearg.c: Include <wctype.h> early, before the definition of
12980         the iswprint macro. Needed on Solaris 2.5.1.
12981
12982 2007-03-12  Bruno Haible  <bruno@clisp.org>
12983
12984         * tests/test-printf-frexp.c (main): Declare x as volatile.
12985
12986 2007-03-12  Simon Josefsson  <simon@josefsson.org>
12987
12988         * doc/gnulib.texi (Build robot for gnulib): New section.
12989
12990 2007-03-12  Jim Meyering  <jim@meyering.net>
12991
12992         * build-aux/bootstrap: New file.
12993         * build-aux/bootstrap.conf: New file, from coreutils.
12994
12995 2007-03-11  Bruno Haible  <bruno@clisp.org>
12996
12997         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
12998
12999 2007-03-12  Simon Josefsson  <simon@josefsson.org>
13000
13001         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
13002         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
13003         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
13004
13005 2007-03-11  Bruno Haible  <bruno@clisp.org>
13006
13007         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
13008         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
13009
13010 2007-03-11  Bruno Haible  <bruno@clisp.org>
13011
13012         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
13013         formula. Needed for SunPRO C 5.0.
13014
13015 2007-03-11  Bruno Haible  <bruno@clisp.org>
13016
13017         * modules/long-options (Depends-on): Add getopt.
13018
13019 2007-03-11  Bruno Haible  <bruno@clisp.org>
13020
13021         * modules/modechange (Depends-on): Add stdbool.
13022
13023 2007-03-11  Bruno Haible  <bruno@clisp.org>
13024
13025         * modules/i-ring (Depends-on): Add stdbool.
13026
13027 2007-03-11  Bruno Haible  <bruno@clisp.org>
13028
13029         * modules/gc-des (Depends-on): Add stdbool.
13030
13031 2007-03-11  Bruno Haible  <bruno@clisp.org>
13032
13033         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
13034
13035 2007-03-11  Bruno Haible  <bruno@clisp.org>
13036
13037         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
13038
13039 2007-03-11  Bruno Haible  <bruno@clisp.org>
13040
13041         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
13042
13043 2007-03-11  Bruno Haible  <bruno@clisp.org>
13044
13045         * lib/vasnprintf.c (sprintf): Undefine.
13046
13047 2007-03-11  Bruno Haible  <bruno@clisp.org>
13048
13049         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
13050         initializers in SunPRO C and Compaq C compilers.
13051
13052 2007-03-11  Bruno Haible  <bruno@clisp.org>
13053
13054         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
13055         decrementing code ANSI C compliant.
13056
13057 2007-03-11  Bruno Haible  <bruno@clisp.org>
13058
13059         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
13060         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
13061
13062 2007-03-11  Bruno Haible  <bruno@clisp.org>
13063
13064         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
13065         <stdbool.h> substitute doesn't pass.
13066
13067 2007-03-11  Bruno Haible  <bruno@clisp.org>
13068
13069         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
13070
13071 2007-03-11  Bruno Haible  <bruno@clisp.org>
13072
13073         * gnulib-tool (func_create_megatestdir): Create also an autobuild
13074         script, for submission to autobuild.josefsson.org.
13075
13076 2007-03-10  Bruno Haible  <bruno@clisp.org>
13077
13078         * modules/canonicalize-lgpl-tests: New file.
13079         * tests/test-canonicalize-lgpl.sh: New file.
13080         * tests/test-canonicalize-lgpl.c: New file.
13081
13082         * modules/c-strcase-tests: New file.
13083         * tests/test-c-strcase.sh: New file.
13084         * tests/test-c-strcasecmp.c: New file.
13085         * tests/test-c-strncasecmp.c: New file.
13086
13087         * modules/atexit-tests: New file.
13088         * tests/test-atexit.sh: New file.
13089         * tests/test-atexit.c: New file.
13090
13091 2007-03-10  Bruno Haible  <bruno@clisp.org>
13092
13093         * tests/test-binary-io.sh: Use temporary filenames that are not so
13094         likely to clash with those of other tests (in a parallel make).
13095         * tests/test-binary-io.c: Likewise.
13096
13097 2007-03-10  Bruno Haible  <bruno@clisp.org>
13098
13099         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
13100         fallback; use #error instead.
13101         Suggested by Simon Josefsson.
13102
13103 2007-03-10  Bruno Haible  <bruno@clisp.org>
13104
13105         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
13106         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
13107         first and the last.
13108
13109 2007-03-10  Bruno Haible  <bruno@clisp.org>
13110
13111         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
13112
13113 2007-03-10  Bruno Haible  <bruno@clisp.org>
13114
13115         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
13116         "make distcheck".
13117         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
13118         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
13119         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
13120
13121 2007-03-10  Bruno Haible  <bruno@clisp.org>
13122
13123         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
13124         variable.
13125         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
13126         variable.
13127
13128 2007-03-09  Eric Blake  <ebb9@byu.net>
13129         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
13130
13131         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
13132         types are not being provided by gnulib.
13133         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
13134         types are supported.
13135
13136 2007-03-10  Bruno Haible  <bruno@clisp.org>
13137
13138         * lib/stdio_.h (__attribute__): New macro.
13139         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
13140         vsprintf): Specify __attribute__ __format__ for GCC.
13141         Suggested by Eric Blake.
13142
13143 2007-03-09  Bruno Haible  <bruno@clisp.org>
13144
13145         * modules/printf-posix-tests: New file.
13146         * tests/test-printf-posix.sh: New file.
13147         * tests/test-printf-posix.c: New file.
13148
13149         * modules/printf-posix: New file.
13150         * lib/printf.c: New file.
13151         * m4/printf-posix-rpl.m4: New file.
13152         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
13153         REPLACE_PRINTF.
13154         * lib/stdio_.h (printf): New declaration.
13155         (format, __format__, ____printf____, ____scanf____, ____strftime____,
13156         ____strfmon____): New macros.
13157         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
13158         REPLACE_PRINTF.
13159
13160 2007-03-09  Bruno Haible  <bruno@clisp.org>
13161
13162         * tests/test-vasnprintf-posix2.sh: New file.
13163         * tests/test-vasnprintf-posix2.c: New file.
13164         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
13165         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
13166         (Makefile.am): Activate test-vasnprintf-posix2.sh.
13167
13168         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
13169         a locale dependent decimal point, rather than always '.'.
13170
13171 2007-03-09  Eric Blake  <ebb9@byu.net>
13172
13173         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
13174         spite of platforms like Tandem/NSK that define it to -1.
13175
13176 2007-03-08  Bruno Haible  <bruno@clisp.org>
13177
13178         * modules/vprintf-posix-tests: New file.
13179         * tests/test-vprintf-posix.sh: New file.
13180         * tests/test-vprintf-posix.c: New file.
13181         * tests/test-printf-posix.h: New file.
13182
13183         * modules/vprintf-posix: New file.
13184         * lib/vprintf.c: New file.
13185         * m4/vprintf-posix.m4: New file.
13186         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
13187         REPLACE_VPRINTF.
13188         * lib/stdio_.h (vprintf): New declaration.
13189         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
13190         REPLACE_VPRINTF.
13191
13192 2007-03-08  Bruno Haible  <bruno@clisp.org>
13193
13194         * modules/fprintf-posix-tests: New file.
13195         * tests/test-fprintf-posix.sh: New file.
13196         * tests/test-fprintf-posix.c: New file.
13197
13198         * modules/fprintf-posix: New file.
13199         * lib/fprintf.c: New file.
13200         * m4/fprintf-posix.m4: New file.
13201         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
13202         REPLACE_FPRINTF.
13203         * lib/stdio_.h (fprintf): New declaration.
13204         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
13205         REPLACE_FPRINTF.
13206
13207 2007-03-08  Bruno Haible  <bruno@clisp.org>
13208
13209         * modules/vfprintf-posix-tests: New file.
13210         * tests/test-vfprintf-posix.sh: New file.
13211         * tests/test-vfprintf-posix.c: New file.
13212         * tests/test-fprintf-posix.h: New file.
13213         * tests/test-fprintf-posix.out: New file.
13214
13215         * modules/vfprintf-posix: New file.
13216         * lib/vfprintf.c: New file.
13217         * m4/vfprintf-posix.m4: New file.
13218         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
13219         REPLACE_VFPRINTF.
13220         * lib/stdio_.h (vfprintf): New declaration.
13221         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
13222         REPLACE_VFPRINTF.
13223
13224 2007-03-08  Bruno Haible  <bruno@clisp.org>
13225
13226         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
13227
13228 2007-03-08  Bruno Haible  <bruno@clisp.org>
13229
13230         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
13231         instead of 'expr' invocations.
13232         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13233         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13234         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13235         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13236         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13237         Suggested by Paul Eggert.
13238
13239 2007-03-08  Bruno Haible  <bruno@clisp.org>
13240
13241         * modules/fseterr-tests: New file.
13242         * tests/test-fseterr.c: New file.
13243
13244         * modules/fseterr: New file.
13245         * lib/fseterr.h: New file.
13246         * lib/fseterr.c: New file.
13247
13248 2007-03-08  Bruno Haible  <bruno@clisp.org>
13249
13250         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
13251         * lib/getopt_.h: Likewise.
13252         * lib/mbswidth.h: Likewise.
13253         * lib/setenv.h: Likewise.
13254         * lib/vasnprintf.h: Likewise.
13255         * lib/vasprintf.h: Likewise.
13256         * lib/verror.h: Likewise.
13257         * lib/xsetenv.h: Likewise.
13258         * lib/xvasprintf.h: Likewise.
13259
13260 2007-03-08  Jim Meyering  <jim@meyering.net>
13261
13262         * users.txt: Add parted.
13263
13264         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
13265
13266 2007-03-07  Bruno Haible  <bruno@clisp.org>
13267
13268         * m4/printf.m4: Make the shell script snippets copy&pastable.
13269
13270 2007-03-02  Bruno Haible  <bruno@clisp.org>
13271
13272         * lib/netinet_in_.h: New file.
13273         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
13274         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
13275         * modules/netinet_in (Files): Add lib/netinet_in_.h.
13276         (Depends-on): Add absolute-header.
13277         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
13278         into netinet/in.h.
13279
13280 2007-03-03  Bruno Haible  <bruno@clisp.org>
13281
13282         * lib/sys_select_.h: New file.
13283         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
13284         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
13285         * modules/sys_select (Files): Add lib/sys_select_.h.
13286         (Depends-on): Add absolute-header.
13287         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
13288         into sys/select.h.
13289
13290 2007-03-02  Bruno Haible  <bruno@clisp.org>
13291
13292         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
13293         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
13294         values.
13295         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
13296         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
13297         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
13298         * modules/sys_socket (Depends-on): Add absolute-header.
13299         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
13300         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
13301         (Include): Remove requirement of inclusion of <sys/types.h>.
13302
13303 2007-03-02  Bruno Haible  <bruno@clisp.org>
13304
13305         * lib/byteswap_.h (bswap_32): Fix formula.
13306
13307 2007-03-06  Bruno Haible  <bruno@clisp.org>
13308
13309         * modules/sprintf-posix-tests: New file.
13310         * tests/test-sprintf-posix.c: New file.
13311
13312         * modules/sprintf-posix: New file.
13313         * lib/sprintf.c: New file.
13314         * m4/sprintf-posix.m4: New file.
13315         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
13316         REPLACE_SPRINTF.
13317         * lib/stdio_.h (sprintf): New declaration.
13318         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
13319         REPLACE_SPRINTF.
13320
13321 2007-03-06  Bruno Haible  <bruno@clisp.org>
13322
13323         * modules/vsprintf-posix-tests: New file.
13324         * tests/test-vsprintf-posix.c: New file.
13325         * tests/test-sprintf-posix.h: New file.
13326
13327         * modules/vsprintf-posix: New file.
13328         * lib/vsprintf.c: New file.
13329         * m4/vsprintf-posix.m4: New file.
13330         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
13331         REPLACE_VSPRINTF.
13332         * lib/stdio_.h (vsprintf): New declaration.
13333         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
13334         REPLACE_VSPRINTF.
13335
13336 2007-03-06  Bruno Haible  <bruno@clisp.org>
13337
13338         * modules/vsnprintf (Depend-on): Remove minmax.
13339
13340 2007-03-06  Bruno Haible  <bruno@clisp.org>
13341
13342         * modules/snprintf-posix-tests: New file.
13343         * tests/test-snprintf-posix.c: New file.
13344
13345         * modules/snprintf-posix: New file.
13346         * m4/snprintf-posix.m4: New file.
13347         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
13348         gl_FUNC_SNPRINTF.
13349         (gl_FUNC_SNPRINTF): Invoke it.
13350         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
13351         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
13352         is set.
13353         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
13354
13355 2007-03-06  Bruno Haible  <bruno@clisp.org>
13356
13357         * modules/vsnprintf-posix-tests: New file.
13358         * tests/test-vsnprintf-posix.c: New file.
13359         * tests/test-snprintf-posix.h: New file.
13360
13361         * modules/vsnprintf-posix: New file.
13362         * m4/vsnprintf-posix.m4: New file.
13363         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
13364         gl_FUNC_VSNPRINTF.
13365         (gl_FUNC_VSNPRINTF): Invoke it.
13366         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
13367         * lib/stdio_.h (vsnprintf): Define as a replacement if
13368         REPLACE_VSNPRINTF is set.
13369         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
13370
13371 2007-03-06  Bruno Haible  <bruno@clisp.org>
13372
13373         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
13374         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
13375
13376 2007-03-06  Bruno Haible  <bruno@clisp.org>
13377
13378         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
13379         (asinl): Declare also if HAVE_DECL_ASINL is set.
13380         (atanl): Declare also if HAVE_DECL_ATANL is set.
13381         (ceill): Declare also if HAVE_DECL_CEILL is set.
13382         (cosl): Declare also if HAVE_DECL_COSL is set.
13383         (expl): Declare also if HAVE_DECL_EXPL is set.
13384         (floorl): Declare also if HAVE_DECL_FLOORL is set.
13385         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
13386         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
13387         (logl): Declare also if HAVE_DECL_LOGL is set.
13388         (sinl): Declare also if HAVE_DECL_SINL is set.
13389         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
13390         (tanl): Declare also if HAVE_DECL_TANL is set.
13391         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
13392         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
13393         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
13394         declaration of frexpl, ldexpl.
13395         * modules/printf-frexpl (Depends-on): Add math.
13396         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
13397
13398 2007-03-05  Bruno Haible  <bruno@clisp.org>
13399
13400         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
13401         frexpl and ldexpl are declared.
13402         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
13403
13404 2007-03-05  Bruno Haible  <bruno@clisp.org>
13405
13406         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
13407         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
13408
13409 2007-03-05  Bruno Haible  <bruno@clisp.org>
13410
13411         * lib/stdio_.h: Include <stddef.h>.
13412
13413 2007-03-05  Bruno Haible  <bruno@clisp.org>
13414
13415         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
13416
13417 2007-03-05  Bruno Haible  <bruno@clisp.org>
13418
13419         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
13420         NetBSD 4, from Ralf Wildenhues.
13421
13422 2007-03-04  Bruno Haible  <bruno@clisp.org>
13423
13424         * lib/vasprintf.h: Update #if logic for the case when the functions
13425         exist but are overridden.
13426
13427 2007-03-04  Bruno Haible  <bruno@clisp.org>
13428
13429         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
13430         implementations: glibc-2.4 and MacOS X 10.3.
13431         * tests/test-vasnprintf-posix.c (test_function): Test also the case
13432         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
13433         * tests/test-vasprintf-posix.c (test_function): Likewise.
13434
13435 2007-03-04  Bruno Haible  <bruno@clisp.org>
13436
13437         * modules/vasprintf-posix-tests: New file.
13438         * tests/test-vasprintf-posix.c: New file.
13439
13440         * modules/vasprintf-posix: New file.
13441         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
13442         defined.
13443         * m4/vasprintf-posix.m4: New file.
13444         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
13445         gl_FUNC_VASPRINTF.
13446         (gl_FUNC_VASPRINTF): Invoke it.
13447         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
13448         here.
13449         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
13450
13451 2007-03-04  Bruno Haible  <bruno@clisp.org>
13452
13453         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
13454         REPLACE_GETTIMEOFDAY.
13455         * modules/sys_time (Makefile.am): Likewise.
13456         * m4/sys_time_h.m4: Likewise.
13457         * m4/gettimeofday.m4: Likewise.
13458
13459 2007-03-04  Bruno Haible  <bruno@clisp.org>
13460
13461         * modules/vasnprintf-posix-tests: New file.
13462         * tests/test-vasnprintf-posix.c: New file.
13463
13464         * modules/vasnprintf-posix: New file.
13465         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
13466         printf-frexpl.h.
13467         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
13468         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
13469         REPLACE_VASNPRINTF is defined.
13470         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
13471         gl_FUNC_VASNPRINTF.
13472         (gl_FUNC_VASNPRINTF): Invoke it.
13473         * m4/vasnprintf-posix.m4: New file.
13474         * m4/printf.m4: New file.
13475
13476 2007-03-04  Bruno Haible  <bruno@clisp.org>
13477
13478         Compile progreloc.c only if --enable-relocatable is specified.
13479         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
13480         if --enable-relocatable was specified.
13481         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
13482         lib_SOURCES.
13483
13484 2007-03-04  Jim Meyering  <jim@meyering.net>
13485
13486         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
13487         Use it consistently, rather than enumerating errno constants.
13488
13489 2007-03-04  Bruno Haible  <bruno@clisp.org>
13490
13491         * modules/xvasprintf-tests: New file.
13492         * tests/test-xvasprintf.c: New file.
13493
13494         * modules/vasprintf-tests: New file.
13495         * tests/test-vasprintf.c: New file.
13496
13497         * modules/vasnprintf-tests: New file.
13498         * tests/test-vasnprintf.c: New file.
13499
13500         * modules/vsnprintf-tests: New file.
13501         * tests/test-vsnprintf.c: New file.
13502
13503         * modules/snprintf-tests: New file.
13504         * tests/test-snprintf.c: New file.
13505
13506 2007-03-04  Bruno Haible  <bruno@clisp.org>
13507
13508         Compile relocatable.c only if --enable-relocatable is specified.
13509         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
13510         gl_RELOCATABLE_LIBRARY.
13511         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
13512         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
13513         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
13514         gl_RELOCATABLE_LIBRARY.
13515         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
13516         (Makefile.am): Remove lib_SOURCES.
13517         * modules/relocatable-lib-lgpl (configure.ac): Invoke
13518         gl_RELOCATABLE_LIBRARY.
13519         (Makefile.am): Remove lib_SOURCES.
13520         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
13521         always.
13522         * modules/relocatable-prog-wrapper (configure.ac): Invoke
13523         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
13524
13525 2007-03-04  Bruno Haible  <bruno@clisp.org>
13526
13527         * modules/argmatch-tests: New file.
13528         * tests/test-argmatch.c: New file.
13529
13530         * tests/test-allocsa.c (main): Halve the number of loop runs.
13531
13532         * modules/alloca-opt-tests: New file.
13533         * tests/test-alloca-opt.c: New file.
13534
13535 2007-03-04  Jim Meyering  <jim@meyering.net>
13536
13537         Work around difference between Linux ACLs and Solaris 10 ZFS.
13538         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
13539         for EINVAL.
13540
13541 2007-03-03  Bruno Haible  <bruno@clisp.org>
13542
13543         * modules/relocatable-prog (Depends-on): Add back progreloc's
13544         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
13545
13546 2007-03-03  Bruno Haible  <bruno@clisp.org>
13547
13548         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
13549         * modules/relocatable-lib: New file.
13550
13551 2007-03-03  Bruno Haible  <bruno@clisp.org>
13552
13553         * modules/relocatable-prog: Renamed from modules/relocatable.
13554         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
13555
13556 2007-03-03  Bruno Haible  <bruno@clisp.org>
13557
13558         * modules/relocatable-script (Files): Add doc/relocatable.texi,
13559         m4/relocatable-lib.m4.
13560         (Depends-on): Remove 'relocatable'.
13561         (configure.ac): Add gl_RELOCATABLE_NOP.
13562
13563 2007-03-03  Bruno Haible  <bruno@clisp.org>
13564
13565         * modules/relocatable-prog-wrapper: New file.
13566         * modules/relocatable (Depends-on): Add it. Remove all other
13567         dependencies except progname.
13568         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
13569
13570         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
13571         (gl_FUNC_STRERROR): Nop.
13572         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
13573
13574         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
13575         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
13576
13577         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
13578         (gl_FUNC_READLINK): Update.
13579
13580         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
13581
13582 2007-03-03  Bruno Haible  <bruno@clisp.org>
13583
13584         * lib/xreadlink.c: Include <unistd.h> unconditionally.
13585         * modules/xreadlink (Depends-on): Add unistd.
13586         * modules/xreadlink-with-size (Depends-on): Likewise.
13587
13588 2007-03-03  Bruno Haible  <bruno@clisp.org>
13589
13590         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
13591         extracted from gt_FUNC_SETENV.
13592         (gt_FUNC_SETENV): Remove macro.
13593         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
13594         remove gt_FUNC_SETENV.
13595
13596 2007-03-03  Bruno Haible  <bruno@clisp.org>
13597
13598         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
13599         ENABLE_RELOCATABLE here.
13600         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
13601
13602 2007-03-03  Bruno Haible  <bruno@clisp.org>
13603
13604         * modules/rbtreehash-list-tests (Depends-on): Add progname.
13605         * tests/test-rbtreehash_list.c: Include progname.h.
13606         (main): Call set_program_name.
13607
13608         * modules/rbtree-oset-tests (Depends-on): Add progname.
13609         * tests/test-rbtree_oset.c: Include progname.h.
13610         (main): Call set_program_name.
13611
13612         * modules/rbtree-list-tests (Depends-on): Add progname.
13613         * tests/test-rbtree_list.c: Include progname.h.
13614         (main): Call set_program_name.
13615
13616         * modules/linked-list-tests (Depends-on): Add progname.
13617         * tests/test-linked_list.c: Include progname.h.
13618         (main): Call set_program_name.
13619
13620 2007-03-03  Bruno Haible  <bruno@clisp.org>
13621
13622         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
13623         All uses of __restrict changed to _Restrict_.
13624         * lib/glob_.h (__restrict): Remove macro.
13625
13626 2007-03-02  Bruno Haible  <bruno@clisp.org>
13627
13628         * modules/gettext (configure.ac): Require gettext infrastructure
13629         from version 0.16.1.
13630
13631 2007-03-02  Bruno Haible  <bruno@clisp.org>
13632
13633         * modules/linkedhash-list-tests (Depends-on): Add progname.
13634         * tests/test-linkedhash_list.c: Include progname.h.
13635         (main): Call set_program_name.
13636
13637         * modules/carray-list-tests (Depends-on): Add progname.
13638         * tests/test-carray_list.c: Include progname.h.
13639         (main): Call set_program_name.
13640
13641         * modules/avltreehash-list-tests (Depends-on): Add progname.
13642         * tests/test-avltreehash_list.c: Include progname.h.
13643         (main): Call set_program_name.
13644
13645         * modules/avltree-oset-tests (Depends-on): Add progname.
13646         * tests/test-avltree_oset.c: Include progname.h.
13647         (main): Call set_program_name.
13648
13649         * modules/avltree-list-tests (Depends-on): Add progname.
13650         * tests/test-avltree_list.c: Include progname.h.
13651         (main): Call set_program_name.
13652
13653         * modules/array-oset-tests (Depends-on): Add progname.
13654         * tests/test-array_oset.c: Include progname.h.
13655         (main): Call set_program_name.
13656
13657         * modules/array-list-tests (Depends-on): Add progname.
13658         * tests/test-array_list.c: Include progname.h.
13659         (main): Call set_program_name.
13660
13661         * modules/argp-tests (Depends-on): Add progname.
13662         * tests/test-argp.c: Include argp.h first. Include progname.h.
13663         (main): Call set_program_name.
13664
13665 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
13666
13667         * doc/gnulib-tool.texi (Initial import): Reword description of
13668         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
13669         limited effect even if defined after the first system include.
13670
13671 2007-03-01  Bruno Haible  <bruno@clisp.org>
13672
13673         * build-aux/config.libpath: Update to libtool-1.5.22.
13674         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
13675
13676 2007-03-01  Bruno Haible  <bruno@clisp.org>
13677
13678         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
13679         foo_CFLAGS.
13680         Reported by Ralf Wildenhues.
13681
13682 2007-03-01  Bruno Haible  <bruno@clisp.org>
13683
13684         * build-aux/install-reloc: Remove object files left over by some
13685         compilers.
13686         Reported by Ralf Wildenhues.
13687
13688 2007-03-01  Bruno Haible  <bruno@clisp.org>
13689
13690         * build-aux/install-reloc: Break long lines.
13691
13692 2007-03-01  Bruno Haible  <bruno@clisp.org>
13693
13694         * doc/relocatable.texi: Document that it may not work on OpenBSD.
13695         Reported by Ralf Wildenhues.
13696
13697 2007-03-01  Bruno Haible  <bruno@clisp.org>
13698
13699         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
13700         include ordering constraints.
13701
13702 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
13703
13704         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
13705         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
13706         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
13707         as another example.
13708         * lib/time_.h: Fix misspelling.
13709         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
13710         Require gl_HEADER_TIME_H_DEFAULTS.
13711         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
13712         * m4/time_r.m4 (gl_TIME_R): Likewise.
13713         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
13714
13715 2007-03-01  Bruno Haible  <bruno@clisp.org>
13716
13717         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
13718         * m4/utimens.m4 (gl_UTIMENS): Likewise.
13719
13720 2007-03-01  Jim Meyering  <jim@meyering.net>
13721
13722         * modules/xreadlink (Maintainer): Add my name.
13723         * modules/xreadlink-with-size (Depends-on): Alphabetize.
13724
13725 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
13726             Bruno Haible  <bruno@clisp.org>
13727
13728         * build-aux/install-reloc: Compile also c-ctype.c.
13729         * build-aux/relocatable.sh.in: New file.
13730         * doc/relocatable.texi: New file.
13731         * doc/relocatable-maint.texi: New file.
13732         * doc/gnulib.texi: Include relocatable-maint.texi.
13733         * lib/progreloc.c: Include unistd.h unconditionally.
13734         * lib/relocwrapper.c: Include unistd.h unconditionally.
13735         Include c-ctype.h.
13736         (add_dotbin): Use c_tolower.
13737         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
13738         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
13739         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
13740         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
13741         to m4/relocatable-lib.m4.
13742         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
13743         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
13744         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
13745         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
13746         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
13747         * modules/relocatable: New file.
13748         * modules/relocatable-lib: New file.
13749         * modules/relocatable-script: New file.
13750
13751 2007-02-28  Bruno Haible  <bruno@clisp.org>
13752
13753         Import --enable-relocatable infrastructure.
13754         * build-aux/config.libpath: New file, from GNU gettext.
13755         * build-aux/install-reloc: New file, from GNU gettext.
13756         * build-aux/reloc-ldflags: New file, from GNU gettext.
13757         * lib/relocatable.h: New file, from GNU gettext.
13758         * lib/relocatable.c: New file, from GNU gettext.
13759         * lib/relocwrapper.c: New file, from GNU gettext.
13760         * m4/relocatable.m4: New file, from GNU gettext.
13761
13762 2007-02-28  Bruno Haible  <bruno@clisp.org>
13763
13764         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
13765
13766         * modules/xreadlink: New file, from GNU gettext with modifications.
13767         * lib/xreadlink.c: New file, from GNU gettext.
13768         * lib/xreadlink.h: Add comments.
13769         (xreadlink): New declaration.
13770
13771         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
13772         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
13773         lib/xreadlink-with-size.c.
13774         (configure.ac): Remove gl_XREADLINK invocation.
13775         (Makefile.am): Augment lib_SOURCES.
13776         * m4/xreadlink.m4: Remove file.
13777         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
13778         (xreadlink_with_size): Renamed from xreadink.
13779         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
13780         * modules/canonicalize (Depends-on): Replace xreadlink with
13781         xreadlink-with-size.
13782         * lib/canonicalize.c (canonicalize_filename_mode): Update.
13783
13784 2007-02-25  Jim Meyering  <jim@meyering.net>
13785
13786         * build-aux/announce-gen: When complaining about excess arguments,
13787         list them.
13788
13789 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
13790
13791         * README: Document signed integer overflow situation more
13792         accurately.
13793
13794 2007-02-25  Bruno Haible  <bruno@clisp.org>
13795
13796         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
13797         'a' or 'A' conversion.
13798
13799 2007-02-25  Bruno Haible  <bruno@clisp.org>
13800
13801         * modules/filename: Renamed from modules/pathname.
13802         (Files): Replace lib/pathname.h with lib/filename.h. Replace
13803         lib/concatpath.c with lib/concat-filename.c.
13804         (Makefile.am): Update.
13805         (Include): Replace pathname.h with filename.h.
13806         * lib/filename.h: Renamed from lib/pathname.h.
13807         (concatenated_filename): Renamed from concatenated_pathname.
13808         * lib/concat-filename.c: Renamed from lib/concatpath.c.
13809         (concatenated_filename): Renamed from concatenated_pathname.
13810         * lib/findprog.c: Include filename.h instead of pathname.h.
13811         (find_in_path): Update.
13812         * lib/javacomp.c: Include filename.h instead of pathname.h.
13813         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
13814         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
13815         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
13816         is_oldgcj_14_13_usable, is_javac_usable): Update.
13817         * lib/javaexec.c: Include filename.h instead of pathname.h.
13818         (execute_java_class): Update.
13819         * modules/findprog: Update.
13820         * modules/javacomp: Update.
13821         * modules/javaexec: Update.
13822         * MODULES.html.sh (File system functions): Add 'filename', remove
13823         'pathname'.
13824
13825 2007-02-25  Bruno Haible  <bruno@clisp.org>
13826
13827         * modules/printf-frexpl-tests: New file.
13828         * tests/test-printf-frexpl.c: New file.
13829
13830         * modules/printf-frexpl: New file.
13831         * lib/printf-frexpl.h: New file.
13832         * lib/printf-frexpl.c: New file.
13833         * m4/printf-frexpl.m4: New file.
13834
13835 2007-02-25  Bruno Haible  <bruno@clisp.org>
13836
13837         * modules/printf-frexp-tests: New file.
13838         * tests/test-printf-frexp.c: New file.
13839
13840         * modules/printf-frexp: New file.
13841         * lib/printf-frexp.h: New file.
13842         * lib/printf-frexp.c: New file.
13843         * m4/printf-frexp.m4: New file.
13844
13845 2007-02-25  Bruno Haible  <bruno@clisp.org>
13846
13847         Assume automake >= 1.10 for the tests.
13848         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
13849         * modules/arctwo-tests: Likewise.
13850         * modules/argp-tests: Likewise.
13851         * modules/avltree-list-tests: Likewise.
13852         * modules/avltree-oset-tests: Likewise.
13853         * modules/avltreehash-list-tests: Likewise.
13854         * modules/carray-list-tests: Likewise.
13855         * modules/crc-tests: Likewise.
13856         * modules/des-tests: Likewise.
13857         * modules/gc-arcfour-tests: Likewise.
13858         * modules/gc-arctwo-tests: Likewise.
13859         * modules/gc-des-tests: Likewise.
13860         * modules/gc-hmac-md5-tests: Likewise.
13861         * modules/gc-hmac-sha1-tests: Likewise.
13862         * modules/gc-md2-tests: Likewise.
13863         * modules/gc-md4-tests: Likewise.
13864         * modules/gc-md5-tests: Likewise.
13865         * modules/gc-pbkdf2-sha1-tests: Likewise.
13866         * modules/gc-rijndael-tests: Likewise.
13867         * modules/gc-sha1-tests: Likewise.
13868         * modules/gc-tests: Likewise.
13869         * modules/getaddrinfo-tests: Likewise.
13870         * modules/hmac-md5-tests: Likewise.
13871         * modules/hmac-sha1-tests: Likewise.
13872         * modules/linked-list-tests: Likewise.
13873         * modules/linkedhash-list-tests: Likewise.
13874         * modules/lock-tests: Likewise.
13875         * modules/md2-tests: Likewise.
13876         * modules/md4-tests: Likewise.
13877         * modules/md5-tests: Likewise.
13878         * modules/rbtree-list-tests: Likewise.
13879         * modules/rbtree-oset-tests: Likewise.
13880         * modules/rbtreehash-list-tests: Likewise.
13881         * modules/read-file-tests: Likewise.
13882         * modules/rijndael-tests: Likewise.
13883         * modules/stdint-tests: Likewise.
13884         * modules/tls-tests: Likewise.
13885
13886 2007-02-24  Bruno Haible  <bruno@clisp.org>
13887
13888         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
13889         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
13890         function; instead check whether isnan with a double argument links.
13891         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
13892         function; instead check whether isnan with a 'long double' argument
13893         links.
13894         Reported by Eric Blake <ebb9@byu.net>.
13895
13896 2007-02-24  Bruno Haible  <bruno@clisp.org>
13897
13898         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
13899         defined.
13900         * lib/isnanl.c: Remove all code. Just include isnan.c.
13901         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
13902
13903 2007-02-25  Jim Meyering  <jim@meyering.net>
13904
13905         Avoid conflicting types for 'unsetenv' on FreeBSD.
13906         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
13907         conflicting with FreeBSD's (5.0 and 6.1) function declaration
13908         in stdlib.h.
13909
13910 2007-02-24  Bruno Haible  <bruno@clisp.org>
13911
13912         * modules/isnanl-nolibm-tests: New file.
13913         * tests/test-isnanl.c: New file.
13914
13915         * modules/isnanl-nolibm: New file.
13916         * lib/isnanl.h: New file.
13917         * lib/isnanl.c: New file.
13918         * m4/isnanl.m4: New file.
13919
13920 2007-02-24  Bruno Haible  <bruno@clisp.org>
13921
13922         * modules/isnan-nolibm-tests: New file.
13923         * tests/test-isnan.c: New file.
13924
13925         * modules/isnan-nolibm: New file.
13926         * lib/isnan.h: New file.
13927         * lib/isnan.c: New file.
13928         * m4/isnan.m4: New file.
13929
13930 2007-02-24  Bruno Haible  <bruno@clisp.org>
13931
13932         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
13933         assume that an exponent fits in 20 bits.
13934
13935 2007-02-24  Jim Meyering  <jim@meyering.net>
13936
13937         * m4/regex.m4: Update the description of the configure-time option,
13938         --without-included-regex, to state accurately what the defaults are,
13939         and perhaps to give people an idea why using this option is risky.
13940
13941 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
13942
13943         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
13944         loops on small arguments.  This attempts to avoid the problem
13945         Bruno Haible reported for AIX 4.3.2 in
13946         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
13947
13948 2007-02-23  Bruno Haible  <bruno@clisp.org>
13949
13950         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
13951         Needed for help2man.
13952
13953 2007-02-23  Karl Berry  <karl@gnu.org>
13954
13955         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
13956         exists, foo.h should be cvs-ignored, not committed.
13957
13958 2007-02-23  Eric Blake  <ebb9@byu.net>
13959
13960         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
13961         * lib/stat-time.h (includes): Likewise.
13962         * lib/utimecmp.c (includes): Likewise.
13963         * lib/utimens.h (includes): Likewise.
13964         * lib/getdate.y (includes): Also include "timespec.h" for use
13965         internal to the module.
13966         * modules/utimens (Depends-on): Revert yesterday's patch.
13967         * modules/nanosleep (Depends-on): Add missing dependency.
13968
13969 2007-02-22  Bruno Haible  <bruno@clisp.org>
13970
13971         * lib/glob.c: Don't include getlogin_r.h.
13972
13973 2007-02-22  Jim Meyering  <jim@meyering.net>
13974
13975         * modules/utimens (Depends-on): Add timespec, required for
13976         utimens.h's inclusion of timespec.h.
13977
13978 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
13979
13980         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
13981         long unreadable paths in GNU/Linux.  Problem reported by Andreas
13982         Schwab in
13983         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
13984         I'll try to think of a better way to fix the Solaris problem.
13985
13986         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
13987         like glibc; on Solaris 10, it fails with errno == EINVAL.
13988         POSIX says the behavior is unspecified if the first argument is NULL,
13989         so play it safe and never pass NULL to the system getcwd.
13990
13991 2007-02-21  Jim Meyering  <jim@meyering.net>
13992
13993         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
13994         of gettimeofday.  It would conflict with the one now always
13995         provided via sys_time_.h.  Reported by Matthew Woehlke, as
13996         an IRIX 6.5 build failure.
13997
13998 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
13999
14000         Minor fixups to port to Solaris 10 with Sun C 5.8.
14001         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
14002         * modules/getcwd (Depends-on): Add dirfd.
14003         * lib/putenv.c (putenv): #undef it.
14004         (rpl_putenv): New decl.
14005         (malloc, free): Include <stdlib.h> rather than prototyping separately.
14006
14007 2007-02-20  Bruno Haible  <bruno@clisp.org>
14008
14009         * modules/stdio-tests: New file.
14010         * tests/test-stdio.c: New file.
14011
14012         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
14013         (Depends-on): Add stdio.
14014         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14015         (Include): Use <stdio.h> instead of vsnprintf.h.
14016         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14017         HAVE_DECL_VSNPRINTF.
14018         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
14019
14020         * modules/snprintf (Files): Remove lib/snprintf.h.
14021         (Depends-on): Add stdio.
14022         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14023         (Include): Use <stdio.h> instead of snprintf.h.
14024         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14025         HAVE_DECL_SNPRINTF.
14026         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
14027         * lib/getaddrinfo.c: Likewise.
14028
14029         * modules/stdio: New file.
14030         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
14031         * lib/snprintf.h: Remove file.
14032         * lib/vsnprintf.h: Remove file.
14033         * lib/.cppi-disable: Remove snprintf.h.
14034         * m4/stdio_h.m4: New file.
14035         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
14036
14037 2007-02-20  Jim Meyering  <jim@meyering.net>
14038
14039         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
14040         used by e.g., mingw.  From Bruno Haible.
14041
14042 2007-02-19  Bruno Haible  <bruno@clisp.org>
14043
14044         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
14045         warnings.
14046         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14047
14048 2007-02-19  Bruno Haible  <bruno@clisp.org>
14049
14050         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
14051         from mingw users.
14052
14053 2007-02-19  Bruno Haible  <bruno@clisp.org>
14054
14055         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
14056         warnings.
14057         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
14058
14059 2007-02-19  Jim Meyering  <jim@meyering.net>
14060
14061         Don't use FD after a successful "fdopendir (fd)".
14062         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
14063         Reset it by calling dirfd on the just-obtained DIR*.
14064
14065         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
14066         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
14067
14068 2007-02-18  Bruno Haible  <bruno@clisp.org>
14069
14070         * lib/readlink.c: Include <unistd.h>.
14071         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
14072         HAVE_READLINK.
14073         * modules/readlink (Depends-on): Add unistd.
14074         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14075         (Include): Add <unistd.h>.
14076
14077         * lib/getlogin_r.h: Remove file.
14078         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
14079         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
14080         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
14081         HAVE_DECL_GETLOGIN_R.
14082         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
14083         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14084         (Include): Use <unistd.h> instead of getlogin_r.h.
14085
14086         * lib/getcwd.h: Remove file.
14087         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
14088         * lib/xgetcwd.c: Likewise.
14089         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
14090         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
14091         * modules/getcwd (Files): Remove lib/getcwd.h.
14092         (Depends-on): Add unistd.
14093         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14094         (Include): Use <unistd.h> instad of getcwd.h.
14095
14096         * lib/ftruncate.c: Include <unistd.h> first.
14097         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
14098         Set HAVE_FTRUNCATE.
14099         * modules/ftruncate (Depends-on): Add unistd.
14100         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14101
14102         * lib/fchdir.c: Include <unistd.h> first.
14103         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
14104         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
14105         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
14106         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14107         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
14108
14109         * lib/dup2.c: Include <unistd.h> first.
14110         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
14111         HAVE_DUP2.
14112         * modules/dup2 (Depends-on): Add unistd.
14113         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14114
14115         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
14116         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
14117         REPLACE_CHOWN. Don't define chown as a macro here.
14118         * modules/chown (Depends-on): Add unistd.
14119         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14120
14121         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
14122         Add definition for GL_LINK_WARNING.
14123         (chown, dup2): New declarations.
14124         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
14125         link warning.
14126         (ftruncate): New declaration.
14127         (getcwd): New declaration, taken from old getcwd.h.
14128         (getlogin_r): New declaration, taken from old getlogin_r.h.
14129         (readlink): New declaration.
14130         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
14131         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
14132         (gl_PREREQ_UNISTD): Remove macro.
14133         (gl_UNISTD_MODULE_INDICATOR): New macro.
14134         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
14135         many new variables. Don't set UNISTD_H.
14136         * modules/unistd (Description): Change.
14137         (Depends-on): Add link-warning.
14138         (configure.ac): Update.
14139         (Makefile.am): Create unistd.h always. Substitute many new variables
14140         into it.
14141
14142 2007-02-18  Bruno Haible  <bruno@clisp.org>
14143
14144         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
14145         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
14146         HAVE_GETSUBOPT.
14147         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
14148         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
14149         * lib/getsubopt.h: Remove file.
14150         * modules/getsubopt (Files): Remove lib/getsubopt.h.
14151         (Depends-on): Add stdlib.
14152         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14153         (Includes): Use <stdlib.h> instead of getsubopt.h.
14154         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
14155         Set HAVE_GETSUBOPT.
14156         * lib/getsubopt.c: Don't include getsubopt.h.
14157
14158 2007-02-18  Bruno Haible  <bruno@clisp.org>
14159
14160         * modules/fchdir (Depends-on): Add dup2.
14161
14162 2007-02-18  Bruno Haible  <bruno@clisp.org>
14163
14164         * lib/stdlib_.h: Handle glibc's special invocation convention
14165         specially.
14166
14167 2007-02-18  Bruno Haible  <bruno@clisp.org>
14168
14169         * modules/stdlib-tests: New file.
14170         * tests/test-stdlib.c: New file.
14171
14172         * modules/mkstemp (Files): Remove lib/mkstemp.h.
14173         (Depends-on): Add stdlib.
14174         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14175         (Includes): Use <stdlib.h> instead of mkstemp.h.
14176         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
14177         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
14178         * lib/mkstemp.c: Don't include mkstemp.h.
14179         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
14180         * lib/stdlib--.h: Don't include mkstemp.h.
14181
14182         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
14183         (Depends-on): Add stdlib.
14184         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14185         (Includes): Use <stdlib.h> instead of mkdtemp.h.
14186         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
14187         HAVE_MKDTEMP.
14188         * lib/mkdtemp.c: Don't include mkdtemp.h.
14189         * lib/clean-temp.c: Don't include mkdtemp.h.
14190
14191         * modules/exit (Files): Remove lib/exit.h.
14192         (Depends-on): Add stdlib.
14193         (Makefile.am): Remove lib_SOURCES.
14194         (Include): Use <stdlib.h> instead of exit.h.
14195         * lib/argmatch.c: Don't include exit.h.
14196         * lib/execute.c: Likewise.
14197         * lib/pagealign_alloc.c: Likewise.
14198         * lib/pipe.c: Likewise.
14199         * lib/wait-process.c: Likewise.
14200         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
14201         * lib/exitfail.c: Likewise.
14202         * lib/savewd.c: Likewise.
14203         * lib/xsetenv.c: Likewise.
14204
14205         * modules/stdlib: New file.
14206         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
14207         and extra comments about mkstemp().
14208         * lib/exit.h: Remove file.
14209         * lib/mkdtemp.h: Remove file.
14210         * lib/mkstemp.h: Remove file.
14211         * m4/stdlib_h.m4: New file.
14212         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
14213
14214 2007-02-18  Bruno Haible  <bruno@clisp.org>
14215
14216         * modules/math-tests: New file.
14217         * tests/test-math.c: New file.
14218
14219         * modules/math: New file.
14220         * modules/mathl (Files): Remove lib/mathl.h.
14221         (Depends-on): Add math.
14222         (Makefile.am): Don't mention mathl.h.
14223         (Include): Use <math.h> instead of mathl.h.
14224         * lib/math_.h: New file.
14225         * lib/mathl.h: Remove file.
14226         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
14227         mathl.h.
14228         * lib/asinl.c: Likewise.
14229         * lib/atanl.c: Likewise.
14230         * lib/ceill.c: Likewise.
14231         * lib/cosl.c: Likewise.
14232         * lib/expl.c: Likewise.
14233         * lib/floorl.c: Likewise.
14234         * lib/frexpl.c: Likewise.
14235         * lib/ldexpl.c: Likewise.
14236         * lib/logl.c: Likewise.
14237         * lib/sincosl.c: Likewise.
14238         * lib/sinl.c: Likewise.
14239         * lib/sqrtl.c: Likewise.
14240         * lib/tanl.c: Likewise.
14241         * lib/trigl.c: Likewise.
14242         * m4/math_h.m4: New file.
14243         * MODULES.html.sh (Mathematics): Add math.
14244
14245 2007-02-17  Bruno Haible  <bruno@clisp.org>
14246
14247         * modules/wctype-tests: New file.
14248         * tests/test-wctype.c: New file.
14249
14250         * modules/wchar-tests: New file.
14251         * tests/test-wchar.c: New file.
14252
14253         * modules/unistd-tests: New file.
14254         * tests/test-unistd.c: New file.
14255
14256         * modules/time-tests: New file.
14257         * tests/test-time.c: New file.
14258
14259         * modules/sysexits-tests: New file.
14260         * tests/test-sysexits.c: New file.
14261
14262         * modules/sys_time-tests: New file.
14263         * tests/test-sys_time.c: New file.
14264
14265         * modules/sys_stat-tests: New file.
14266         * tests/test-sys_stat.c: New file.
14267
14268         * modules/sys_socket-tests: New file.
14269         * tests/test-sys_socket.c: New file.
14270
14271         * modules/sys_select-tests: New file.
14272         * tests/test-sys_select.c: New file.
14273
14274         * modules/string-tests: New file.
14275         * tests/test-string.c: New file.
14276
14277         * modules/stdbool-tests: New file.
14278         * tests/test-stdbool.c: New file.
14279
14280         * modules/netinet_in-tests: New file.
14281         * tests/test-netinet_in.c: New file.
14282
14283         * modules/inttypes-tests: New file.
14284         * tests/test-inttypes.c: New file.
14285
14286         * modules/fcntl-tests: New file.
14287         * tests/test-fcntl.c: New file.
14288
14289         * modules/byteswap-tests: New file.
14290         * tests/test-byteswap.c: New file.
14291
14292         * modules/arpa_inet-tests: New file.
14293         * tests/test-arpa_inet.c: New file.
14294
14295 2007-02-17  Bruno Haible  <bruno@clisp.org>
14296
14297         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
14298         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
14299         if the corresponding module is not enabled. Emit link warnings if
14300         the function is used nevertheless.
14301         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
14302         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
14303         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
14304         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
14305         * modules/inttypes (Depends-on): Add link-warning.
14306         (Makefile.am): Copy the contents of build-aux/link-warning.h into
14307         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
14308         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
14309         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
14310         * modules/imaxdiv (configure.ac): Likewise.
14311         * modules/strtoimax (configure.ac): Likewise.
14312         * modules/strtoumax (configure.ac): Likewise.
14313
14314 2007-02-17  Bruno Haible  <bruno@clisp.org>
14315
14316         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
14317         gl_STRING_MODULE_INDICATOR_DEFAULTS.
14318         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
14319         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
14320
14321 2007-02-17  Bruno Haible  <bruno@clisp.org>
14322
14323         * modules/link-warning: New file.
14324         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
14325         * lib/string_.h (GL_LINK_WARNING): Remove definition.
14326         * modules/string (Depends-on): Add link-warning.
14327         (Makefile.am): Copy the contents of build-aux/link-warning.h into
14328         string.h.
14329         * MODULES.html.sh (Support for building libraries and executables): Add
14330         link-warning.
14331
14332 2007-02-17  Bruno Haible  <bruno@clisp.org>
14333
14334         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
14335         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
14336         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
14337         long lines.
14338
14339 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
14340             Bruno Haible  <bruno@clisp.org>
14341
14342         * modules/tmpfile: New file.
14343         * lib/tmpfile.c: New file.
14344         * m4/tmpfile.m4: New file.
14345         * MODULES.html.sh (func_all_modules): New section "Input/output".
14346
14347 2007-02-15  Bruno Haible  <bruno@clisp.org>
14348
14349         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
14350         (supports_delete_on_close): New function.
14351         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
14352
14353 2007-02-14  Bruno Haible  <bruno@clisp.org>
14354
14355         * modules/mbspcasecmp-tests: New file.
14356         * tests/test-mbspcasecmp.sh: New file.
14357         * tests/test-mbspcasecmp.c: New file.
14358
14359         New module mbspcasecmp.
14360         * modules/mbspcasecmp: New file.
14361         * lib/mbspcasecmp.c: New file.
14362         * lib/string_.h (strncasecmp): Change warning message.
14363         (mbspcasecmp): New declaration.
14364         * m4/mbspcasecmp.m4: New file.
14365         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14366         GNULIB_MBSPCASECMP.
14367         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
14368         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
14369
14370 2007-02-14  Bruno Haible  <bruno@clisp.org>
14371
14372         * modules/mbsncasecmp-tests: New file.
14373         * tests/test-mbsncasecmp.sh: New file.
14374         * tests/test-mbsncasecmp.c: New file.
14375
14376         New module mbsncasecmp.
14377         * modules/mbsncasecmp: New file.
14378         * lib/mbsncasecmp.c: New file.
14379         * lib/string_.h (mbsncasecmp): New declaration.
14380         * m4/mbsncasecmp.m4: New file.
14381         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14382         GNULIB_MBSNCASECMP.
14383         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
14384         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
14385
14386 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
14387
14388         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
14389         Verify that it doesn't overlap with our flags.
14390         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
14391         do not have the desired effect in multibyte locales; instead, use
14392         mbscasecmp.
14393         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
14394         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
14395         we don't require GNU fnmatch ourselves (if our users require it, they
14396         should do so explicitly).
14397
14398         Fix regex code so it doesn't rely on strcasecmp.
14399         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
14400         Otherwise, include gnulib's langinfo.h.
14401         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
14402         undesirable behavior in non-C locales.  Instead, rely on localecharset.
14403         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
14404         * modules/regex (FILES): Remove m4/codeset.m4.
14405         (Depends-on): Add localcharset.  Remove strcase.
14406
14407 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14408
14409         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
14410         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
14411
14412 2007-02-13  Bruno Haible  <bruno@clisp.org>
14413
14414         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
14415         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14416
14417 2007-02-12  Bruno Haible  <bruno@clisp.org>
14418
14419         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
14420         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
14421         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
14422         time warning rather than a link error.
14423
14424 2007-02-12  Bruno Haible  <bruno@clisp.org>
14425
14426         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
14427         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
14428         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14429
14430 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
14431
14432         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
14433         args, not 2.
14434
14435 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
14436
14437         New module 'time', so that apps can include <time.h> as per
14438         POSIX and GNU instead of separate include files like time_r.h
14439         and timegm.h.  This implementation tries out a simpler approach
14440         for replacing decls in standard include files (as compared to
14441         the string module), somewhat as an experiment.
14442
14443         * config/srclist.txt: Comment out mktime.c for now.
14444         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
14445         since it doesn't apply any more.  Use generic wording instead.
14446         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
14447         'time'.
14448         * lib/time_.h, m4/time_h.m4, modules/time: New files.
14449         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
14450         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
14451         Don't include <sys/types.h>; no longer needed since we assume C89.
14452         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
14453         * lib/strftime.c: Likewise.
14454         * lib/time_r.c: Likewise.
14455         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
14456         * lib/nanosleep.c: Include <time.h> first, to check interface.
14457         * lib/strptime.c: Likewise.
14458         * lib/time_r.c: Likewise.
14459         * lib/timegm.c: Likewise.
14460         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
14461         needed.
14462         * lib/timegm.c: Don't include timegm.h; no longer needed.
14463         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
14464         time.h now handles any problems in that area.
14465         (struct timespec, nanosleep): Remove; time.h now arranges for these.
14466         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
14467         that time.h defines struct timespec.
14468         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
14469         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
14470         handles that.
14471         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
14472         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
14473         needed.  Set REPLACE_LOCALTIME.
14474         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
14475         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
14476         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
14477         nanosleep; time_h.m4 now does that.  Don't require
14478         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
14479         module handles this now.
14480         * modules/getdate (Depends-on): Remove timespec.  Add time.
14481         * modules/nanosleep (Depends-on): Likewise.
14482         * modules/stat-time (Depends-on): Likewise.
14483         * modules/nanosleep (Include): Include time.h, not timespec.h.
14484         * modules/strptime (Files): Remove lib/strptime.h.
14485         (Depends-on): Add extensions, time.
14486         (Include): Include time.h, not strptime.h.
14487         * modules/time_r (Files): Remove lib/time_r.h.
14488         (Depends-on): Add time.
14489         (Include): Include time.h, not time_r.h.
14490         * modules/timegm: Likewise.
14491         * modules/timespec (Description): Now does timespec-related decls
14492         of our own, instead of struct timespec itself.
14493         (Depends-on): Add time; remove extensions.
14494         (Maintainer): Add self.
14495         * modules/utimecmp (Depends-on): Add time; remove timespec.
14496         * modules/utimens (Depends-on): Likewise.
14497         * modules/xnanosleep (Depends-on): Likewise.
14498
14499 2007-02-11  Bruno Haible  <bruno@clisp.org>
14500
14501         * lib/c-strstr.c: Include allocsa.h.
14502         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14503         * lib/c-strcasestr.c: Include allocsa.h.
14504         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14505         * lib/strcasestr.c: Include allocsa.h.
14506         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
14507         * lib/mbsstr.c: Include allocsa.h.
14508         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14509         allocsa/freesa instead of malloc/free.
14510         * lib/mbscasestr.c: Include allocsa.h.
14511         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
14512         allocsa/freesa instead of malloc/free.
14513         * modules/c-strstr (Depends-on): Add allocsa.
14514         * modules/c-strcasestr (Depends-on): Likewise.
14515         * modules/strcasestr (Depends-on): Likewise.
14516         * modules/mbsstr (Depends-on): Likewise.
14517         * modules/mbscasestr (Depends-on): Likewise.
14518
14519 2007-02-11  Bruno Haible  <bruno@clisp.org>
14520
14521         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
14522
14523         * modules/mbsspn-tests: New file.
14524         * tests/test-mbsspn.sh: New file.
14525         * tests/test-mbsspn.c: New file.
14526
14527 2007-02-11  Bruno Haible  <bruno@clisp.org>
14528
14529         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
14530
14531         * modules/mbspbrk-tests: New file.
14532         * tests/test-mbspbrk.sh: New file.
14533         * tests/test-mbspbrk.c: New file.
14534
14535 2007-02-11  Bruno Haible  <bruno@clisp.org>
14536
14537         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
14538         unneeded cast.
14539
14540         * modules/mbscspn-tests: New file.
14541         * tests/test-mbscspn.sh: New file.
14542         * tests/test-mbscspn.c: New file.
14543
14544 2007-02-11  Bruno Haible  <bruno@clisp.org>
14545
14546         * modules/mbscasecmp-tests: New file.
14547         * tests/test-mbscasecmp.sh: New file.
14548         * tests/test-mbscasecmp.c: New file.
14549
14550 2007-02-11  Bruno Haible  <bruno@clisp.org>
14551
14552         Ensure O(n) worst-case complexity of mbscasestr.
14553         * lib/mbscasestr.c: Include stdbool.h.
14554         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14555         functions.
14556         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
14557         the bookkeeping indicates that it's worth it.
14558         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
14559
14560         * modules/mbscasestr-tests: New file.
14561         * tests/test-mbscasestr1.c: New file.
14562         * tests/test-mbscasestr2.sh: New file.
14563         * tests/test-mbscasestr2.c: New file.
14564         * tests/test-mbscasestr3.sh: New file.
14565         * tests/test-mbscasestr3.c: New file.
14566         * tests/test-mbscasestr4.sh: New file.
14567         * tests/test-mbscasestr4.c: New file.
14568         * m4/locale-tr.m4: New file.
14569
14570 2007-02-11  Bruno Haible  <bruno@clisp.org>
14571
14572         Ensure O(n) worst-case complexity of mbsstr.
14573         * lib/mbsstr.c: Include stdbool.h.
14574         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
14575         functions.
14576         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
14577         bookkeeping indicates that it's worth it.
14578         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
14579
14580         * modules/mbsstr-tests: New file.
14581         * tests/test-mbsstr1.c: New file.
14582         * tests/test-mbsstr2.sh: New file.
14583         * tests/test-mbsstr2.c: New file.
14584         * tests/test-mbsstr3.sh: New file.
14585         * tests/test-mbsstr3.c: New file.
14586         * m4/locale-fr.m4: New file.
14587
14588 2007-02-11  Bruno Haible  <bruno@clisp.org>
14589
14590         * lib/mbsrchr.c (mbsrchr): Fix bug.
14591
14592         * modules/mbsrchr-tests: New file.
14593         * tests/test-mbsrchr.sh: New file.
14594         * tests/test-mbsrchr.c: New file.
14595
14596 2007-02-11  Bruno Haible  <bruno@clisp.org>
14597
14598         * lib/mbschr.c (mbschr): Fix bug.
14599
14600         * modules/mbschr-tests: New file.
14601         * tests/test-mbschr.sh: New file.
14602         * tests/test-mbschr.c: New file.
14603         * m4/locale-zh.m4: New file.
14604
14605 2007-02-11  Bruno Haible  <bruno@clisp.org>
14606
14607         Support for copying multibyte string iterators.
14608         * lib/mbiter.h: Include <string.h>.
14609         (mbiter_multi_copy): New function.
14610         (mbi_copy): New macro.
14611         * lib/mbuiter.h: Include <string.h>.
14612         (mbuiter_multi_copy): New function.
14613         (mbui_copy): New macro.
14614
14615 2007-02-11  Bruno Haible  <bruno@clisp.org>
14616
14617         New module mbslen.
14618         * modules/mbslen: New file.
14619         * lib/mbslen.c: New file.
14620         * lib/string_.h (mbslen): New declaration.
14621         * m4/mbslen.m4: New file.
14622         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14623         GNULIB_MBSLEN.
14624         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
14625         * MODULES.html.sh (Internationalization functions): Add mbslen.
14626
14627 2007-02-11  Bruno Haible  <bruno@clisp.org>
14628
14629         Ensure O(n) worst-case complexity of strcasestr substitute.
14630         * lib/strcasestr.c: Include stdbool.h.
14631         (knuth_morris_pratt): New function.
14632         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14633         bookkeeping indicates that it's worth it.
14634         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
14635
14636         * modules/strcasestr-tests: New file.
14637         * tests/test-strcasestr.c: New file.
14638
14639 2007-02-11  Bruno Haible  <bruno@clisp.org>
14640
14641         Ensure O(n) worst-case complexity of c_strcasestr.
14642         * lib/c-strcasestr.c: Include stdbool.h, string.h.
14643         (knuth_morris_pratt): New function.
14644         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
14645         the bookkeeping indicates that it's worth it.
14646         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
14647
14648         * modules/c-strcasestr-tests: New file.
14649         * tests/test-c-strcasestr.c: New file.
14650
14651 2007-02-11  Bruno Haible  <bruno@clisp.org>
14652
14653         Ensure O(n) worst-case complexity of c_strstr.
14654         * lib/c-strstr.c: Include stdbool.h, string.h.
14655         (knuth_morris_pratt): New function.
14656         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
14657         bookkeeping indicates that it's worth it.
14658         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
14659
14660         * lib/c-strstr.c: Complete rewrite for maintainability.
14661
14662         * modules/c-strstr-tests: New file.
14663         * tests/test-c-strstr.c: New file.
14664
14665 2007-02-11  Bruno Haible  <bruno@clisp.org>
14666
14667         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
14668         5.2.1 and earlier, whereby \055 was treated just like the range
14669         delimiter '-'.
14670         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
14671
14672 2007-02-08  Bruno Haible  <bruno@clisp.org>
14673
14674         * modules/regex (Depends-on): Add stdbool.
14675         Reported by Dalibor Topic <robilad@kaffe.org>.
14676
14677 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
14678
14679         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
14680         Prefer returning from main to exiting from it.
14681         Remove unnecessary parens after sizeof.
14682
14683 2007-02-05  Bruno Haible  <bruno@clisp.org>
14684
14685         New module mbssep.
14686         * modules/mbssep: New file.
14687         * lib/mbssep.c: New file.
14688         * lib/string_.h (strsep): Add a conditional link warning.
14689         (mbssep): New declaration.
14690         * m4/mbssep.m4: New file.
14691         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14692         GNULIB_MBSSEP.
14693         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
14694         * MODULES.html.sh (Internationalization functions): Add mbssep.
14695
14696 2007-02-05  Bruno Haible  <bruno@clisp.org>
14697
14698         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
14699         Optimize search in case of 1 delimiter.
14700
14701 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
14702
14703         * lib/acl.h: Include sys/types.h before sys/acl.h.
14704
14705 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
14706
14707         Merge upstream fix for glibc bugzilla #3957:
14708
14709         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
14710
14711         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
14712         bit for RE_HAT_LISTS_NOT_NEWLINE.
14713         (build_charclass_op): Remove bogus comment.
14714
14715 2007-02-05  Simon Josefsson  <simon@josefsson.org>
14716
14717         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
14718
14719 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
14720
14721         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
14722         * lib/memmem.c [!defined _LIBC]: Include config.h.
14723
14724 2007-02-04  Bruno Haible  <bruno@clisp.org>
14725
14726         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
14727         warning message.
14728
14729 2007-02-04  Bruno Haible  <bruno@clisp.org>
14730
14731         New module mbstok_r.
14732         * modules/mbstok_r: New file.
14733         * lib/mbstok_r.c: New file.
14734         * lib/string_.h (strtok_r): Change argument names to match the
14735         comments. Add a conditional link warning.
14736         (mbstok_r): New declaration.
14737         * m4/mbstok_r.m4: New file.
14738         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14739         GNULIB_MBSTOK_R.
14740         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
14741         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
14742
14743 2007-02-04  Bruno Haible  <bruno@clisp.org>
14744
14745         New module mbsspn.
14746         * modules/mbsspn: New file.
14747         * lib/mbsspn.c: New file.
14748         * lib/string_.h (strspn): Add a conditional link warning.
14749         (mbsspn): New declaration.
14750         * m4/mbsspn.m4: New file.
14751         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14752         GNULIB_MBSSPN.
14753         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
14754         * MODULES.html.sh (Internationalization functions): Add mbsspn.
14755
14756 2007-02-04  Bruno Haible  <bruno@clisp.org>
14757
14758         New module mbspbrk.
14759         * modules/mbspbrk: New file.
14760         * lib/mbspbrk.c: New file.
14761         * lib/string_.h (strpbrk): Add a conditional link warning.
14762         (mbspbrk): New declaration.
14763         * m4/mbspbrk.m4: New file.
14764         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14765         GNULIB_MBSPBRK.
14766         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
14767         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
14768
14769 2007-02-04  Bruno Haible  <bruno@clisp.org>
14770
14771         New module mbscspn.
14772         * modules/mbscspn: New file.
14773         * lib/mbscspn.c: New file.
14774         * lib/string_.h (strcspn): Add a conditional link warning.
14775         (mbscspn): New declaration.
14776         * m4/mbscspn.m4: New file.
14777         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14778         GNULIB_MBSCSPN.
14779         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
14780         * MODULES.html.sh (Internationalization functions): Add mbscspn.
14781
14782 2007-02-04  Bruno Haible  <bruno@clisp.org>
14783
14784         New module mbscasestr, reduced goal of strcasestr.
14785         * modules/mbscasestr: New file.
14786         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
14787         (mbscasestr): Renamed from strcasestr.
14788         * lib/strcasestr.c: Don't include mbuiter.h.
14789         (strcasestr): Remove support for multibyte locales.
14790         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
14791         Change the conditional link warning.
14792         (mbscasestr): New declaration.
14793         * m4/mbscasestr.m4: New file.
14794         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
14795         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
14796         REPLACE_STRCASESTR.
14797         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
14798         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
14799         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
14800         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
14801         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
14802         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
14803         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
14804         (Depends-on): Remove mbuiter.
14805         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
14806
14807 2007-02-04  Bruno Haible  <bruno@clisp.org>
14808
14809         Simplify handling of strncasecmp.
14810         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
14811         the conditional link warning.
14812         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
14813         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
14814         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
14815         * modules/strcase (configure.ac): Don't invoke
14816         gl_STRING_MODULE_INDICATOR.
14817         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
14818
14819 2007-02-04  Bruno Haible  <bruno@clisp.org>
14820
14821         New module mbscasecmp, reduced goal of strcasecmp.
14822         * modules/mbscasecmp: New file.
14823         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
14824         (mbscasecmp): Renamed from strcasecmp.
14825         * lib/strcasecmp.c: Don't include mbuiter.h.
14826         (strcasecmp): Remove support for multibyte locales.
14827         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
14828         Change the conditional link warning.
14829         (mbscasecmp): New declaration.
14830         * m4/mbscasecmp.m4: New file.
14831         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
14832         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
14833         REPLACE_STRCASECMP.
14834         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
14835         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14836         GNULIB_MBSCASECMP.
14837         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
14838         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
14839         * modules/strcase (Files): Remove m4/mbrtowc.m4.
14840         (Depends-on): Remove mbuiter.
14841         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
14842
14843 2007-02-04  Bruno Haible  <bruno@clisp.org>
14844
14845         New module mbsstr. Remove module strstr.
14846         * modules/mbsstr: New file.
14847         * modules/strstr: Remove file.
14848         * lib/mbsstr.c: Renamed from lib/strstr.c.
14849         (mbsstr): Renamed from strstr.
14850         * lib/string_.h (strstr): Remove declaration. Change the conditional
14851         link warning.
14852         (mbsstr): New declaration.
14853         * m4/mbsstr.m4: New file.
14854         * m4/strstr.m4: Remove file.
14855         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
14856         REPLACE_STRSTR.
14857         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
14858         Don't initialize GNULIB_STRSTR.
14859         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
14860         substitute GNULIB_STRSTR and REPLACE_STRSTR.
14861         * MODULES.html.sh (Internationalization functions): Add mbsstr.
14862         (Support for systems lacking ANSI C 89): Remove strstr.
14863
14864 2007-02-04  Bruno Haible  <bruno@clisp.org>
14865
14866         New module mbsrchr.
14867         * modules/mbsrchr: New file.
14868         * lib/mbsrchr.c: New file.
14869         * lib/string_.h (strrchr): Add a conditional link warning.
14870         (mbsrchr): New declaration.
14871         * m4/mbsrchr.m4: New file.
14872         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14873         GNULIB_MBSRCHR.
14874         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
14875         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
14876
14877 2007-02-04  Bruno Haible  <bruno@clisp.org>
14878
14879         New module mbschr.
14880         * modules/mbschr: New file.
14881         * lib/mbschr.c: New file.
14882         * lib/string_.h (strchr): Add a conditional link warning.
14883         (mbschr): New declaration.
14884         * m4/mbschr.m4: New file.
14885         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
14886         GNULIB_MBSCHR.
14887         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
14888         * MODULES.html.sh (Internationalization functions): Add mbschr.
14889
14890 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
14891
14892         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
14893
14894         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
14895
14896 2007-02-04  Bruno Haible  <bruno@clisp.org>
14897
14898         New module description section 'configure.ac-early'.
14899         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
14900         (func_get_autoconf_early_snippet): New function.
14901         (func_import, func_create_testdir): Use it. Remove special cases for
14902         modules 'extensions' and 'lock'.
14903         * modules/extensions (configure.ac-early): Require
14904         gl_USE_SYSTEM_EXTENSIONS.
14905         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
14906
14907 2007-02-04  Bruno Haible  <bruno@clisp.org>
14908
14909         Make use of gcj-4.3's -fsource and -ftarget option.
14910         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
14911         and if so try the options -fsource and -ftarget.
14912         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
14913         source_version, ftarget_option, target_version arguments.
14914         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
14915         (is_envjavac_oldgcj_14_14_usable): Renamed from
14916         is_envjavac_gcj_14_14_usable.
14917         (is_envjavac_oldgcj_14_13_usable): Renamed from
14918         is_envjavac_gcj_14_13_usable.
14919         (is_gcj_present): Update.
14920         (is_gcj_43, is_gcj43_usable): New functions.
14921         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
14922         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
14923         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
14924         try the options -fsource and -ftarget.
14925
14926 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
14927
14928         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
14929         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
14930         larger value.
14931
14932 2007-02-03  Jim Meyering  <jim@meyering.net>
14933
14934         Give tools a better chance to allocate space for very large buffers.
14935         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
14936
14937         Make pwd and readlink work also when run with an unreadable parent dir
14938         on systems with openat support.
14939         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
14940         provided getcwd function, even when we have openat support.
14941         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
14942
14943 2007-02-02  Bruno Haible  <bruno@clisp.org>
14944
14945         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
14946         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
14947         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
14948         portability problems if one of these functions is only used on specific
14949         platforms.
14950         Reported by Paul Eggert.
14951
14952 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
14953
14954         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
14955         is causing more trouble than it's curing.
14956         * lib/regex_internal.h (__mempcpy): Remove.
14957         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
14958         (and make the code a tad smaller to boot).
14959         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
14960
14961 2007-02-02  Jim Meyering  <jim@meyering.net>
14962
14963         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
14964         section, not in the Makefile.am: one.
14965
14966 2007-02-02  Eric Blake  <ebb9@byu.net>
14967
14968         * lib/strchrnul.c: Always include config.h first.
14969
14970         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
14971         gnulib strstr is not necessary here.
14972
14973 2007-02-02  Simon Josefsson  <simon@josefsson.org>
14974
14975         * m4/socklen.m4: Fix typo.
14976
14977 2007-02-02  Eric Blake  <ebb9@byu.net>
14978
14979         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
14980         * modules/netinet_in (Makefile.am): Likewise.
14981
14982 2007-02-01  Bruno Haible  <bruno@clisp.org>
14983
14984         * lib/string_.h (GL_LINK_WARNING): New macro.
14985         (strcasecmp, strstr, strcasestr): If provided by the system,
14986         conditionally define as a macro that leads to a warning instead of to
14987         an error.
14988         (strncasecmp): Conditionally define as a macro that leads to a warning.
14989
14990 2007-02-01  Karl Berry  <karl@gnu.org>
14991
14992         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
14993
14994 2007-02-01  Bruno Haible  <bruno@clisp.org>
14995
14996         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
14997         renamings.
14998
14999 2007-02-01  Eric Blake  <ebb9@byu.net>
15000
15001         * modules/regex (Depends-on): Revert dependence on mempcpy.
15002         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
15003         module's definition of mempcpy.
15004         Reported by Paul Eggert.
15005
15006 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
15007
15008         * lib/string_.h: If the gnulib module XYZ is not present, undefine
15009         the symbol XYZ before redefining it.  This fixes a problem with
15010         programs that don't use XYZ, when compiled on systems that define
15011         XYZ to something else.
15012
15013 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
15014
15015         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
15016         occurs when "mkdir -m foo" creates a setgid directory that is (1)
15017         writeable to group or other and (2) is intended to have a special
15018         mode bit that is set or cleared.  In such a case, the directory
15019         should be neither group- nor other-writeable until the special
15020         mode bits are right.
15021
15022 2007-01-31  Eric Blake  <ebb9@byu.net>
15023
15024         * modules/mountlist (Depends-on): Add strstr.
15025
15026         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
15027         bug.
15028         * modules/string (Makefile.am): Remove redundant replacement.
15029         * modules/regex (Depends-on): Add mempcpy.
15030
15031 2007-01-31  Bruno Haible  <bruno@clisp.org>
15032
15033         New module description field 'Link'.
15034         * gnulib-tool (func_usage): Document --extract-link-directive.
15035         (sed_extract_prog): Recognize 'Link' directive.
15036         (func_get_link_directive): New function.
15037         (func_import): Show summary of link directives.
15038         Handle --extract-link-directive option.
15039         * modules/acl (Link): New section.
15040         * modules/clock-time (Link): New section.
15041         * modules/euidaccess (Link): New section.
15042         * modules/gettext (Link): New section.
15043         * modules/iconv (Link): New section.
15044         * modules/lock (Link): New section.
15045         * modules/nanosleep (Link): New section.
15046         * modules/readline (Link): New section.
15047
15048 2007-01-27  Bruno Haible  <bruno@clisp.org>
15049
15050         Enforce the use of gnulib modules for unportable <string.h> functions.
15051         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
15052         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
15053         (gl_HEADER_STRING_H_BODY): Require it.
15054         * lib/string_.h: If the gnulib module XYZ is not present, redefine
15055         the symbol XYZ to one that gives a link error.
15056         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
15057         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
15058         * modules/mempcpy (configure.ac): Likewise.
15059         * modules/memrchr (configure.ac): Likewise.
15060         * modules/stpcpy (configure.ac): Likewise.
15061         * modules/stpncpy (configure.ac): Likewise.
15062         * modules/strcase (configure.ac): Likewise.
15063         * modules/strcasestr (configure.ac): Likewise.
15064         * modules/strchrnul (configure.ac): Likewise.
15065         * modules/strdup (configure.ac): Likewise.
15066         * modules/strndup (configure.ac): Likewise.
15067         * modules/strnlen (configure.ac): Likewise.
15068         * modules/strpbrk (configure.ac): Likewise.
15069         * modules/strsep (configure.ac): Likewise.
15070         * modules/strstr (configure.ac): Likewise.
15071         * modules/strtok_r (configure.ac): Likewise.
15072
15073 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
15074
15075         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
15076
15077 2007-01-30  Jim Meyering  <jim@meyering.net>
15078
15079         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
15080
15081 2007-01-29  Bruno Haible  <bruno@clisp.org>
15082
15083         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
15084         * lib/execute.c: Likewise.
15085         * lib/pipe.c: Likewise.
15086         * lib/printf-args.h: Likewise.
15087         * lib/printf-args.c: Likewise.
15088         * lib/printf-parse.c: Likewise.
15089         * lib/vasnprintf.c: Likewise.
15090
15091 2007-01-29  Eric Blake  <ebb9@byu.net>
15092
15093         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
15094         declaration.
15095
15096 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
15097
15098         * lib/strptime.h (strptime): Use 'restrict' for args where
15099         POSIX requires this.
15100         * lib/strptime.c (strptime): Likewise.
15101         Change license notice from LGPL to GPL, since gnulib-tool will
15102         change this as needed.
15103         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
15104         defined.
15105         Include "strptime.h" first, to check interface.
15106         Do not #undef _LIBC and _NL_CURRENT.
15107         Do not include <stdlib.h>; no longer needed.
15108         Include "time_r.h" and declare ptime_locale_status
15109         only if _LIBC is not defined.
15110         (__P): Remove unused macro.
15111         (match_string): Bring back glibc version, but use it only if _LIBC
15112         is defined.
15113         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
15114         Remove unnecessary assertion and abort() call.
15115         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
15116         * m4/strptime.m4: Fix serial number comment.
15117         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
15118         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
15119         (Depends-on): Add time_r.
15120
15121 2007-01-29  Bruno Haible  <bruno@clisp.org>
15122
15123         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
15124         strptime.
15125         * modules/strptime (Depends-on): Add stdbool.
15126         * lib/strptime.h: Include <time.h> always. Add comments.
15127
15128 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
15129
15130         * modules/strptime: New file.
15131         * lib/strptime.h: New file.
15132         * lib/strptime.c: New file.
15133         * m4/strptime.m4: New file.
15134
15135 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
15136
15137         * MODULES.html.sh: New module mpsort.
15138         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
15139
15140         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
15141         a circularity problem with HP-UX ia64 reported by Bob Proulx in
15142         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
15143         All uses changed.
15144         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
15145         All uses changed.
15146         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
15147         to _Restrict_.
15148         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
15149         the parameter matches the prototype.
15150
15151 2007-01-28  Jim Meyering  <jim@meyering.net>
15152
15153         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
15154         sys/time.h here, reverting that part of the previous patch:
15155         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
15156
15157 2007-01-28  Bruno Haible  <bruno@clisp.org>
15158
15159         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
15160         value of $(SYS_TIME_H).
15161         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
15162         remove it conditionally, too. [added by Jim Meyering]
15163         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
15164         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
15165         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
15166         GETTIMEOFDAY_REPLACEMENT to 1.
15167
15168 2007-01-28  Bruno Haible  <bruno@clisp.org>
15169
15170         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
15171         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
15172         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
15173         Set UNISTD_H instead of UNISTD_H2.
15174         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
15175
15176 2007-01-28  Bruno Haible  <bruno@clisp.org>
15177
15178         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
15179         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
15180
15181 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15182
15183         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
15184         (func_create_testdir): Ensure C locale for `grep' and `tr'
15185         character ranges.
15186         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
15187         ACLOCAL_AMFLAGS parsing state machine.
15188
15189 2007-01-27  Bruno Haible  <bruno@clisp.org>
15190
15191         * modules/unistr/base: Update.
15192
15193 2007-01-27  Bruno Haible  <bruno@clisp.org>
15194
15195         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
15196         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
15197         * modules/unistr/u32-mbtouc-unsafe: Renamed from
15198         modules/unistr/u32-mbtouc.
15199         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
15200         * lib/unistr.h: Update.
15201         * lib/linebreak.c: Update.
15202         * modules/unistr/u32-mbtouc: Renamed from
15203         modules/unistr/u32-mbtouc-safe.
15204         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
15205         * lib/unistr.h: Update.
15206         * lib/unistr/u32-to-u8.c: Update.
15207         * lib/unistr/u32-to-u16.c: Update.
15208
15209 2007-01-27  Bruno Haible  <bruno@clisp.org>
15210
15211         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
15212         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
15213         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
15214         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
15215         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
15216         * modules/unistr/u16-mbtouc-unsafe: Renamed from
15217         modules/unistr/u16-mbtouc.
15218         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
15219         * lib/unistr.h: Update.
15220         * lib/linebreak.c: Update.
15221         * modules/linebreak: Update.
15222         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
15223         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
15224         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
15225         * modules/unistr/u16-mbtouc: Renamed from
15226         modules/unistr/u16-mbtouc-safe.
15227         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
15228         * lib/unistr.h: Update.
15229         * lib/unistr/u16-to-u8.c: Update.
15230         * modules/unistr/u16-to-u8: Update.
15231         * lib/unistr/u16-to-u32.c: Update.
15232         * modules/unistr/u16-to-u32: Update.
15233
15234 2007-01-27  Bruno Haible  <bruno@clisp.org>
15235
15236         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
15237         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
15238         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
15239         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
15240         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
15241         * modules/unistr/u8-mbtouc-unsafe: Renamed from
15242         modules/unistr/u8-mbtouc.
15243         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
15244         * lib/unistr.h: Update.
15245         * lib/striconveh.c: Update.
15246         * modules/striconveh: Update.
15247         * lib/linebreak.c: Update.
15248         * modules/linebreak: Update.
15249         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
15250         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
15251         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
15252         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
15253         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
15254         * lib/unistr.h: Update.
15255         * lib/striconveh.c: Update.
15256         * modules/striconveh: Update.
15257         * lib/unistr/u8-to-u16.c: Update.
15258         * modules/unistr/u8-to-u16: Update.
15259         * lib/unistr/u8-to-u32.c: Update.
15260         * modules/unistr/u8-to-u32: Update.
15261
15262 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15263
15264         Sync from Libtool.
15265         * lib/argz.c: Do not include strings.h nor memory.h, include
15266         string.h unconditionally.  Patch by Simon Josefsson.
15267
15268 2007-01-27  Bruno Haible  <bruno@clisp.org>
15269
15270         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
15271         from gl_HEADER_STRING_H_BODY.
15272         (gl_HEADER_STRING_H_BODY): Require it.
15273         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
15274         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
15275         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
15276         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
15277         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
15278         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
15279         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
15280         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
15281         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
15282         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
15283         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
15284         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
15285         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
15286         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
15287         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
15288
15289 2007-01-27  Bruno Haible  <bruno@clisp.org>
15290
15291         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
15292         check_PROGRAMS into noinst_PROGRAMS.
15293         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
15294         check_PROGRAMS in this case.
15295         (func_import): Set for_test to false.
15296         (func_create_testdir): Set for_test to true.
15297
15298 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
15299             Bruno Haible  <bruno@clisp.org>
15300
15301         * modules/strcasestr (Files): Remove lib/strcasestr.h.
15302         (Depends-on): Add string.
15303         (Includes): Use <string.h> instead of strcasestr.h.
15304         * modules/string (Makefile.am): Also substitute the value of
15305         REPLACE_STRCASESTR.
15306         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
15307         assume strcasestr is declared in <string.h> not <strings.h>. Also
15308         set REPLACE_STRCASESTR.
15309         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
15310         REPLACE_STRCASESTR.
15311         * lib/strcasestr.h: Remove file.
15312         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
15313         * lib/string_.h (strcasestr): New declaration.
15314
15315 2007-01-27  Bruno Haible  <bruno@clisp.org>
15316
15317         * lib/string_.h: Use 'extern'.
15318
15319 2007-01-27  Jim Meyering  <jim@meyering.net>
15320
15321         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
15322         of set-but-not-used local, "q".
15323
15324         * lib/mempcpy.c: Include <config.h> before <string.h>.
15325         This fixes a compilation error on HP-UX, due to the system's
15326         "restrict"-using mempcpy prototype.
15327
15328 2007-01-26  Bruno Haible  <bruno@clisp.org>
15329
15330         Small optimization.
15331         * lib/javacomp.c: Include c-strstr.h.
15332          (is_envjavac_gcj): Use c_strstr instead of strstr.
15333         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
15334
15335 2007-01-26  Bruno Haible  <bruno@clisp.org>
15336
15337         * MODULES.html.sh (Unicode string functions): Add the new modules.
15338
15339         * modules/uniconv/u32-strconv-to-locale: New file.
15340         * lib/uniconv/u32-strconv-to-locale.c: New file.
15341
15342         * modules/uniconv/u16-strconv-to-locale: New file.
15343         * lib/uniconv/u16-strconv-to-locale.c: New file.
15344
15345         * modules/uniconv/u8-strconv-to-locale: New file.
15346         * lib/uniconv/u8-strconv-to-locale.c: New file.
15347
15348         * modules/uniconv/u32-strconv-from-locale: New file.
15349         * lib/uniconv/u32-strconv-from-locale.c: New file.
15350
15351         * modules/uniconv/u16-strconv-from-locale: New file.
15352         * lib/uniconv/u16-strconv-from-locale.c: New file.
15353
15354         * modules/uniconv/u8-strconv-from-locale: New file.
15355         * lib/uniconv/u8-strconv-from-locale.c: New file.
15356
15357         * modules/uniconv/u32-strconv-to-enc: New file.
15358         * lib/uniconv/u32-strconv-to-enc.c: New file.
15359         * modules/uniconv/u32-strconv-to-enc-tests: New file.
15360         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
15361
15362         * modules/uniconv/u16-strconv-to-enc: New file.
15363         * lib/uniconv/u16-strconv-to-enc.c: New file.
15364         * lib/uniconv/u-strconv-to-enc.h: New file.
15365         * modules/uniconv/u16-strconv-to-enc-tests: New file.
15366         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
15367
15368         * modules/uniconv/u8-strconv-to-enc: New file.
15369         * lib/uniconv/u8-strconv-to-enc.c: New file.
15370         * modules/uniconv/u8-strconv-to-enc-tests: New file.
15371         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
15372
15373         * modules/uniconv/u32-strconv-from-enc: New file.
15374         * lib/uniconv/u32-strconv-from-enc.c: New file.
15375         * modules/uniconv/u32-strconv-from-enc-tests: New file.
15376         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
15377
15378         * modules/uniconv/u16-strconv-from-enc: New file.
15379         * lib/uniconv/u16-strconv-from-enc.c: New file.
15380         * modules/uniconv/u16-strconv-from-enc-tests: New file.
15381         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
15382
15383         * modules/uniconv/u8-strconv-from-enc: New file.
15384         * lib/uniconv/u8-strconv-from-enc.c: New file.
15385         * lib/uniconv/u-strconv-from-enc.h: New file.
15386         * modules/uniconv/u8-strconv-from-enc-tests: New file.
15387         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
15388
15389         * modules/uniconv/u32-conv-from-enc: New file.
15390         * lib/uniconv/u32-conv-from-enc.c: New file.
15391         * modules/uniconv/u32-conv-from-enc-tests: New file.
15392         * tests/uniconv/test-u32-conv-from-enc.c: New file.
15393
15394         * modules/uniconv/u16-conv-from-enc: New file.
15395         * lib/uniconv/u16-conv-from-enc.c: New file.
15396         * lib/uniconv/u-conv-from-enc.h: New file.
15397         * modules/uniconv/u16-conv-from-enc-tests: New file.
15398         * tests/uniconv/test-u16-conv-from-enc.c: New file.
15399
15400         * modules/uniconv/u8-conv-from-enc: New file.
15401         * lib/uniconv/u8-conv-from-enc.c: New file.
15402         * modules/uniconv/u8-conv-from-enc-tests: New file.
15403         * tests/uniconv/test-u8-conv-from-enc.c: New file.
15404
15405         * modules/uniconv/base: New file.
15406         * lib/uniconv.h: New file.
15407
15408 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
15409
15410         * doc/gnulib-tool.texi (Initial import): Update to match current
15411         behavior with strdup module.
15412         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
15413         * lib/memmem.h: Remove; all uses removed.  This is now done
15414         by <string.h>.
15415         * lib/mempcpy.h: Likewise.
15416         * lib/memrchr.h: Likewise.
15417         * lib/stpcpy.h: Likewise.
15418         * lib/stpncpy.h: Likewise.
15419         * lib/strcase.h: Likewise.
15420         * lib/strchrnul.h: Likewise.
15421         * lib/strdup.h: Likewise.
15422         * lib/strndup.h: Likewise.
15423         * lib/strnlen.h: Likewise.
15424         * lib/strpbrk.h: Likewise.
15425         * lib/strsep.h: Likewise.
15426         * lib/strstr.h: Likewise.
15427         * lib/strtok_r.h: Likewise.
15428         * lib/string_.h: New file.
15429         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
15430         Rely on <string.h> instead.
15431         * lib/canon-host.c: Likewise.
15432         * lib/chdir-long.c: Likewise.
15433         * lib/concatpath.c: Likewise.
15434         * lib/exclude.c: Likewise.
15435         * lib/fchdir.c: Likewise.
15436         * lib/getaddrinfo.c: Likewise.
15437         * lib/getcwd.c: Likewise.
15438         * lib/getsubopt.c: Likewise.
15439         * lib/glob.c: Likewise.
15440         * lib/hard-locale.c: Likewise.
15441         * lib/iconvme.c: Likewise.
15442         * lib/javacomp.c: Likewise.
15443         * lib/mempcpy.c: Likewise.
15444         * lib/memrchr.c: Likewise.
15445         * lib/regex_internal.h: Likewise.
15446         * lib/stpncpy.c: Likewise.
15447         * lib/strcasecmp.c: Likewise.
15448         * lib/strchrnul.c: Likewise.
15449         * lib/strdup.c: Likewise.
15450         * lib/striconv.c: Likewise.
15451         * lib/striconveh.c: Likewise.
15452         * lib/striconveha.c: Likewise.
15453         * lib/strncasecmp.c: Likewise.
15454         * lib/strndup.c: Likewise.
15455         * lib/strnlen.c: Likewise.
15456         * lib/strsep.c: Likewise.
15457         * lib/strstr.c: Likewise.
15458         * lib/strtok_r.c: Likewise.
15459         * lib/userspec.c: Likewise.
15460         * lib/w32spawn.h: Likewise.
15461         * lib/xstrndup.c: Likewise.
15462         * lib/mountlist.c (strstr): Remove decl.
15463         * m4/string_h.m4: New file.
15464         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
15465         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
15466         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
15467         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
15468         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
15469         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
15470         Set REPLACE_STRCASECMP if necessary.
15471         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
15472         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
15473         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
15474         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
15475         HAVE_DECL_STRDUP if necessary.
15476         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
15477         since gl_FUNC_STRNDUP does that now.
15478         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
15479         Check for decl here...
15480         (gl_PREREQ_STRNLEN): ... not here.
15481         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
15482         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
15483         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
15484         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
15485         necessary.
15486         * modules/string: New file.
15487         * modules/memmem (Files): Remove special-purpose include file.
15488         (Depends-on): Add string.
15489         (Include): Include <string.h>, not the removed file.
15490         * modules/mempcpy: Likewise.
15491         * modules/memrchr: Likewise.
15492         * modules/stpcpy: Likewise.
15493         * modules/stpncpy: Likewise.
15494         * modules/strcase: Likewise.
15495         * modules/strchrnul: Likewise.
15496         * modules/strdup: Likewise.
15497         * modules/strndup: Likewise.
15498         * modules/strnlen: Likewise.
15499         * modules/strpbrk: Likewise.
15500         * modules/strsep: Likewise.
15501         * modules/strstr: Likewise.
15502         * modules/strtok_r: Likewise.
15503         * tests/test-dirname.c: Don't include "strdup.h", since
15504         <string.h> now suffices.
15505         * tests/test-memmem.c: Don't include "memmem.h", since
15506         <string.h> now suffices.
15507
15508 2007-01-25  Bruno Haible  <bruno@clisp.org>
15509
15510         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
15511         *resultp is 0.
15512
15513         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
15514         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
15515         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
15516         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
15517
15518         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
15519         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
15520         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
15521         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
15522         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
15523         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
15524
15525 2007-01-24  Bruno Haible  <bruno@clisp.org>
15526
15527         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
15528         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
15529         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
15530         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
15531         gl_FUNC_FTS_CORE.
15532         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
15533         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
15534         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
15535         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
15536         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
15537         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
15538         gl_FUNC_FCHOWNAT.
15539         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
15540         gl_FUNC_STRFTIME.
15541         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
15542         Reported by Ralf Wildenhues.
15543
15544 2007-01-24  Bruno Haible  <bruno@clisp.org>
15545
15546         Drop AC_REQUIRE calls that are redundant with the module dependencies.
15547         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
15548         gl_GETADDRINFO.
15549         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
15550         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
15551         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
15552
15553 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
15554
15555         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
15556         Don't use 'exit'; just return from 'main'.
15557         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
15558
15559         * lib/fnmatch_.h: Readjust white space and comments to match
15560         glibc, to avoid spurious diffs.
15561
15562 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15563
15564         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
15565         2004-12-01 change by Jakub Jelinek, since this code won't compile
15566         if !LIBC.  Problem reported by Bob Proulx.
15567
15568 2007-01-23  Bruno Haible  <bruno@clisp.org>
15569
15570         * lib/striconveh.c: Include c-strcaseeq.h.
15571         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
15572         * modules/striconveh (Depends-on): Add c-strcaseeq.
15573
15574 2007-01-23  Bruno Haible  <bruno@clisp.org>
15575
15576         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
15577
15578         * modules/c-strcaseeq: New file.
15579         * lib/c-strcaseeq.h: New file.
15580
15581         * modules/streq: New file.
15582         * lib/streq.h: New file.
15583
15584 2007-01-23  Bruno Haible  <bruno@clisp.org>
15585
15586         * modules/striconveha-tests: New file.
15587         * tests/test-striconveha.c: New file.
15588
15589         * lib/striconveha.h: Include <stdbool.h>.
15590         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
15591         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
15592         (mem_iconveha_notranslit): Renamed from mem_iconveha.
15593         (mem_iconveha): New function.
15594         (str_iconveha_notranslit): Renamed from str_iconveha.
15595         (str_iconveha): New function.
15596         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
15597         c-strcase.
15598
15599 2007-01-23  Bruno Haible  <bruno@clisp.org>
15600
15601         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
15602         encodings without forgiving before trying any encoding with handler.
15603         (str_iconveha): Try all encodings without forgiving before trying any
15604         encoding with handler.
15605
15606 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
15607
15608         Import the following changes from libc.
15609
15610         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
15611
15612         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
15613
15614         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
15615
15616         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
15617         normal_bracket label.
15618
15619         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
15620
15621         [BZ #361]
15622         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
15623         to normal_bracket after fetching the next character.
15624
15625 2007-01-22  Bruno Haible  <bruno@clisp.org>
15626
15627         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
15628         argument.
15629         * lib/striconveh.c (iconv_carefully_1): New function.
15630         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
15631         argument.
15632         (str_cd_iconveh): Update.
15633         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
15634         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
15635         * tests/test-striconveh.c (MAGIC): New macro.
15636         (new_offsets): New function.
15637         (main): Test call with and without offsets.
15638
15639 2007-01-22  Bruno Haible  <bruno@clisp.org>
15640
15641         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
15642         * modules/sys_select (Makefile.am): Likewise.
15643         * modules/sys_socket (Makefile.am): Likewise.
15644         * modules/sys_time (Makefile.am): Likewise.
15645
15646 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
15647
15648         * modules/gettimeofday (License): Change from GPL to LGPL, since
15649         gettimeofday is a library function.
15650
15651 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15652
15653         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
15654
15655 2007-01-21  Bruno Haible  <bruno@clisp.org>
15656
15657         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
15658
15659 2007-01-21  Bruno Haible  <bruno@clisp.org>
15660
15661         * modules/striconveha: New file.
15662         * lib/striconveha.h: New file.
15663         * lib/striconveha.c: New file.
15664         * MODULES.html.sh (Internationalization functions): Add striconveha.
15665         * lib/striconv.c (str_iconv): Optimize the case of an empty input
15666         string.
15667         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
15668
15669 2007-01-21  Bruno Haible  <bruno@clisp.org>
15670
15671         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
15672         * lib/striconveh.c (str_iconveh): Likewise.
15673
15674 2007-01-21  Bruno Haible  <bruno@clisp.org>
15675
15676         * lib/striconveh.h (mem_iconveh): New declaration.
15677         * lib/striconveh.c (mem_iconveh): New function.
15678         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
15679
15680 2007-01-21  Bruno Haible  <bruno@clisp.org>
15681
15682         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
15683
15684         * lib/striconveh.h (mem_cd_iconveh): Change specification.
15685         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
15686         original result buffer.
15687         (str_cd_iconveh): Update.
15688         * tests/test-striconveh.c (main): Update.
15689
15690         * lib/striconv.h (mem_cd_iconv): Change specification.
15691         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
15692         result buffer.
15693         (str_cd_iconv): Update.
15694         * tests/test-striconv.c (main): Update.
15695
15696 2007-01-21  Bruno Haible  <bruno@clisp.org>
15697
15698         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
15699
15700 2007-01-20  Jim Meyering  <jim@meyering.net>
15701
15702         * lib/userspec.c (parse_with_separator): If a user or group string
15703         starts with "+", skip the corresponding name-to-ID look-up, since
15704         such a look-up must fail: user and group names may not include "+".
15705
15706 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
15707
15708         * lib/poll.c: Include sys/time.h and time.h unconditionally,
15709         since we now assume the sys_time module.
15710         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
15711         check for sys/time.h; no longer needed.
15712         * modules/poll (Depends-on): Depend on sys_time.
15713
15714 2007-01-18  Bruno Haible  <bruno@clisp.org>
15715
15716         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
15717         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
15718
15719         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
15720         gettimeofday.
15721
15722         * tests/test-gettimeofday.c: Include <time.h>.
15723         (dummy): Remove variable.
15724
15725         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
15726         gl_HEADER_SYS_TIME_H.
15727         (gl_HEADER_SYS_TIME_H): New macro.
15728
15729         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
15730         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15731         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
15732         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
15733         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15734         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
15735         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
15736         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15737         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
15738         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
15739         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15740
15741         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
15742         last change; it caused a compilation error when cross-compiling to
15743         Cygwin.
15744
15745 2007-01-18  Jim Meyering  <jim@meyering.net>
15746
15747         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
15748         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
15749         than the race-prone "test -d sys || mkdir sys".
15750         (configure.ac): Use AC_PROG_MKDIR_P.
15751         * modules/sys_select: Likewise.
15752         * modules/sys_socket: Likewise.
15753         * modules/sys_time: Likewise.
15754
15755 2007-01-18  Eric Blake  <ebb9@byu.net>
15756
15757         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
15758         replace gettimeofday.
15759         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
15760         name, to avoid infinite recursion.
15761
15762 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
15763
15764         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
15765         module sys_time.
15766         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
15767         assume timespec.h defines struct timeval.
15768         * lib/settime.c: Likewise.
15769         * lib/utimens.c: Likewise.
15770         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
15771         since we now assume the gettimeofday module.
15772         * lib/tempname.c (__gen_tempname): Likewise.
15773         * lib/gettimeofday.h: Remove.
15774         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
15775         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
15776         Include <time.h>, for 'time()'.
15777         (localtime_buffer_addr): Also use this workaround if
15778         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
15779         to simplify the uses.  All uses changed.
15780         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
15781         that #undef is inside {}, and 'const' follows type name consistently.
15782         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
15783         (gettimeofday): Do not use the maximum possible value for
15784         tv->tv_usec, since that might break usages other than ls.c.
15785         Instead, we'll leave ls.c alone.  This undoes today's patch
15786         by Bruno.  Add a compile-time warning for 1s-clock resolution;
15787         we've never observed the problem but might as well keep the
15788         canary.
15789         * lib/nanosleep.c: Include timespec.h first, for interface check.
15790         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
15791         now assume the sys_time module.
15792         * lib/tempname.c: Likewise.
15793         * lib/timespec.h: Likewise.
15794         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
15795         needed.
15796         * lib/strftime.c: Likewise.
15797         * lib/timespec.h: Likewise.
15798         * lib/posixtm.c: Include posixtm.h first, for interface check.
15799         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
15800         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
15801         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
15802         * lib/sys_time_.h: New file.
15803         * lib/timespec.h (struct timespec): Use long int, not long.
15804         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
15805         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
15806         Remove obsolescent call to AC_HEADER_TIME.
15807         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
15808         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
15809         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
15810         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
15811         Likewise.
15812         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
15813         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
15814         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
15815         into the sys_time module.  Check for gettimeofday just once.
15816         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
15817         for gettimeofday signature to just check the signature.  Merely
15818         compile it, since linking doesn't test signature.  Improve test for
15819         whether gettimeofday.o is actually needed.
15820         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
15821         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
15822         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
15823         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15824         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
15825         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
15826         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
15827         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
15828         than worrying about sys/time.h.
15829         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
15830         Don't bother worrying about TIME_WITH_SYS_TIME.
15831         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
15832         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
15833         * m4/sys_time_h.m4: New file.
15834         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
15835         Don't include sys/time.h.  Return from main rather than exiting.
15836         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
15837         all uses changed.
15838         * modules/gethrxtime (Depends-on): Add sys_time.
15839         * modules/gettime (Depends-on): Likewise.
15840         * modules/gettimeofday (Depends-on): Likewise.
15841         * modules/nanosleep (Depends-on): Likewise.
15842         * modules/settime (Depends-on): Likewise.
15843         * modules/tempname (Depends-on): Likewise.
15844         * modules/utimens (Depends-on): Likewise.
15845         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
15846         (Include:) Change back to <sys/time.h>.
15847         (Maintainer:) Add self.
15848         * modules/sys_time: New file.
15849         * modules/tempname (Depends-on): Add gettimeofday.
15850         * tests/test-gettimeofday.c: Include <sys/time.h>
15851         rather than gettimeofday.h.
15852
15853 2007-01-17  Bruno Haible  <bruno@clisp.org>
15854
15855         * gnulib-tool (func_get_license): Revert last patch. Instead, let
15856         the license default to GPL.
15857         (func_create_testdir): Don't complain if a module is LGPL and its
15858         tests module depends on GPLed modules.
15859
15860 2007-01-17  Bruno Haible  <bruno@clisp.org>
15861
15862         * lib/gettimeofday.c (gettimeofday): Add code for the case
15863         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
15864         maximum possible value for tv->tv_usec, rather than the minimum one.
15865
15866 2005-10-08  Martin Lambers  <marlam@marlam.de>
15867 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
15868 2007-01-16  Bruno Haible  <bruno@clisp.org>
15869
15870         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
15871         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
15872         gl_FUNC_GETTIMEOFDAY.
15873         (Include): Add gettimeofday.h.
15874         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
15875         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
15876         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
15877         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
15878         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
15879         * lib/gettimeofday.h: New file.
15880         * lib/gettimeofday.c: Include <sys/timeb.h>.
15881         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
15882         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
15883         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
15884         fall back on time().
15885
15886         * tests/test-gettimeofday.c: New file.
15887         * modules/gettimeofday-tests: New file.
15888
15889 2007-01-16  Eric Blake  <ebb9@byu.net>
15890
15891         * modules/fnmatch (Depends-on): Depend on wchar.
15892         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
15893         * m4/fnmatch.m4: Likewise.
15894         * modules/mbchar (Makefile.am): Assume <wchar.h>.
15895         * m4/mbchar.m4: Likewise.
15896         * modules/mbswidth (Depends-on): Depend on wchar.
15897         * lib/mbswidth.c: Assume <wchar.h>.
15898         * m4/mbswidth.m4: Likewise.
15899         * modules/quotearg (Depends-on): Depend on wchar.
15900         * lib/quotearg.c: Assume <wchar.h>.
15901         * m4/quotearg.m4: Likewise.
15902         * modules/regex (Depends-on): Depend on wchar.
15903         * lib/regex_internal.h: Assume <wchar.h>.
15904         * m4/regex.m4: Likewise.
15905         * modules/stdint (Depends-on): Depend on wchar.
15906         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
15907         * m4/stdint.m4: Likewise.
15908         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
15909         * modules/strftime (Depends-on): Depend on wchar.
15910         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
15911         * modules/strtol (Depends-on): Depend on wchar.
15912         * lib/strtol.c: Assume <wchar.h>.
15913         * modules/wcwidth (Depends-on): Depend on wchar.
15914         * lib/wcwidth.h: Assume <wchar.h>.
15915         * m4/wcwidth.m4: Likewise.
15916
15917 2007-01-16  Bruno Haible  <bruno@clisp.org>
15918
15919         * modules/csharpexec-script: New, created from...
15920         * modules/csharpexec: ... this.
15921
15922 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
15923
15924         * modules/javaexec-script: New, created from...
15925         * modules/javaexec: ... this.
15926
15927 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15928
15929         * modules/poll (Dependencies): Add sys_select.
15930
15931 2007-01-15  Jim Meyering  <jim@meyering.net>
15932
15933         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
15934         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
15935         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
15936         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
15937
15938 2007-01-15  Bruno Haible  <bruno@clisp.org>
15939
15940         * modules/striconveh: New file.
15941         * lib/striconveh.h: New file.
15942         * lib/striconveh.c: New file.
15943         * MODULES.html.sh (Internationalization functions): Add striconveh.
15944
15945         * modules/striconveh-tests: New file.
15946         * tests/test-striconveh.c: New file.
15947
15948 2007-01-15  Bruno Haible  <bruno@clisp.org>
15949
15950         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
15951         not from GNU libiconv or GNU libc.
15952
15953 2007-01-15  Bruno Haible  <bruno@clisp.org>
15954
15955         * doc/gnulib-intro.texi (Copyright): Explain the different license
15956         terms for module descriptions, autoconf macros, tests, documentation.
15957
15958 2007-01-14  Bruno Haible  <bruno@clisp.org>
15959
15960         * modules/striconv-tests: New file.
15961         * tests/test-striconv.c: New file.
15962
15963 2007-01-14  Bruno Haible  <bruno@clisp.org>
15964
15965         * modules/iconv-tests: New file.
15966         * tests/test-iconv.c: New file.
15967
15968 2007-01-14  Bruno Haible  <bruno@clisp.org>
15969
15970         * gnulib-tool (func_get_license): For test modules, use the license of
15971         the main module.
15972
15973 2007-01-14  Bruno Haible  <bruno@clisp.org>
15974
15975         * modules/iconv (Include): Clarify that <iconv.h> can only be included
15976         if iconv is found to exist.
15977
15978 2007-01-14  Bruno Haible  <bruno@clisp.org>
15979
15980         * modules/c-ctype-tests: New file.
15981         * tests/test-c-ctype.c: New file.
15982
15983 2007-01-14  Bruno Haible  <bruno@clisp.org>
15984
15985         * modules/binary-io-tests: New file.
15986         * tests/test-binary-io.sh: New file.
15987         * tests/test-binary-io.c: New file.
15988
15989 2007-01-14  Bruno Haible  <bruno@clisp.org>
15990
15991         * modules/array-oset-tests: New file.
15992         * tests/test-array_oset.c: New file.
15993
15994 2007-01-14  Bruno Haible  <bruno@clisp.org>
15995
15996         * modules/array-list-tests: New file.
15997         * tests/test-array_list.c: New file.
15998
15999 2007-01-14  Bruno Haible  <bruno@clisp.org>
16000
16001         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
16002         and make.
16003         Reported by Simon Josefsson in
16004         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
16005
16006 2007-01-14  Bruno Haible  <bruno@clisp.org>
16007
16008         * modules/allocsa-tests: New file.
16009         * tests/test-allocsa.c: New file.
16010
16011 2007-01-14  Bruno Haible  <bruno@clisp.org>
16012
16013         * modules/fchdir (Depends-on): Add absolute-header.
16014         * modules/unistd (Depends-on): Likewise.
16015
16016 2006-12-30  Bruno Haible  <bruno@clisp.org>
16017
16018         * modules/fchdir: New file.
16019         * modules/unistd (Files): Add lib/unistd_.h.
16020         (Makefile.am): Generate unistd.h from unistd_.h.
16021         * lib/fchdir.c: New file.
16022         * lib/dirent_.h: New file.
16023         * lib/unistd_.h: New file.
16024         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
16025         * m4/fchdir.m4: New file.
16026         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
16027         (gl_HEADER_UNISTD): Invoke it.
16028         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
16029         function.
16030         * lib/backupfile.c (opendir, closedir): Undefine.
16031         * lib/chown.c (open, close): Undefine.
16032         * lib/clean-temp.c (open, close): Undefine.
16033         * lib/copy-file.c (open, close): Undefine.
16034         * lib/execute.c (open, close): Undefine.
16035         * lib/fsusage.c (open, close): Undefine.
16036         * lib/gc-gnulib.c (open, close): Undefine.
16037         * lib/getcwd.c (opendir, closedir): Undefine.
16038         * lib/glob.c (opendir, closedir): Undefine.
16039         * lib/javacomp.c (open, close): Undefine.
16040         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
16041         * lib/openat-proc.c (open, close): Undefine.
16042         * lib/pagealign_alloc.c (open, close): Undefine.
16043         * lib/pipe.c (open, close): Undefine.
16044         * lib/progreloc.c (open, close): Undefine.
16045         * lib/savedir.c (opendir, closedir): Undefine.
16046         * lib/utime.c (open, close): Undefine.
16047         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
16048
16049 2007-01-10  Bruno Haible  <bruno@clisp.org>
16050
16051         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
16052
16053 2007-01-12  Eric Blake  <ebb9@byu.net>
16054
16055         Provide a robust <wchar.h>.  Further simplifications are now
16056         possible in other modules, but not included here.
16057         * modules/wchar: New module.
16058         * m4/wchar.m4: New file.
16059         * lib/wchar_.h: Likewise.
16060         * modules/mbchar (Depends-on): Depend on wchar, as the first use
16061         of the new module.
16062         * MODULES.html.sh (Extended multibyte and wide character utilities):
16063         New section.
16064
16065 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
16066
16067         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
16068         to a reasonable default for memory allocation.
16069         (xreadlink): Don't allocate a huge buffer, to work around a buggy
16070         file system that reports garbage st_size values for symlinks.
16071         Problem reported by Liyang Hu.
16072
16073 2007-01-11  Simon Josefsson  <simon@josefsson.org>
16074
16075         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
16076         Emacs .#* auto-save files).
16077
16078 2007-01-11  Bruno Haible  <bruno@clisp.org>
16079
16080         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
16081         directory.
16082
16083 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16084
16085         Use @...@ consistently in lib/wctype_.h.
16086         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
16087         on it being set to 1 or 0.
16088         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
16089         go back to AC_SUBSTing it.
16090         * modules/wctype (Makefile.am): Undo previous change.
16091
16092 2007-01-10  Eric Blake  <ebb9@byu.net>
16093
16094         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
16095         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
16096         * modules/wctype (Makefile.am): Likewise.
16097         Reported by Chris McGuire.
16098
16099 2007-01-10  Jim Meyering  <jim@meyering.net>
16100
16101         fts.c: a small readability/maintainability improvement
16102         * lib/fts.c (fts_read): Make this code slightly more readable and
16103         maintainable by hoisting the "sp->fts_cur = p" assignments to
16104         immediately follow the statements that set P.  Derived from
16105         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
16106
16107 2007-01-10  Eric Blake  <ebb9@byu.net>
16108
16109         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
16110         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
16111         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16112         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
16113         Reported by Chris McGuire.
16114
16115 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16116
16117         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
16118         in sed script.
16119
16120 2007-01-09  Bruno Haible  <bruno@clisp.org>
16121
16122         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
16123         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
16124         variables.
16125         (func_module): Use them.
16126
16127 2007-01-09  Bruno Haible  <bruno@clisp.org>
16128
16129         * modules/unistr/base: New file.
16130         * lib/unistr.h: New file.
16131
16132         * modules/unistr/u8-to-u16: New file.
16133         * lib/unistr/u8-to-u16.c: New file.
16134
16135         * modules/unistr/u8-to-u32: New file.
16136         * lib/unistr/u8-to-u32.c: New file.
16137
16138         * modules/unistr/u16-to-u8: New file.
16139         * lib/unistr/u16-to-u8.c: New file.
16140
16141         * modules/unistr/u16-to-u32: New file.
16142         * lib/unistr/u16-to-u32.c: New file.
16143
16144         * modules/unistr/u32-to-u8: New file.
16145         * lib/unistr/u32-to-u8.c: New file.
16146
16147         * modules/unistr/u32-to-u16: New file.
16148         * lib/unistr/u32-to-u16.c: New file.
16149
16150         * modules/unistr/u8-check: New file.
16151         * modules/unistr/u16-check: New file.
16152         * modules/unistr/u32-check: New file.
16153         * lib/unistr/u8-check.c: New file.
16154         * lib/unistr/u16-check.c: New file.
16155         * lib/unistr/u32-check.c: New file.
16156
16157         * modules/unistr/u8-chr: New file.
16158         * modules/unistr/u16-chr: New file.
16159         * modules/unistr/u32-chr: New file.
16160         * lib/unistr/u8-chr.c: New file.
16161         * lib/unistr/u16-chr.c: New file.
16162         * lib/unistr/u32-chr.c: New file.
16163
16164         * modules/unistr/u8-cmp: New file.
16165         * modules/unistr/u16-cmp: New file.
16166         * modules/unistr/u32-cmp: New file.
16167         * lib/unistr/u8-cmp.c: New file.
16168         * lib/unistr/u16-cmp.c: New file.
16169         * lib/unistr/u32-cmp.c: New file.
16170
16171         * modules/unistr/u8-cpy: New file.
16172         * modules/unistr/u16-cpy: New file.
16173         * modules/unistr/u32-cpy: New file.
16174         * lib/unistr/u8-cpy.c: New file.
16175         * lib/unistr/u16-cpy.c: New file.
16176         * lib/unistr/u32-cpy.c: New file.
16177         * lib/unistr/u-cpy.h: New file.
16178
16179         * modules/unistr/u8-cpy-alloc: New file.
16180         * modules/unistr/u16-cpy-alloc: New file.
16181         * modules/unistr/u32-cpy-alloc: New file.
16182         * lib/unistr/u8-cpy-alloc.c: New file.
16183         * lib/unistr/u16-cpy-alloc.c: New file.
16184         * lib/unistr/u32-cpy-alloc.c: New file.
16185         * lib/unistr/u-cpy-alloc.h: New file.
16186
16187         * modules/unistr/u8-endswith: New file.
16188         * modules/unistr/u16-endswith: New file.
16189         * modules/unistr/u32-endswith: New file.
16190         * lib/unistr/u8-endswith.c: New file.
16191         * lib/unistr/u16-endswith.c: New file.
16192         * lib/unistr/u32-endswith.c: New file.
16193         * lib/unistr/u-endswith.h: New file.
16194
16195         * modules/unistr/u8-mblen: New file.
16196         * modules/unistr/u16-mblen: New file.
16197         * modules/unistr/u32-mblen: New file.
16198         * lib/unistr/u8-mblen.c: New file.
16199         * lib/unistr/u16-mblen.c: New file.
16200         * lib/unistr/u32-mblen.c: New file.
16201
16202         * modules/unistr/u8-mbtouc: New file.
16203         * modules/unistr/u16-mbtouc: New file.
16204         * modules/unistr/u32-mbtouc: New file.
16205         * lib/unistr/u8-mbtouc.c: New file.
16206         * lib/unistr/u16-mbtouc.c: New file.
16207         * lib/unistr/u32-mbtouc.c: New file.
16208
16209         * modules/unistr/u8-mbtouc-safe: New file.
16210         * modules/unistr/u16-mbtouc-safe: New file.
16211         * modules/unistr/u32-mbtouc-safe: New file.
16212         * lib/unistr/u8-mbtouc-safe.c: New file.
16213         * lib/unistr/u16-mbtouc-safe.c: New file.
16214         * lib/unistr/u32-mbtouc-safe.c: New file.
16215
16216         * modules/unistr/u8-move: New file.
16217         * modules/unistr/u16-move: New file.
16218         * modules/unistr/u32-move: New file.
16219         * lib/unistr/u8-move.c: New file.
16220         * lib/unistr/u16-move.c: New file.
16221         * lib/unistr/u32-move.c: New file.
16222         * lib/unistr/u-move.h: New file.
16223
16224         * modules/unistr/u8-next: New file.
16225         * modules/unistr/u16-next: New file.
16226         * modules/unistr/u32-next: New file.
16227         * lib/unistr/u8-next.c: New file.
16228         * lib/unistr/u16-next.c: New file.
16229         * lib/unistr/u32-next.c: New file.
16230
16231         * modules/unistr/u8-prev: New file.
16232         * modules/unistr/u16-prev: New file.
16233         * modules/unistr/u32-prev: New file.
16234         * lib/unistr/u8-prev.c: New file.
16235         * lib/unistr/u16-prev.c: New file.
16236         * lib/unistr/u32-prev.c: New file.
16237
16238         * modules/unistr/u8-set: New file.
16239         * modules/unistr/u16-set: New file.
16240         * modules/unistr/u32-set: New file.
16241         * lib/unistr/u8-set.c: New file.
16242         * lib/unistr/u16-set.c: New file.
16243         * lib/unistr/u32-set.c: New file.
16244         * lib/unistr/u-set.h: New file.
16245
16246         * modules/unistr/u8-startswith: New file.
16247         * modules/unistr/u16-startswith: New file.
16248         * modules/unistr/u32-startswith: New file.
16249         * lib/unistr/u8-startswith.c: New file.
16250         * lib/unistr/u16-startswith.c: New file.
16251         * lib/unistr/u32-startswith.c: New file.
16252         * lib/unistr/u-startswith.h: New file.
16253
16254         * modules/unistr/u8-stpcpy: New file.
16255         * modules/unistr/u16-stpcpy: New file.
16256         * modules/unistr/u32-stpcpy: New file.
16257         * lib/unistr/u8-stpcpy.c: New file.
16258         * lib/unistr/u16-stpcpy.c: New file.
16259         * lib/unistr/u32-stpcpy.c: New file.
16260         * lib/unistr/u-stpcpy.h: New file.
16261
16262         * modules/unistr/u8-stpncpy: New file.
16263         * modules/unistr/u16-stpncpy: New file.
16264         * modules/unistr/u32-stpncpy: New file.
16265         * lib/unistr/u8-stpncpy.c: New file.
16266         * lib/unistr/u16-stpncpy.c: New file.
16267         * lib/unistr/u32-stpncpy.c: New file.
16268         * lib/unistr/u-stpncpy.h: New file.
16269
16270         * modules/unistr/u8-strcat: New file.
16271         * modules/unistr/u16-strcat: New file.
16272         * modules/unistr/u32-strcat: New file.
16273         * lib/unistr/u8-strcat.c: New file.
16274         * lib/unistr/u16-strcat.c: New file.
16275         * lib/unistr/u32-strcat.c: New file.
16276         * lib/unistr/u-strcat.h: New file.
16277
16278         * modules/unistr/u8-strchr: New file.
16279         * modules/unistr/u16-strchr: New file.
16280         * modules/unistr/u32-strchr: New file.
16281         * lib/unistr/u8-strchr.c: New file.
16282         * lib/unistr/u16-strchr.c: New file.
16283         * lib/unistr/u32-strchr.c: New file.
16284
16285         * modules/unistr/u8-strcmp: New file.
16286         * modules/unistr/u16-strcmp: New file.
16287         * modules/unistr/u32-strcmp: New file.
16288         * lib/unistr/u8-strcmp.c: New file.
16289         * lib/unistr/u16-strcmp.c: New file.
16290         * lib/unistr/u32-strcmp.c: New file.
16291
16292         * modules/unistr/u8-strcpy: New file.
16293         * modules/unistr/u16-strcpy: New file.
16294         * modules/unistr/u32-strcpy: New file.
16295         * lib/unistr/u8-strcpy.c: New file.
16296         * lib/unistr/u16-strcpy.c: New file.
16297         * lib/unistr/u32-strcpy.c: New file.
16298         * lib/unistr/u-strcpy.h: New file.
16299
16300         * modules/unistr/u8-strcspn: New file.
16301         * modules/unistr/u16-strcspn: New file.
16302         * modules/unistr/u32-strcspn: New file.
16303         * lib/unistr/u8-strcspn.c: New file.
16304         * lib/unistr/u16-strcspn.c: New file.
16305         * lib/unistr/u32-strcspn.c: New file.
16306         * lib/unistr/u-strcspn.h: New file.
16307
16308         * modules/unistr/u8-strdup: New file.
16309         * modules/unistr/u16-strdup: New file.
16310         * modules/unistr/u32-strdup: New file.
16311         * lib/unistr/u8-strdup.c: New file.
16312         * lib/unistr/u16-strdup.c: New file.
16313         * lib/unistr/u32-strdup.c: New file.
16314         * lib/unistr/u-strdup.h: New file.
16315
16316         * modules/unistr/u8-strlen: New file.
16317         * modules/unistr/u16-strlen: New file.
16318         * modules/unistr/u32-strlen: New file.
16319         * lib/unistr/u8-strlen.c: New file.
16320         * lib/unistr/u16-strlen.c: New file.
16321         * lib/unistr/u32-strlen.c: New file.
16322         * lib/unistr/u-strlen.h: New file.
16323
16324         * modules/unistr/u8-strmblen: New file.
16325         * modules/unistr/u16-strmblen: New file.
16326         * modules/unistr/u32-strmblen: New file.
16327         * lib/unistr/u8-strmblen.c: New file.
16328         * lib/unistr/u16-strmblen.c: New file.
16329         * lib/unistr/u32-strmblen.c: New file.
16330
16331         * modules/unistr/u8-strmbtouc: New file.
16332         * modules/unistr/u16-strmbtouc: New file.
16333         * modules/unistr/u32-strmbtouc: New file.
16334         * lib/unistr/u8-strmbtouc.c: New file.
16335         * lib/unistr/u16-strmbtouc.c: New file.
16336         * lib/unistr/u32-strmbtouc.c: New file.
16337
16338         * modules/unistr/u8-strncat: New file.
16339         * modules/unistr/u16-strncat: New file.
16340         * modules/unistr/u32-strncat: New file.
16341         * lib/unistr/u8-strncat.c: New file.
16342         * lib/unistr/u16-strncat.c: New file.
16343         * lib/unistr/u32-strncat.c: New file.
16344         * lib/unistr/u-strncat.h: New file.
16345
16346         * modules/unistr/u8-strncmp: New file.
16347         * modules/unistr/u16-strncmp: New file.
16348         * modules/unistr/u32-strncmp: New file.
16349         * lib/unistr/u8-strncmp.c: New file.
16350         * lib/unistr/u16-strncmp.c: New file.
16351         * lib/unistr/u32-strncmp.c: New file.
16352
16353         * modules/unistr/u8-strncpy: New file.
16354         * modules/unistr/u16-strncpy: New file.
16355         * modules/unistr/u32-strncpy: New file.
16356         * lib/unistr/u8-strncpy.c: New file.
16357         * lib/unistr/u16-strncpy.c: New file.
16358         * lib/unistr/u32-strncpy.c: New file.
16359         * lib/unistr/u-strncpy.h: New file.
16360
16361         * modules/unistr/u8-strnlen: New file.
16362         * modules/unistr/u16-strnlen: New file.
16363         * modules/unistr/u32-strnlen: New file.
16364         * lib/unistr/u8-strnlen.c: New file.
16365         * lib/unistr/u16-strnlen.c: New file.
16366         * lib/unistr/u32-strnlen.c: New file.
16367         * lib/unistr/u-strnlen.h: New file.
16368
16369         * modules/unistr/u8-strpbrk: New file.
16370         * modules/unistr/u16-strpbrk: New file.
16371         * modules/unistr/u32-strpbrk: New file.
16372         * lib/unistr/u8-strpbrk.c: New file.
16373         * lib/unistr/u16-strpbrk.c: New file.
16374         * lib/unistr/u32-strpbrk.c: New file.
16375         * lib/unistr/u-strpbrk.h: New file.
16376
16377         * modules/unistr/u8-strrchr: New file.
16378         * modules/unistr/u16-strrchr: New file.
16379         * modules/unistr/u32-strrchr: New file.
16380         * lib/unistr/u8-strrchr.c: New file.
16381         * lib/unistr/u16-strrchr.c: New file.
16382         * lib/unistr/u32-strrchr.c: New file.
16383
16384         * modules/unistr/u8-strspn: New file.
16385         * modules/unistr/u16-strspn: New file.
16386         * modules/unistr/u32-strspn: New file.
16387         * lib/unistr/u8-strspn.c: New file.
16388         * lib/unistr/u16-strspn.c: New file.
16389         * lib/unistr/u32-strspn.c: New file.
16390         * lib/unistr/u-strspn.h: New file.
16391
16392         * modules/unistr/u8-strstr: New file.
16393         * modules/unistr/u16-strstr: New file.
16394         * modules/unistr/u32-strstr: New file.
16395         * lib/unistr/u8-strstr.c: New file.
16396         * lib/unistr/u16-strstr.c: New file.
16397         * lib/unistr/u32-strstr.c: New file.
16398         * lib/unistr/u-strstr.h: New file.
16399
16400         * modules/unistr/u8-strtok: New file.
16401         * modules/unistr/u16-strtok: New file.
16402         * modules/unistr/u32-strtok: New file.
16403         * lib/unistr/u8-strtok.c: New file.
16404         * lib/unistr/u16-strtok.c: New file.
16405         * lib/unistr/u32-strtok.c: New file.
16406         * lib/unistr/u-strtok.h: New file.
16407
16408         * modules/unistr/u8-uctomb: New file.
16409         * modules/unistr/u16-uctomb: New file.
16410         * modules/unistr/u32-uctomb: New file.
16411         * lib/unistr/u8-uctomb.c: New file.
16412         * lib/unistr/u16-uctomb.c: New file.
16413         * lib/unistr/u32-uctomb.c: New file.
16414
16415         * MODULES.html.sh (Unicode string functions): Add the new modules.
16416
16417 2007-01-08  Bruno Haible  <bruno@clisp.org>
16418
16419         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
16420         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
16421         subdirectories.
16422
16423 2007-01-08  Karl Berry  <karl@gnu.org>
16424
16425         * doc/error.texi: mention that main() fns must set program_name
16426         when progname is used.
16427
16428 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
16429
16430         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
16431         WCTYPE_H is empty, for the benefit of builds from non-distclean
16432         directories.  Problem reported by Eric Blake in
16433         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
16434
16435 2007-01-08  Bruno Haible  <bruno@clisp.org>
16436
16437         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
16438         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
16439         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
16440         PROVIDE_CANONICALIZE_FILENAME_MODE.
16441         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
16442
16443 2007-01-08  Bruno Haible  <bruno@clisp.org>
16444
16445         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
16446         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
16447         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
16448         * lib/fts.c: Likewise.
16449         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
16450
16451 2006-12-25  Bruno Haible  <bruno@clisp.org>
16452
16453         * modules/utf8-ucs4-safe: New file.
16454         * lib/utf8-ucs4-safe.h: New file.
16455         * lib/unistr/utf8-ucs4-safe.c: New file.
16456
16457         * modules/utf16-ucs4-safe: New file.
16458         * lib/utf16-ucs4-safe.h: New file.
16459         * lib/unistr/utf16-ucs4-safe.c: New file.
16460
16461         * MODULES.html.sh (Unicode string functions): Add the new modules.
16462
16463 2007-01-08  Bruno Haible  <bruno@clisp.org>
16464
16465         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
16466         (Depends-on): Add unitypes.
16467         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
16468         (u8_mbtouc_aux): Move out to separate file.
16469         (u8_mbtouc): Use ucs4_t, uint8_t types.
16470         * lib/unistr/utf8-ucs4.c: New file.
16471
16472         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
16473         (Depends-on): Add unitypes.
16474         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
16475         (u16_mbtouc_aux): Move out to separate file.
16476         (u16_mbtouc): Use ucs4_t, uint16_t types.
16477         * lib/unistr/utf16-ucs4.c: New file.
16478
16479         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
16480         (Depends-on): Add unitypes.
16481         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
16482         (u8_uctomb_aux): Move out to separate file.
16483         (u8_uctomb): Use ucs4_t, uint8_t types.
16484         * lib/unistr/ucs4-utf8.c: New file.
16485
16486         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
16487         (Depends-on): Add unitypes.
16488         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
16489         (u16_uctomb_aux): Move out to separate file.
16490         (u16_uctomb): Use ucs4_t, uint16_t types.
16491         * lib/unistr/ucs4-utf16.c: New file.
16492
16493 2006-12-25  Bruno Haible  <bruno@clisp.org>
16494
16495         * modules/unitypes: New file.
16496         * lib/unitypes.h: New file.
16497         * MODULES.html.sh (func_all_modules): New section "Unicode string
16498         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
16499         this section. Add unitypes.
16500
16501 2007-01-08  Bruno Haible  <bruno@clisp.org>
16502
16503         Avoid variable names that conflict with those from libtool.
16504         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
16505         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
16506         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
16507         library_names_spec to acl_library_names_spec, hardcode_* to
16508         acl_hardcode_*.
16509         Reported by Ralf Wildenhues.
16510
16511 2007-01-08  Bruno Haible  <bruno@clisp.org>
16512
16513         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
16514         definition.
16515         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
16516         definition.
16517         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
16518         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
16519         definition.
16520         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
16521         definition.
16522         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
16523         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
16524         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
16525         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
16526         definition.
16527         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
16528         definition.
16529         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
16530         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
16531         GC_USE_<algorithm>.
16532         * lib/gc-libgcrypt.c: Likewise.
16533         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
16534         * modules/gc-arctwo (configure.ac): Likewise.
16535         * modules/gc-des (configure.ac): Likewise.
16536         * modules/gc-hmac-md5 (configure.ac): Likewise.
16537         * modules/gc-hmac-sha1 (configure.ac): Likewise.
16538         * modules/gc-md2 (configure.ac): Likewise.
16539         * modules/gc-md4 (configure.ac): Likewise.
16540         * modules/gc-md5 (configure.ac): Likewise.
16541         * modules/gc-random (configure.ac): Likewise.
16542         * modules/gc-rijndael (configure.ac): Likewise.
16543         * modules/gc-sha1 (configure.ac): Likewise.
16544
16545 2007-01-08  Bruno Haible  <bruno@clisp.org>
16546
16547         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
16548         macro definition.
16549         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
16550         definition.
16551         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
16552         definition.
16553         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
16554         * modules/fcntl-safer (configure.ac): Likewise.
16555         * modules/fopen-safer (configure.ac): Likewise.
16556         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
16557         GNULIB_FWRITEERROR macro definition.
16558
16559 2007-01-08  Bruno Haible  <bruno@clisp.org>
16560
16561         * m4/gnulib-common.m4: New file.
16562         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
16563         (func_get_filelist): Add m4/gnulib-common.m4.
16564
16565 2007-01-08  Bruno Haible  <bruno@clisp.org>
16566
16567         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
16568         command.
16569
16570 2007-01-08  Jim Meyering  <jim@meyering.net>
16571
16572         Use a more robust test for a "can't happen" condition.
16573         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
16574         narrowed the st_size value.  Presuming the "can't happen" condition
16575         is true, that narrowing could conceivably convert an invalid st_size
16576         value into a valid one.  Instead, use a change based on Matthew
16577         Woehlke's original patch.
16578
16579         Slight readability improvement: use an assert-like macro
16580         in place of literal "abort ()" uses.
16581         * lib/fts.c (fts_assert): Define.
16582         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
16583         Use this macro instead of a bare 'abort'.
16584
16585 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
16586
16587         Don't worry about using IRIX 5.3's wctype.h broken definitions;
16588         simply work around them.
16589         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
16590         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
16591         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
16592         declaring.
16593         Don't bother to define as macros, since the standard doesn't require it.
16594         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
16595         longer worry about IRIX 5.3.
16596         (HAVE_WCTYPE_CTMP_BUG): Remove.
16597
16598 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
16599
16600         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
16601         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
16602         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
16603         Problems reported by Georg Schwarz for IRIX 5.3.
16604
16605         * gnulib-tool (autoconf_minversion): Take the maximum version number
16606         found, not the minimum.  Problem reported by James Youngman.
16607
16608 2007-01-03  Karl Berry  <karl@gnu.org>
16609
16610         * doc/error.texi: new file, explaining interaction with progname.
16611         * doc/gnulib.texi: include it.  Update copyright.
16612
16613 2007-01-03  Simon Josefsson  <simon@josefsson.org>
16614
16615         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
16616         AC_CANONICAL_HOST, to improve autobuild outputs.
16617
16618 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
16619             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
16620
16621         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
16622         sockets, server sockets, and other file descriptors.  Count errors
16623         to compute the return value.  Reorder the code a bit to be easier
16624         to follow.  Don't set event bits that were not requested (except
16625         POLLERR and POLLHUP).
16626
16627 2007-01-01  Bruno Haible  <bruno@clisp.org>
16628
16629         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
16630
16631 2007-01-03  Jim Meyering  <jim@meyering.net>
16632
16633         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
16634
16635 2007-01-02  Bruno Haible  <bruno@clisp.org>
16636
16637         * modules/settime (Include): Require timespec.h.
16638         * modules/nanosleep (Include): Likewise.
16639
16640 2007-01-01  Bruno Haible  <bruno@clisp.org>
16641
16642         * gnulib-tool (func_emit_copyright_notice): Bump year.
16643         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
16644
16645 2007-01-01  Bruno Haible  <bruno@clisp.org>
16646
16647         Improve support for OpenBSD.
16648         * build-aux/config.rpath (libname_spec): Export.
16649         (library_names_spec): New variable. Export.
16650         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
16651         library_names_spec from the config.rpath output. Locate shared library
16652         through the name pattern in library_names_spec.
16653
16654 2007-01-01  Eric Blake  <ebb9@byu.net>
16655
16656         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
16657
16658 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
16659
16660         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
16661         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
16662         assume the C locale, and avoid an "eval" that could cause trouble.
16663         Problem with SORT reported by Bob Proulx.
16664
16665         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
16666         Define.  Trivial patch from Henning Nielsen Lund, originally
16667         sent to bug-grep@gnu.org today.
16668
16669 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
16670
16671         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
16672         struct stat.  Problem reported by Henning Nielsen Lund.
16673         * lib/acl.c: Include acl.h first, to check interface.  Don't
16674         bother to include sys/types.h and sys/stat.h again.
16675
16676 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
16677
16678         Import the following change from libc; problem reported by
16679         Sven Verdoolaege.
16680
16681         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
16682
16683         [BZ #1373]
16684         * lib/argp.h: Remove __NTH for __argp_usage inline function.
16685
16686 2006-12-28  Jim Meyering  <jim@meyering.net>
16687
16688         * build-aux/announce-gen: Do not assume that the package
16689         builds any of tar.gz, tar.bz2, and .xdelta files.
16690         Suggestion from Simon Josefsson.
16691
16692 2006-12-28  Simon Josefsson  <simon@josefsson.org>
16693
16694         * modules/announce-gen: New file.
16695
16696 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
16697
16698         * lib/mbchar.h: Just include <wctype.h>; the wctype module
16699         handles its gotchas now.
16700         * lib/mbswidth.c: Likewise.
16701         * lib/wcwidth.h: Likewise.
16702         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
16703         and iswcntrl; the wctype module does this stuff now.
16704         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
16705         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16706         * modules/mbchar (Depends-on): Add wctype.
16707         * modules/mbswidth (Depends-on): Likewise.
16708         * modules/wcwidth (Depends-on): Likewise.
16709
16710 2006-12-27  Eric Blake  <ebb9@byu.net>
16711
16712         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
16713         module uses more than what <wctype.h> is required to provide.
16714
16715 2006-12-26  Eric Blake  <ebb9@byu.net>
16716
16717         * gnulib-tool (sed_extract_prog): Avoid space-tab.
16718
16719 2006-12-26  Eric Blake  <ebb9@byu.net>
16720
16721         * modules/absolute-header: New module.
16722         * modules/fcntl (Depends-on): Depend on it.
16723         * modules/inttypes (Depends-on): Likewise.
16724         * modules/stdint (Depends-on): Likewise.
16725         * modules/sys_stat (Depends-on): Likewise.
16726         * modules/wctype (Depends-on): Likewise.
16727         * MODULES.html.sh (Support for building libraries and
16728         executables): Document it.
16729
16730 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
16731
16732         * gnulib-tool (SED): Remove, undoing previous change.
16733         The problem was that it broke coreutils on Solaris, because
16734         "sed --posix" leaked into a makefile.
16735         (sed): New alias, if 'alias' and GNU sed.
16736
16737 2006-12-24  Jim Meyering  <jim@meyering.net>
16738
16739         Work around an fchownat bug in glibc-2.4:
16740         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
16741         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
16742         in spite of the -P option.
16743         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
16744         New macros.
16745         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
16746         * modules/openat (Files): Add lib/fchownat.c.
16747         * lib/openat.c (fchownat): Don't define here.  Move to...
16748         * lib/fchownat.c: ...this new file.
16749
16750 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
16751
16752         Fix bug reported by Bruno Haible in
16753         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
16754         where quotearg.c didn't compile on Mac OS X 10.2 because it
16755         lacks <wchar.h> and wint_t.
16756         * lib/wctype_.h (__wctype_wint_t): New type.
16757         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
16758         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
16759         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
16760         Arg is now of type __wctype_wint_t, not wint_t.
16761         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
16762         substitute HAVE_WINT_T.
16763         * modules/wctype (Files): Add m4/wint_t.m4.
16764         (wctype.h): Substitute HAVE_WINT_T.
16765
16766 2006-12-23  Bruno Haible  <bruno@clisp.org>
16767
16768         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
16769
16770 2006-12-23  Bruno Haible  <bruno@clisp.org>
16771
16772         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
16773         S_ISLNK.
16774         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
16775         mingw.
16776
16777 2006-12-22  Bruno Haible  <bruno@clisp.org>
16778
16779         * lib/copy-file.c: Include acl.h.
16780         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
16781         Close the file descriptors only after being done with copy_acl.
16782         * modules/copy-file (Depends-on): Add acl.
16783
16784 2006-12-22  Bruno Haible  <bruno@clisp.org>
16785
16786         * gnulib-tool (SED): New variable.
16787         Use $SED instead of sed everywhere.
16788
16789 2006-12-22  Bruno Haible  <bruno@clisp.org>
16790
16791         * modules/no-c++: New file.
16792         * m4/no-c++.m4: New file.
16793         * MODULES.html.sh (Support for building libraries and executables):
16794         Add no-c++.
16795
16796 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
16797
16798         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
16799         Include <limits.h>, and use its INT_MAX to rewrite the
16800         j loop so that it does not overflow 'int'.  Problem reported by
16801         Ralf Wildenhues in
16802         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
16803         Play it safe by shifting left by 1 rather than multiplying by 2,
16804         as GCC is less likely to optimize this away when the value
16805         is signed (when it assumes overflow leads to undefined behavior).
16806         Also, don't assume time_t uses two's complement.
16807
16808 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
16809
16810         * MODULES.html.sh: New module wctype.
16811         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
16812         * lib/fnmatch.c: Don't bother to include <wchar.h> before
16813         <wctype.h>, since the new wctype module should fix this.
16814         * lib/quotearg.c: Include <wctype.h> unconditionally, since
16815         the wctype module should arrange for it.
16816         * lib/regex_internal.h: Likewise.
16817         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
16818         since the wctype module should handle this now.
16819         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
16820         * modules/fnmatch (Depends-on): Add wctype.
16821         * modules/quotearg (Depends-on): Likewise.
16822         * modules/regex (Depends-on): Likewise.
16823
16824 2006-12-19  Bruno Haible  <bruno@clisp.org>
16825
16826         * lib/strdup.h [C++]: Wrap definitions in extern "C".
16827         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
16828
16829 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16830
16831         * modules/savewd (Depends-on): Fix dependency on fcntl.
16832
16833 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
16834
16835         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
16836         conforms to C99, rather than relying on the user's environment
16837         setting of STDINT_H.
16838
16839 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
16840         and Eric Blake  <ebb9@byu.net>
16841
16842         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
16843         This is more consistent with the other defines here.
16844         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
16845         Port to z/OS.  Problem reported by Paul Gilmartin.
16846         Change local vars to use gl_ prefix rather than ac_.
16847         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
16848         with other defines.
16849         * modules/double-slash-root: New module.
16850         * modules/dirname (Files): Remove m4/double-slash-root.m4.
16851         (Depends-on): Add double-slash-root.
16852         * MODULES.html.sh (File system functions): Mention new module.
16853
16854 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
16855
16856         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
16857         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
16858         This is for the benefit of gzip, which doesn't do i18n.
16859
16860 2006-12-12  Jim Meyering  <jim@meyering.net>
16861
16862         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
16863         Reported by Andreas Schwab <schwab@suse.de>.
16864
16865 2006-12-12  Bruno Haible  <bruno@clisp.org>
16866
16867         Merge these changes.
16868         2006-09-05  Bruno Haible  <bruno@clisp.org>
16869         * lib/iconvme.c (iconv_string): No need to save and restore errno when
16870         iconv_alloc succeeded.
16871         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
16872         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
16873         test for " && dest " at the end - dest is always != NULL there. Call
16874         iconv with 4xNULL arguments initially, to reset the state. Call iconv
16875         with 2xNULL arguments, also to flush the state storage. Handle the
16876         IRIX iconv behaviour. Realloc the final result, to throw away unused
16877         memory.
16878
16879 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
16880
16881         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
16882         and fchmodat unconditionally, since glibc 2.4 has them.
16883         Problem reported by Arkadiusz Miskiewicz.
16884
16885 2006-12-10  Bruno Haible  <bruno@clisp.org>
16886
16887         * gnulib-tool (func_import): Show the include files only for those
16888         modules that are copied and specified.
16889         Reported by Karl Berry.
16890
16891 2006-12-08  Jim Meyering  <jim@meyering.net>
16892
16893         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
16894         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
16895
16896         * build-aux/announce-gen: Add two new options, both optional:
16897         --bootstrap-tools=TOOL_LIST
16898               a comma-separated list of tools, e.g.,
16899               autoconf,automake,bison,gnulib
16900         --gnulib-snapshot-date=DATE
16901               if gnulib is in the bootstrap tool list,
16902               then report this as the snapshot date.
16903               If not specified, use the current date/time.
16904               If you specify a date here, be sure it's UTC.
16905
16906 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16907
16908         * tests/test-argp-2.sh: Fix test to match actual output.
16909         (func_compare): Fix sed script to be portable.
16910
16911 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
16912
16913         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
16914         workaround for this case.  It is not autoconfigured now; offhand
16915         it's hard to see how to autoconfigure it.
16916
16917 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
16918
16919         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
16920         a directory that is about to be chowned.  Such a directory's
16921         initial file permissions should permit the owner only and this
16922         should not be changed until after the chown, since the group and
16923         other bits would be incorrect if they granted permission before
16924         the chown.
16925
16926         Fix porting problem for iswctype reported by Georg Schwarz in:
16927         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
16928         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
16929         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
16930         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
16931         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16932
16933 2006-12-03  Jim Meyering  <jim@meyering.net>
16934
16935         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
16936         p->fts_statp may not yet be defined.
16937         (fts_read): Instead, set it in the caller, once p->fts_statp is
16938         sure to be defined, and corresponds to a top-level directory.
16939         This bug made du -x fail.  Here's the coreutils test case:
16940         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
16941         Reported by Mike Frysinger.
16942
16943 2006-12-01  Jim Meyering  <jim@meyering.net>
16944
16945         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
16946         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
16947         Reported by Simon Josefsson.
16948
16949 2006-11-30  Jim Meyering  <jim@meyering.net>
16950
16951         * m4/warning.m4: Use the all-permissive copyright notice
16952         recommended by RMS (rather than LGPL).
16953         * m4/vararrays.m4: Likewise.
16954         * m4/flexmember.m4: Likewise.
16955
16956 2006-11-29  Bruno Haible  <bruno@clisp.org>
16957
16958         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
16959         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
16960         using +=.
16961         Reported by Simon Josefsson <simon@josefsson.org>.
16962
16963 2006-11-28  James Youngman <jay@gnu.org>
16964
16965         * README: Advise users that they might find the bug-gnulib@gnu.org
16966         and autotools-announce@gnu.org mailing lists useful.
16967
16968 2006-11-28  Bruno Haible  <bruno@clisp.org>
16969
16970         * m4/ptrdiff_max.m4: Remove file.
16971
16972 2006-11-21  Bruno Haible  <bruno@clisp.org>
16973
16974         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
16975         _AC_COMPUTE_INT.
16976         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16977         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
16978         _AC_COMPUTE_INT.
16979         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16980         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
16981         _AC_COMPUTE_INT.
16982         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16983
16984 2006-11-28  Jim Meyering  <jim@meyering.net>
16985
16986         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
16987         warning from "gcc -Wshadow" about shadowing the builtin.
16988
16989 2006-11-27  Bruno Haible  <bruno@clisp.org>
16990
16991         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
16992         _AC_COMPUTE_INT.
16993         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
16994
16995 2006-11-27  Bruno Haible  <bruno@clisp.org>
16996             Paul Eggert  <eggert@cs.ucla.edu>
16997
16998         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
16999
17000 2006-11-26  Bruno Haible  <bruno@clisp.org>
17001
17002         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
17003         noinst_LTLIBRARIES.
17004
17005 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
17006             Bruno Haible  <bruno@clisp.org>
17007
17008         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
17009         if compiling with "gcc -ansi".
17010
17011 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
17012
17013         Fix some incompatibilities with gcc -ansi -pedantic.
17014         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
17015         if compiling pedantically with GCC, unless it's C99 or later.
17016         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
17017         it mishandles gcc -ansi -pedantic as well.
17018         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
17019         if gcc -pedantic.
17020         * lib/regexec.c (check_node_accept_bytes): Don't use auto
17021         initializers for struct if -pedantic, unless it's C99 or later.
17022
17023 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
17024
17025         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
17026         Don't close an fd more than once. Identical atimes indicate
17027         success, not failure.
17028
17029 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
17030
17031         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
17032
17033 2006-11-23  Jim Meyering  <jim@meyering.net>
17034
17035         * build-aux/announce-gen: New file.  From coreutils.
17036
17037 2006-11-22  Jim Meyering  <jim@meyering.net>
17038
17039         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
17040         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
17041         (fts_read): Use a temporary to narrow the overused st_size member
17042         before using it in a switch statement.  Reported by Matthew Woehlke.
17043
17044         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
17045         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
17046
17047 2006-11-20  Bruno Haible  <bruno@clisp.org>
17048
17049         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
17050         changequote instead of pairs of brackets.
17051         Reported by Andreas Schwab <schwab@suse.de>.
17052
17053 2006-11-21  Jim Meyering  <jim@meyering.net>
17054
17055         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
17056         so as to remain compatible with older compilers.
17057         Patch from Michael Deutschmann.
17058
17059 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17060
17061         * MODULES.html.sh (File system functions): Add openat.
17062
17063         * lib/openat.h (rpl_fstatat): New macro, if
17064         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
17065         (fstatat): Define to rpl_fstatat under the same conditions,
17066         unless COMPILING_FSTATAT.
17067         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
17068         seems to have the bug.
17069         * lib/fstatat.c: New file.
17070         * modules/openat (Files): Add it.
17071
17072 2006-11-20  Bruno Haible  <bruno@clisp.org>
17073
17074         * Makefile: New file.
17075
17076 2006-11-20  Jim Meyering  <jim@meyering.net>
17077
17078         The beginnings of syntax-related checks for gnulib.
17079         * lib/Makefile: New file.
17080         * lib/t-idcache: New script.  Ensure that the two halves of
17081         idcache.c stay in sync.
17082
17083         * lib/idcache.c: Adjust comments in user- and group- portions to
17084         be more accurate, and to be consistent with one another.
17085
17086 2006-11-20  Jim Meyering  <jim@meyering.net>
17087
17088         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
17089         continue using the flexible array member (thus, this module performs
17090         half as many malloc calls), with the addition that...
17091         (getgroup, getuser): Consistently record a non-match via an empty
17092         "name" string, and map an empty string match to a NULL return value.
17093         * modules/idcache (Depends-on): Re-add flexmember.
17094
17095         * lib/idcache.c (getuser): Remove all uses of the register keyword.
17096         (getuidbyname, getgroup, getgidbyname): Likewise.
17097
17098         Use cleaner syntax: NULL rather than 0.
17099         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
17100
17101 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17102
17103         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
17104         It mishandled the case where the group was missing.
17105         Problem reported by Greg Schafer.
17106         * modules/idcache: Likewise.
17107
17108 2006-11-18  Jim Meyering  <jim@meyering.net>
17109
17110         * check-module (%exempt_header): Add exception for some
17111         conditionally-included headers.
17112
17113         * modules/i-ring (Depends-on): Add verify.
17114         (License): Change to LGPL.
17115
17116 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17117
17118         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
17119         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
17120         and inttostr.h.  Use snprintf rather than uinttostr, so that
17121         LGPLed code doesn't depend on GPLed.
17122
17123 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
17124
17125         * modules/inline (License): Change from GPL to LGPL.
17126
17127 2006-11-17  Jim Meyering  <jim@meyering.net>
17128
17129         * modules/d-type (License): Switch to LGPL.
17130
17131 2006-11-15  Bruno Haible  <bruno@clisp.org>
17132
17133         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
17134
17135 2006-11-15  Eric Blake  <ebb9@byu.net>
17136
17137         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
17138         the module dependency.
17139
17140 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17141             Bruno Haible  <bruno@clisp.org>
17142
17143         * gnulib-tool (func_create_testdir): Add license consistency check.
17144
17145 2006-11-15  Eric Blake  <ebb9@byu.net>
17146
17147         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
17148         random "(cached)" in configure output.
17149
17150 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17151
17152         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
17153         test for conforming inttypes.h is both announced and cached.
17154
17155         * MODULES.html.sh (seen_modules, seen_files): New variables.
17156         (func_module): Rewrite to use a few less gnulib-tool and sed
17157         invocations.  Avoid a couple of quadratic algorithms for ...
17158         (missed_modules, missed_files): ... these, with ...
17159         (func_append, func_tmpdir): ... these new functions, from
17160         gnulib-tool.  Analogously, install traps for cleanup.
17161
17162         * tests/test-gc.c (main): Remove unused variables.
17163         * tests/test-read-file.c: Include stdlib.h, for 'free'.
17164
17165 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
17166
17167         * modules/inttostr (License): Change to LGPL.
17168
17169 2006-11-14  Eric Blake  <ebb9@byu.net>
17170
17171         * modules/tempname (License): Change to LGPL.
17172
17173 2006-11-14  Eric Blake  <ebb9@byu.net>
17174
17175         * doc/functions.texi (Function Portability): *printf functions on
17176         Cygwin now understand all POSIX size specifiers.
17177
17178 2006-11-14  Bruno Haible  <bruno@clisp.org>
17179
17180         * modules/c-ctype (License): Change to LGPL.
17181
17182 2006-11-12  Bruno Haible  <bruno@clisp.org>
17183
17184         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
17185         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
17186         for GNOME libraries, for which the include files are installed in
17187         subdirectories of $prefix/include.
17188
17189 2006-11-12  Bruno Haible  <bruno@clisp.org>
17190
17191         * m4/lib-link.m4: Require at least autoconf-2.54.
17192         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
17193         name to underscores for the --with option.
17194
17195 2006-11-13  Bruno Haible  <bruno@clisp.org>
17196
17197         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
17198         the tests directory.
17199         Reported by Ralf Wildenhues.
17200
17201 2006-11-13  Bruno Haible  <bruno@clisp.org>
17202
17203         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
17204         (func_emit_initmacro_end): Undo the override here.
17205         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
17206         Works around the famous automake error in coreutils.
17207
17208 2006-11-13  Eric Blake  <ebb9@byu.net>
17209
17210         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
17211         element, not its node.
17212
17213 2006-11-12  Bruno Haible  <bruno@clisp.org>
17214
17215         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
17216         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
17217
17218 2006-11-12  Bruno Haible  <bruno@clisp.org>
17219
17220         * gnulib-tool: New option --local-symlink.
17221         (func_usage): Document it.
17222         (lsymbolic): New variable.
17223         (func_import, func_create_testdir): If --symlink was not specified,
17224         test whether --local-symlink was specified and the file comes from
17225         the local_gnulib_dir.
17226
17227 2006-11-12  Bruno Haible  <bruno@clisp.org>
17228
17229         * gnulib-tool (func_ln): New function.
17230         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
17231
17232 2006-11-12  Bruno Haible  <bruno@clisp.org>
17233
17234         Finish support for source files in subdirectories.
17235         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
17236         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
17237         AUTOMAKE_OPTIONS.
17238         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
17239
17240 2006-11-12  Bruno Haible  <bruno@clisp.org>
17241
17242         * gnulib-tool (func_get_automake_snippet): Synthesize also an
17243         EXTRA_lib_SOURCES augmentation.
17244         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
17245
17246 2006-11-12  Jim Meyering  <jim@meyering.net>
17247
17248         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
17249         file descriptors.  This also averts a failure on systems with
17250         native openat support when a traversed directory lacks "x" access.
17251         * lib/fts_.h: Include "i-ring.h"
17252         (struct FTS) [fts_fd_ring]: New member.
17253         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
17254         (FCHDIR): Add parentheses.
17255         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
17256         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
17257         When descending, rather than simply closing the previous
17258         fts_cwd_fd value, push that file descriptor onto the ring.
17259         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
17260         (fts_open): Initialize the new fd_ring member.
17261         (fts_close): Clear the ring.
17262         (fts_safe_changedir): When possible, use our new fd_ring to skip
17263         the diropen and fstat and dev/ino comparison that would normally
17264         accompany a virtual `chdir ("..")'.
17265
17266         * modules/fts (Depends-on): Add i-ring.
17267         * modules/i-ring: New module.
17268         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
17269         * m4/i-ring.m4: New file.
17270
17271 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17272
17273         * gnulib-tool (func_create_testdir): Fix replacement of
17274         `build-aux' in configure.ac.  Run autotools in gltests
17275         subdirectory.
17276         (func_create_testdir, func_create_megatestdir, test): There is
17277         no need for '--force' in most autotool invocations in a new
17278         tree.  Actually fail the whole test if any of the tools, or the
17279         configure or make stages fail.
17280
17281         Sync from Automake.
17282         * build-aux/gnupload: Revert last change.  Add pointer to upload
17283         instructions of the GNU Maintenance Instructions.
17284         Suggestion by Karl Berry.
17285
17286 2006-11-10  Jim Meyering  <jim@meyering.net>
17287
17288         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
17289
17290 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17291
17292         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
17293         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
17294         (bind_textdomain_codeset) [! ENABLE_NLS]:
17295         Evaluate all the arguments.  That way, callers get compatible behavior
17296         if the arguments have side effects.  Also, it avoids some GCC
17297         diagnostics in some cases; Joel E. Denny reported problems when Bison
17298         was configured with --enable-gcc-warnigs.
17299
17300 2006-11-10  Jim Meyering  <jim@meyering.net>
17301
17302         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
17303         relevant options in CFLAGS (like -O, -fno-inline) are taken into
17304         account.
17305
17306 2006-11-10  Jim Meyering  <jim@meyering.net>
17307
17308         * modules/inline: New file/module.
17309         * modules/xalloc (Files): Remove m4/inline.m4.
17310         (Depends-on): Add inline, instead.
17311         * modules/oset: Likewise.
17312         * modules/list: Likewise.
17313
17314 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17315
17316         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
17317         Problem reported by Matthew Woehlke.
17318
17319 2006-11-09  Bruno Haible  <bruno@clisp.org>
17320
17321         * lib/tempname.c (gen_tempname): Remove variant that invokes
17322         __gen_tempname.
17323         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
17324         __gen_tempname.
17325
17326 2006-11-08  Bruno Haible  <bruno@clisp.org>
17327
17328         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
17329         to 'yes' instead of 'cross-compiling'.
17330
17331 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17332
17333         * lib/quotearg.h (quotearg_free): New decl.
17334         * lib/quotearg.c (quotearg_free): New function.
17335         (slot0, nslots, slotvec0, slotvec):
17336         Now file-scope so that quotearg_free can get at them.
17337
17338 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17339
17340         Sync from Automake.
17341         * build-aux/gnupload: Add missing 'gnu' to example URL.
17342         Report by Karl Berry.
17343
17344 2006-11-08  Bruno Haible  <bruno@clisp.org>
17345
17346         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
17347         Suggested by Paul Eggert.
17348
17349 2006-11-08  Jim Meyering  <jim@meyering.net>
17350
17351         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
17352         It's already included if !_LIBC.
17353         (fts_safe_changedir): Add a comment.
17354
17355 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
17356
17357         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
17358         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
17359         Matthew Woehlke.
17360
17361         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
17362         definitions up, to avoid colliding with change below.
17363         (static_inline) [HAVE_INLINE]: New macro.
17364         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
17365         Provide extern decls when !HAVE_INLINE.  Do not define unless
17366         static_inline is defined, either by us or by xmalloc.c.  Use
17367         static_inline rather than static inline.
17368         (XCALLOC): Optimize sizeof(T) = 1 case.
17369         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
17370
17371 2006-11-07  Bruno Haible  <bruno@clisp.org>
17372
17373         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
17374         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
17375         AC_C_INLINE.
17376         * modules/xalloc (Files): Add m4/inline.m4.
17377
17378 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17379
17380         * README: Fix typo.
17381         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
17382         (Miscellanous Notes): ...from this.
17383
17384 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
17385
17386         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
17387         Mention that offsetof should be used instead of sizeof.
17388         From Bruno Haible.
17389
17390 2006-11-07  Bruno Haible  <bruno@clisp.org>
17391
17392         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
17393
17394 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
17395
17396         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
17397         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
17398         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
17399         (gl_tree_add_before, gl_tree_add_after):
17400         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
17401         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
17402         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
17403         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
17404         (gl_linked_add_after, gl_linked_add_at): Likewise.
17405         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
17406         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
17407         (gl_tree_add_before, gl_tree_add_after): Likewise.
17408         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
17409         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
17410         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
17411
17412 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17413
17414         * lib/gl_oset.h: Use C comment style, not C++ comment style.
17415
17416 2006-11-06  Bruno Haible  <bruno@clisp.org>
17417
17418         * m4/inline.m4: New file.
17419         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
17420         * modules/list (Files): Add m4/inline.m4.
17421         * modules/oset (Files): Likewise.
17422
17423 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
17424
17425         * lib/idcache.c: Include <stddef.h>, for offsetof.
17426         (struct userid.name): Change from char * to a flexible array member.
17427         All uses changed.
17428         * modules/idcache (Depends-on): Add flexmember.
17429
17430         * MODULES.html.sh (Core language properties): New module flexmember.
17431         * modules/flexmember, m4/flexmember.m4: New files.
17432
17433         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
17434         inline functions that are identical with the old xnmalloc_inline,
17435         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
17436         that we can avoid some unnecessary integer multiplications and
17437         divisions in the common case where the element size is known at
17438         compile time.
17439         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
17440         needed.
17441         (xnboundedmalloc): Remove.
17442         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
17443         arguments, for consistency with rest of this header.
17444         (xcharalloc): Rewrite using XNMALLOC.
17445         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
17446         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
17447         versions have been moved to lib/xalloc.h and renamed to be the
17448         non-*_inline versions.
17449         (xmalloc, xrealloc): Implement without reference to the xnmalloc
17450         and xnrealloc functions, since those functions are now inline and
17451         now call us.
17452         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
17453         renaming described above.
17454         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
17455         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
17456         captures the dependency in AC_C_INLINE.
17457
17458         New module canonicalize-lgpl, proposed by Charles Wilson in
17459         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
17460         with a few small changes afterwards.
17461         * MODULES.html.sh (File system functions): New module
17462         canonicalize-lgpl.
17463         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
17464         and canonicalize_file_name.
17465         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
17466         * modules/canonicalize-lgpl: New files.
17467
17468 2006-11-05  Bruno Haible  <bruno@clisp.org>
17469
17470         * gnulib-tool (func_import, func_create_testdir): Create directories
17471         also for files in subdirectories of lib/.
17472
17473 2006-11-05  Bruno Haible  <bruno@clisp.org>
17474
17475         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
17476         ANSI C compliant.
17477
17478 2006-11-03  Bruno Haible  <bruno@clisp.org>
17479
17480         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
17481         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
17482         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
17483         (xnboundedmalloc): New inline function.
17484         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
17485         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
17486         xmalloc.
17487         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
17488         xmalloc.
17489         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
17490         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
17491         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
17492         xmalloc.
17493         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
17494         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
17495         xmalloc.
17496         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
17497         gl_tree_add_after): Use XMALLOC instead of xmalloc.
17498         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
17499         xmalloc.
17500         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
17501         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
17502         gl_tree_add_after): Use XMALLOC instead of xmalloc.
17503         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
17504         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
17505         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
17506         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
17507
17508 2006-11-03  Bruno Haible  <bruno@clisp.org>
17509
17510         * lib/c-ctype.h [C++]: Define functions without name mangling.
17511         * lib/fwriteerror.h [C++]: Likewise.
17512         * lib/gcd.h [C++]: Likewise.
17513         * lib/linebreak.h [C++]: Likewise.
17514
17515 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
17516
17517         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
17518         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
17519         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
17520         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
17521         Check for functions and headers just once.
17522         Check for declaration of canonicalize_file_name.
17523         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
17524
17525 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17526
17527         * gnulib-tool (func_import): Fix typo in actioncmd.
17528
17529 2006-11-02  Bruno Haible  <bruno@clisp.org>
17530
17531         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
17532         newline sequence in the Makefile.am snippet as a space, like "make"
17533         does.
17534         Reported by Roger Persson <perrog@gmail.com>.
17535
17536 2006-11-01  Bruno Haible  <bruno@clisp.org>
17537
17538         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
17539         already declared in <string.h>.
17540         * lib/strcase.h (strncasecmp): Don't declare it if yes.
17541
17542 2006-11-01  Bruno Haible  <bruno@clisp.org>
17543
17544         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
17545         * lib/strcase.h: Include <string.h>.
17546         (strcasecmp): Define to rpl_strcasecmp here.
17547
17548 2006-11-01  Bruno Haible  <bruno@clisp.org>
17549
17550         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
17551
17552 2006-11-01  Eric Blake  <ebb9@byu.net>
17553
17554         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
17555
17556         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
17557
17558 2006-10-29  Bruno Haible  <bruno@clisp.org>
17559
17560         Make it compile in C++ mode.
17561         * lib/full-write.c (full_rw): Add a cast.
17562
17563 2006-11-01  Bruno Haible  <bruno@clisp.org>
17564
17565         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
17566         be POSIX compliant.
17567         Reported by Roger Persson <perrog@gmail.com>.
17568
17569 2006-11-01  Eric Blake  <ebb9@byu.net>
17570
17571         * lib/getopt_.h: Fix comments.
17572
17573 2006-10-31  Eric Blake  <ebb9@byu.net>
17574
17575         * modules/tmpdir (Depends-on): Add sys_stat.
17576         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
17577         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
17578         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
17579         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
17580         tempname.
17581
17582 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
17583
17584         Avoid some C++ diagnostics reported by Bruno Haible.
17585         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
17586         xmalloc.
17587         (quotearg_alloc): Use xcharalloc rather than xmalloc.
17588         (struct slotvec): Move to top level.
17589         (quotearg_n_options): Rewrite to avoid xmalloc.
17590         * lib/xalloc.h (xcharalloc): New function.
17591         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
17592         [defined __cplusplus]: Add function template that provides result
17593         type propagation.  This part of the change is from Bruno Haible.
17594
17595 2006-10-29  Bruno Haible  <bruno@clisp.org>
17596
17597         Make it compile in C++ mode.
17598         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
17599         * lib/strnlen1.c (strnlen1): Cast memchr result.
17600         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
17601         * lib/clean-temp.c (string_equals, string_hash): Add casts.
17602         (create_temp_dir): Rename local variable 'template'.
17603         (compile_csharp_using_sscli): Add cast.
17604         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
17605         * lib/findprog.c (find_in_path): Likewise.
17606         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
17607         * lib/wait-process.c (register_slave_subprocess): Likewise.
17608
17609 2006-10-22  Bruno Haible  <bruno@clisp.org>
17610
17611         * modules/tsearch: New file.
17612         * lib/tsearch.h: New file.
17613         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
17614         * m4/tsearch.m4: New file.
17615         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
17616
17617 2006-10-29  Eric Blake  <ebb9@byu.net>
17618
17619         * lib/arcfour.c: Assume config.h.
17620         * lib/arctwo.c: Likewise.
17621         * lib/base64.c: Likewise.
17622         * lib/check-version.c: Likewise.
17623         * lib/crc.c: Likewise.
17624         * lib/des.c: Likewise.
17625         * lib/gc-gnulib.c: Likewise.
17626         * lib/gc-libgcrypt.c: Likewise.
17627         * lib/gc-pbkdf2-sha1.c: Likewise.
17628         * lib/getaddrinfo.c: Likewise.
17629         * lib/getdelim.c: Likewise.
17630         * lib/getline.c: Likewise.
17631         * lib/hmac-md5.c: Likewise.
17632         * lib/hmac-sha1.c: Likewise.
17633         * lib/iconvme.c: Likewise.
17634         * lib/md2.c: Likewise.
17635         * lib/md4.c: Likewise.
17636         * lib/memxor.c: Likewise.
17637         * lib/read-file.c: Likewise.
17638         * lib/readline.c: Likewise.
17639         * lib/rijndael-alg-fst.c: Likewise.
17640         * lib/rijndael-api-fst.c: Likewise.
17641         * lib/xgetdomainname.c: Likewise.
17642
17643 2006-10-28  Eric Blake  <ebb9@byu.net>
17644
17645         * lib/xstrndup.c: Assume config.h.
17646
17647 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
17648
17649         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
17650         stat-macros.h is now for our own macros, whereas stat_h is for
17651         macros in the <sys/stat.h> name space.
17652         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
17653         (STAT_MACROS_H): Remove.
17654         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
17655         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
17656         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
17657         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
17658         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
17659         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
17660         Move these macros to ...
17661         * lib/stat_.h: here.  Don't include stat-macros.h.
17662         * lib/canonicalize.c: Don't include stat-macros.h.
17663         * lib/chown.c: Likewise.
17664         * lib/euidaccess.c: Likewise.
17665         * lib/file-type.c: Likewise.
17666         * lib/filemode.c: Likewise.
17667         * lib/glob.c: Likewise.
17668         * lib/isapipe.c: Likewise.
17669         * lib/lchown.c: Likewise.
17670         * lib/lstat.c: Likewise.
17671         * lib/mkdir-p.c: Likewise.
17672         * lib/rmdir.c: Likewise.
17673         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
17674         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
17675         unless mkdir isn't declared, to speed up 'configure'.
17676         Always create sys/stat.h, since it's unlikely any real sys/stat.h
17677         would define all the S_* symbols.
17678         * modules/canonicalize (Depends-on):
17679         Depend on sys_stat, not stat-macros.
17680         * modules/chown: Likewise.
17681         * modules/euidaccess: Likewise.
17682         * modules/filemode: Likewise.
17683         * modules/file-type: Likewise.
17684         * modules/glob: Likewise.
17685         * modules/isapipe: Likewise.
17686         * modules/lchown: Likewise.
17687         * modules/lstat: Likewise.
17688         * modules/mkancesdirs: Likewise.
17689         * modules/rmdir: Likewise.
17690         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
17691         * modules/modechange: Likewise.
17692         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
17693         (configure.ac): Remove gl_STAT_MACROS.
17694         * modules/sys_stat (Depends-on): Remove stat-macros.
17695
17696 2006-10-27  Bruno Haible  <bruno@clisp.org>
17697
17698         * m4/signed.m4: Remove file.
17699         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
17700         invocation.
17701         * modules/vasnprintf (Files): Remove m4/signed.m4.
17702
17703 2006-10-27  Bruno Haible  <bruno@clisp.org>
17704
17705         Update to GNU gettext 0.16.
17706         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
17707         m4/inttypes-h.m4, m4/signed.m4.
17708         * m4/gettext.m4: Update to GNU gettext 0.16.
17709         * m4/intl.m4: New file, from GNU gettext.
17710         * m4/intldir.m4: New file, from GNU gettext.
17711         * config/srclist.txt: Update
17712
17713 2006-10-27  Eric Blake  <ebb9@byu.net>
17714
17715         * MODULES.html.sh: Document tempname.
17716         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
17717         dependencies.
17718         (Files): Move lib/tempname.c...
17719         * modules/tempname: ...to this new module.
17720         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
17721         (gl_PREREQ_TEMPNAME): Move...
17722         * m4/tempname.m4: ...to this new file.
17723         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
17724         * modules/sys_stat (Depends-on): Add stat-macros.
17725         * lib/stat_.h (includes): Pick up stat macros.
17726         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
17727         if stat macros are broken.
17728         * lib/tempname.c (includes): No need to include "stat-macros.h".
17729         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
17730         (direxists, __path_search) [!_LIBC]: Don't compile these in
17731         gnulib; the tmpdir module covers that.
17732         * lib/tempname.h: New file.
17733
17734 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
17735
17736         * COPYING: Explain how gnulib-tool converts licence headers.
17737         Almost all wording by Eric Blake.
17738
17739 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
17740
17741         * lib/mbchar.h (is_basic_table): Make read-only.
17742         * lib/mbchar.c (is_basic_table): Likewise.
17743         Reported by John Darrington.
17744
17745 2006-10-25  Bruno Haible  <bruno@clisp.org>
17746
17747         * lib/progname.h (set_program_name): Undefine before defining.
17748
17749 2006-10-25  Bruno Haible  <bruno@clisp.org>
17750
17751         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
17752         false for non-gcc C++ compilers.
17753         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
17754
17755 2006-10-24  Bruno Haible  <bruno@clisp.org>
17756
17757         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
17758         iconv implementations like Irix iconv.
17759
17760 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17761
17762         * modules/vararrays: New file.
17763         * m4/vararrays.m4: New file, taken from diffutils.
17764         * MODULES.html.sh: New module vararrays.
17765
17766 2006-10-24  Karl Berry  <karl@gnu.org>
17767
17768         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
17769         Don't call GNU Unix.
17770
17771 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17772
17773         * users.txt: Add Libtool.
17774
17775         Sync from Libtool:
17776
17777         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17778
17779         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
17780         to gnulib's policy of including config.h unconditionally.
17781
17782 2006-10-24  Bruno Haible  <bruno@clisp.org>
17783
17784         * modules/wcwidth (Files): Add m4/wint_t.m4.
17785         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
17786         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
17787
17788 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17789
17790         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
17791         to pacify GCC with some -W flags enabled.  Problem reported by
17792         Bruno Haible.
17793
17794 2006-10-24  Jim Meyering  <jim@meyering.net>
17795
17796         * MODULES.html.sh: Remove uinttostr.  It's not a module.
17797         Reported by Karl Berry.
17798
17799 2006-10-23  Bruno Haible  <bruno@clisp.org>
17800
17801         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
17802
17803 2006-10-24  Bruno Haible  <bruno@clisp.org>
17804
17805         * lib/gl_list.h: Use C comment style, not C++ comment style.
17806
17807 2006-10-23  Eric Blake  <ebb9@byu.net>
17808
17809         * lib/getaddrinfo.c (includes): Add missing include.
17810
17811 2006-10-23  Bruno Haible  <bruno@clisp.org>
17812             Paul Eggert  <eggert@cs.ucla.edu>
17813
17814         Ability to rename obstack_free.
17815         * lib/obstack.h (__obstack_free): New macro. Declare instead of
17816         obstack_free.
17817         (obstack_free): Invoke the __obstack_free macro.
17818         * lib/obstack.c (obstack_free): Use __obstack_free macro.
17819
17820 2006-10-23  Bruno Haible  <bruno@clisp.org>
17821             Paul Eggert  <eggert@cs.ucla.edu>
17822
17823         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
17824         __argc, __argv from the declaration. (They are defined as macros on
17825         mingw.)
17826
17827 2006-10-22  Bruno Haible  <bruno@clisp.org>
17828
17829         * doc/gnulib-intro.texi: New file.
17830         * doc/gnulib.texi: Include it.
17831
17832 2006-10-21  Bruno Haible  <bruno@clisp.org>
17833
17834         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
17835         "Introduction", "Miscellanous Notes", "Particular Modules".
17836
17837 2006-10-21  Bruno Haible  <bruno@clisp.org>
17838
17839         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17840         Change mostlyclean-local rule to avoid sh syntax error from bash
17841         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
17842
17843 2006-10-23  Jim Meyering  <jim@meyering.net>
17844
17845         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
17846         in place of snprintf.
17847
17848         * modules/inttostr (Files): Add lib/uinttostr.c.
17849         * lib/uinttostr.c (inttostr): New file/function.
17850         * lib/inttostr.h (uinttostr): Declare.
17851         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
17852         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17853         Add uinttostr.
17854         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
17855
17856 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17857
17858         * lib/canonicalize.c (ELOOP): Define if not already defined.
17859         Problem reported by Bruno Haible in
17860         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
17861
17862 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
17863
17864         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
17865         Problem reported by Perry Smith and Ville Laurikari.
17866
17867         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
17868         uses.
17869
17870 2006-10-19  Bruno Haible  <bruno@clisp.org>
17871
17872         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
17873         for mingw.
17874
17875 2006-10-19  Bruno Haible  <bruno@clisp.org>
17876
17877         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
17878         Needed for mingw.
17879
17880 2006-10-19  Bruno Haible  <bruno@clisp.org>
17881
17882         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
17883
17884 2006-10-19  Bruno Haible  <bruno@clisp.org>
17885
17886         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
17887         it.
17888
17889 2006-10-19  Bruno Haible  <bruno@clisp.org>
17890
17891         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
17892         invocation.
17893
17894 2006-10-19  Bruno Haible  <bruno@clisp.org>
17895
17896         * gnulib-tool (func_create_testdir): Don't include ftruncate and
17897         mountlist by default.
17898
17899 2006-10-16  Bruno Haible  <bruno@clisp.org>
17900
17901         * lib/c-strstr.c: Include c-strstr.h.
17902
17903 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17904
17905         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
17906         in a slash.
17907
17908 2006-10-18  Bruno Haible  <bruno@clisp.org>
17909
17910         * lib/lock.h [C++]: Wrap definitions in extern "C".
17911
17912 2006-10-18  Bruno Haible  <bruno@clisp.org>
17913
17914         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
17915         gl_LIBOBJS list.
17916
17917 2006-10-18  Bruno Haible  <bruno@clisp.org>
17918
17919         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
17920
17921 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
17922
17923         * lib/xstrtol.h: Include gettext.h.
17924         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
17925         Problem reported by Eric Blake.
17926         * modules/xstrtol (Depends-on): Add gettext-h.
17927
17928 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
17929
17930         * lib/strftime.c (advance): New macro.
17931         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
17932         incomplete type, so you can't add 0 to it.  Problem and patch
17933         reported by Eelco Dolstra for dietlibc.
17934
17935 2006-10-18  Jim Meyering  <jim@meyering.net>
17936
17937         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
17938         type for a local, and rename it: s/up/user_proc/.
17939
17940 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
17941
17942         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
17943         READ_UTMP_USER_PROCESS.
17944         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
17945
17946 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
17947
17948         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
17949         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
17950
17951 2006-10-17  Eric Blake  <ebb9@byu.net>
17952
17953         * lib/sigprocmask.c (sigprocmask): Fix typo.
17954
17955         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
17956
17957         * modules/clean-temp (Makefile.am): Don't add to make output...
17958         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
17959         config.h.
17960
17961 2006-10-17  Bruno Haible  <bruno@clisp.org>
17962
17963         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
17964         differently if DEFAULT_TEXT_DOMAIN is set.
17965
17966 2006-10-16  Bruno Haible  <bruno@clisp.org>
17967
17968         * lib/clean-temp.c: Include fwriteerror.h.
17969
17970 2006-10-16  Bruno Haible  <bruno@clisp.org>
17971
17972         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
17973
17974 2006-10-16  Bruno Haible  <bruno@clisp.org>
17975
17976         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
17977         * lib/sigprocmask.h: Include <sys/types.h>.
17978         (sigset_t): Use the system's definition if present.
17979
17980 2006-10-17  Eric Blake  <ebb9@byu.net>
17981
17982         * lib/xvasprintf.c (includes): Assume config.h.
17983         * lib/xasprintf.c (includes): Likewise.
17984
17985 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17986
17987         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
17988         at least as wide as intmax_t.
17989
17990 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
17991
17992         (Imported from Automake.)
17993         * build-aux/gnupload: Update to version 1.1 of directive file.
17994
17995 2006-10-16  Eric Blake  <ebb9@byu.net>
17996
17997         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
17998         match Automake 1.10a.
17999
18000 2006-10-14  Bruno Haible  <bruno@clisp.org>
18001
18002         * modules/sigprocmask: New file.
18003         * lib/sigprocmask.h: New file.
18004         * lib/sigprocmask.c: New file.
18005         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
18006         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
18007         request sigprocmask.o.
18008         (gl_PREREQ_SIGPROCMASK): New macro.
18009         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
18010         (Depends-on): Add sigprocmask.
18011         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
18012         gt_SIGNALBLOCKING. Test for 'raise' only once.
18013         * lib/fatal-signal.c: Include sigprocmask.h.
18014         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
18015         unblock_fatal_signals): Define always.
18016         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
18017         sigprocmask.
18018
18019 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18020
18021         Sync from Automake.
18022         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
18023         which incorrectly sets the mode of an existing destination
18024         directory.  In some cases the unpatched install-sh could do the
18025         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
18026         system.  We hope this is rare in practice, but it's clearly worth
18027         fixing.  Problem reported by Alex Unleashed in
18028         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
18029         Also, don't bother to check for -m bugs unless we're using -m;
18030         suggested by Stepan Kasal.
18031
18032 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18033
18034         Sync from Automake.
18035         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
18036         `-c' flag, so they appear at the same position as in %FASTDEP%
18037         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
18038         which ignores unknown options only after the first non-option.
18039         Bug report against M4 by Nelson H. F. Beebe.
18040
18041 2006-10-13  Jim Meyering  <jim@meyering.net>
18042
18043         Fix a bug in yesterday's change.
18044         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
18045         p->fts_statp->st_dev would be used uninitialized.
18046         Ensures that we always call fts_stat on the very first entry.
18047         Miklos Szeredi reported that find -xdev stopped working.
18048
18049 2006-10-12  Bruno Haible  <bruno@clisp.org>
18050
18051         * gnulib-tool (func_get_automake_snippet): Append an automatically
18052         computed EXTRA_DIST augmentation.
18053         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
18054         * modules/alloca-opt (Makefile.am): Likewise.
18055         * modules/allocsa (Makefile.am): Likewise.
18056         * modules/arcfour (Makefile.am): Likewise.
18057         * modules/arctwo (Makefile.am): Likewise.
18058         * modules/argmatch (Makefile.am): Likewise.
18059         * modules/argz (Makefile.am): Likewise.
18060         * modules/atexit (Makefile.am): Likewise.
18061         * modules/backupfile (Makefile.am): Likewise.
18062         * modules/byteswap (Makefile.am): Likewise.
18063         * modules/c-strtod (Makefile.am): Likewise.
18064         * modules/c-strtold (Makefile.am): Likewise.
18065         * modules/calloc (Makefile.am): Likewise.
18066         * modules/canon-host (Makefile.am): Likewise.
18067         * modules/canonicalize (Makefile.am): Likewise.
18068         * modules/chdir-long (Makefile.am): Likewise.
18069         * modules/chdir-safer (Makefile.am): Likewise.
18070         * modules/check-version (Makefile.am): Likewise.
18071         * modules/chown (Makefile.am): Likewise.
18072         * modules/cloexec (Makefile.am): Likewise.
18073         * modules/close-stream (Makefile.am): Likewise.
18074         * modules/closeout (Makefile.am): Likewise.
18075         * modules/crc (Makefile.am): Likewise.
18076         * modules/csharpexec (Makefile.am): Likewise.
18077         * modules/cycle-check (Makefile.am): Likewise.
18078         * modules/des (Makefile.am): Likewise.
18079         * modules/dev-ino (Makefile.am): Likewise.
18080         * modules/dirfd (Makefile.am): Likewise.
18081         * modules/dirname (Makefile.am): Likewise.
18082         * modules/dup2 (Makefile.am): Likewise.
18083         * modules/eealloc (Makefile.am): Likewise.
18084         * modules/error (Makefile.am): Likewise.
18085         * modules/euidaccess (Makefile.am): Likewise.
18086         * modules/exclude (Makefile.am): Likewise.
18087         * modules/exitfail (Makefile.am): Likewise.
18088         * modules/fcntl-safer (Makefile.am): Likewise.
18089         * modules/fcntl (Makefile.am): Likewise.
18090         * modules/file-type (Makefile.am): Likewise.
18091         * modules/fileblocks (Makefile.am): Likewise.
18092         * modules/filemode (Makefile.am): Likewise.
18093         * modules/filenamecat (Makefile.am): Likewise.
18094         * modules/fnmatch (Makefile.am): Likewise.
18095         * modules/fopen-safer (Makefile.am): Likewise.
18096         * modules/fpending (Makefile.am): Likewise.
18097         * modules/fprintftime (Makefile.am): Likewise.
18098         * modules/free (Makefile.am): Likewise.
18099         * modules/fsusage (Makefile.am): Likewise.
18100         * modules/ftruncate (Makefile.am): Likewise.
18101         * modules/fts (Makefile.am): Likewise.
18102         * modules/gc-arcfour (Makefile.am): Likewise.
18103         * modules/gc-des (Makefile.am): Likewise.
18104         * modules/gc-hmac-md5 (Makefile.am): Likewise.
18105         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
18106         * modules/gc-md4 (Makefile.am): Likewise.
18107         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
18108         * modules/gc-sha1 (Makefile.am): Likewise.
18109         * modules/gc (Makefile.am): Likewise.
18110         * modules/getaddrinfo (Makefile.am): Likewise.
18111         * modules/getcwd (Makefile.am): Likewise.
18112         * modules/getdelim (Makefile.am): Likewise.
18113         * modules/getdomainname (Makefile.am): Likewise.
18114         * modules/getgroups (Makefile.am): Likewise.
18115         * modules/gethostname (Makefile.am): Likewise.
18116         * modules/gethrxtime (Makefile.am): Likewise.
18117         * modules/getline (Makefile.am): Likewise.
18118         * modules/getloadavg (Makefile.am): Likewise.
18119         * modules/getlogin_r (Makefile.am): Likewise.
18120         * modules/getndelim2 (Makefile.am): Likewise.
18121         * modules/getopt (Makefile.am): Likewise.
18122         * modules/getpagesize (Makefile.am): Likewise.
18123         * modules/getpass-gnu (Makefile.am): Likewise.
18124         * modules/getpass (Makefile.am): Likewise.
18125         * modules/getsubopt (Makefile.am): Likewise.
18126         * modules/gettime (Makefile.am): Likewise.
18127         * modules/gettimeofday (Makefile.am): Likewise.
18128         * modules/getugroups (Makefile.am): Likewise.
18129         * modules/getusershell (Makefile.am): Likewise.
18130         * modules/glob (Makefile.am): Likewise.
18131         * modules/group-member (Makefile.am): Likewise.
18132         * modules/hard-locale (Makefile.am): Likewise.
18133         * modules/hash (Makefile.am): Likewise.
18134         * modules/hmac-md5 (Makefile.am): Likewise.
18135         * modules/hmac-sha1 (Makefile.am): Likewise.
18136         * modules/human (Makefile.am): Likewise.
18137         * modules/idcache (Makefile.am): Likewise.
18138         * modules/imaxabs (Makefile.am): Likewise.
18139         * modules/imaxdiv (Makefile.am): Likewise.
18140         * modules/inet_ntop (Makefile.am): Likewise.
18141         * modules/inet_pton (Makefile.am): Likewise.
18142         * modules/intprops (Makefile.am): Likewise.
18143         * modules/inttostr (Makefile.am): Likewise.
18144         * modules/inttypes (Makefile.am): Likewise.
18145         * modules/isapipe (Makefile.am): Likewise.
18146         * modules/javaversion (Makefile.am): Likewise.
18147         * modules/lchmod (Makefile.am): Likewise.
18148         * modules/lchown (Makefile.am): Likewise.
18149         * modules/localcharset (Makefile.am): Likewise.
18150         * modules/long-options (Makefile.am): Likewise.
18151         * modules/lstat (Makefile.am): Likewise.
18152         * modules/malloc (Makefile.am): Likewise.
18153         * modules/mathl (Makefile.am): Likewise.
18154         * modules/mbchar (Makefile.am): Likewise.
18155         * modules/md2 (Makefile.am): Likewise.
18156         * modules/md4 (Makefile.am): Likewise.
18157         * modules/md5 (Makefile.am): Likewise.
18158         * modules/memcasecmp (Makefile.am): Likewise.
18159         * modules/memchr (Makefile.am): Likewise.
18160         * modules/memcmp (Makefile.am): Likewise.
18161         * modules/memcoll (Makefile.am): Likewise.
18162         * modules/memcpy (Makefile.am): Likewise.
18163         * modules/memmem (Makefile.am): Likewise.
18164         * modules/memmove (Makefile.am): Likewise.
18165         * modules/mempcpy (Makefile.am): Likewise.
18166         * modules/memrchr (Makefile.am): Likewise.
18167         * modules/memset (Makefile.am): Likewise.
18168         * modules/memxor (Makefile.am): Likewise.
18169         * modules/mkancesdirs (Makefile.am): Likewise.
18170         * modules/mkdir-p (Makefile.am): Likewise.
18171         * modules/mkdir (Makefile.am): Likewise.
18172         * modules/mkdtemp (Makefile.am): Likewise.
18173         * modules/mkstemp (Makefile.am): Likewise.
18174         * modules/mktime (Makefile.am): Likewise.
18175         * modules/modechange (Makefile.am): Likewise.
18176         * modules/mountlist (Makefile.am): Likewise.
18177         * modules/nanosleep (Makefile.am): Likewise.
18178         * modules/obstack (Makefile.am): Likewise.
18179         * modules/openat (Makefile.am): Likewise.
18180         * modules/pagealign_alloc (Makefile.am): Likewise.
18181         * modules/pathmax (Makefile.am): Likewise.
18182         * modules/physmem (Makefile.am): Likewise.
18183         * modules/poll (Makefile.am): Likewise.
18184         * modules/posixtm (Makefile.am): Likewise.
18185         * modules/posixver (Makefile.am): Likewise.
18186         * modules/putenv (Makefile.am): Likewise.
18187         * modules/quote (Makefile.am): Likewise.
18188         * modules/quotearg (Makefile.am): Likewise.
18189         * modules/raise (Makefile.am): Likewise.
18190         * modules/read-file (Makefile.am): Likewise.
18191         * modules/readline (Makefile.am): Likewise.
18192         * modules/readlink (Makefile.am): Likewise.
18193         * modules/readtokens (Makefile.am): Likewise.
18194         * modules/readutmp (Makefile.am): Likewise.
18195         * modules/realloc (Makefile.am): Likewise.
18196         * modules/regex (Makefile.am): Likewise.
18197         * modules/rename-dest-slash (Makefile.am): Likewise.
18198         * modules/rename (Makefile.am): Likewise.
18199         * modules/rijndael (Makefile.am): Likewise.
18200         * modules/rmdir (Makefile.am): Likewise.
18201         * modules/rpmatch (Makefile.am): Likewise.
18202         * modules/safe-read (Makefile.am): Likewise.
18203         * modules/safe-write (Makefile.am): Likewise.
18204         * modules/same-inode (Makefile.am): Likewise.
18205         * modules/same (Makefile.am): Likewise.
18206         * modules/save-cwd (Makefile.am): Likewise.
18207         * modules/savedir (Makefile.am): Likewise.
18208         * modules/setenv (Makefile.am): Likewise.
18209         * modules/settime (Makefile.am): Likewise.
18210         * modules/sha1 (Makefile.am): Likewise.
18211         * modules/sig2str (Makefile.am): Likewise.
18212         * modules/snprintf (Makefile.am): Likewise.
18213         * modules/stat-macros (Makefile.am): Likewise.
18214         * modules/stat-time (Makefile.am): Likewise.
18215         * modules/stdbool (Makefile.am): Likewise.
18216         * modules/stdint (Makefile.am): Likewise.
18217         * modules/stdlib-safer (Makefile.am): Likewise.
18218         * modules/stpcpy (Makefile.am): Likewise.
18219         * modules/stpncpy (Makefile.am): Likewise.
18220         * modules/strcase (Makefile.am): Likewise.
18221         * modules/strcasestr (Makefile.am): Likewise.
18222         * modules/strchrnul (Makefile.am): Likewise.
18223         * modules/strcspn (Makefile.am): Likewise.
18224         * modules/strdup (Makefile.am): Likewise.
18225         * modules/strerror (Makefile.am): Likewise.
18226         * modules/strftime (Makefile.am): Likewise.
18227         * modules/strndup (Makefile.am): Likewise.
18228         * modules/strnlen (Makefile.am): Likewise.
18229         * modules/strpbrk (Makefile.am): Likewise.
18230         * modules/strsep (Makefile.am): Likewise.
18231         * modules/strstr (Makefile.am): Likewise.
18232         * modules/strtod (Makefile.am): Likewise.
18233         * modules/strtoimax (Makefile.am): Likewise.
18234         * modules/strtok_r (Makefile.am): Likewise.
18235         * modules/strtol (Makefile.am): Likewise.
18236         * modules/strtoll (Makefile.am): Likewise.
18237         * modules/strtoul (Makefile.am): Likewise.
18238         * modules/strtoull (Makefile.am): Likewise.
18239         * modules/strtoumax (Makefile.am): Likewise.
18240         * modules/strverscmp (Makefile.am): Likewise.
18241         * modules/sys_socket (Makefile.am): Likewise.
18242         * modules/sys_stat (Makefile.am): Likewise.
18243         * modules/sysexits (Makefile.am): Likewise.
18244         * modules/time_r (Makefile.am): Likewise.
18245         * modules/timegm (Makefile.am): Likewise.
18246         * modules/timespec (Makefile.am): Likewise.
18247         * modules/tmpfile-safer (Makefile.am): Likewise.
18248         * modules/trim (Makefile.am): Likewise.
18249         * modules/unistd-safer (Makefile.am): Likewise.
18250         * modules/unlinkdir (Makefile.am): Likewise.
18251         * modules/unlocked-io (Makefile.am): Likewise.
18252         * modules/userspec (Makefile.am): Likewise.
18253         * modules/utime (Makefile.am): Likewise.
18254         * modules/utimecmp (Makefile.am): Likewise.
18255         * modules/utimens (Makefile.am): Likewise.
18256         * modules/vasnprintf (Makefile.am): Likewise.
18257         * modules/vasprintf (Makefile.am): Likewise.
18258         * modules/vsnprintf (Makefile.am): Likewise.
18259         * modules/xalloc (Makefile.am): Likewise.
18260         * modules/xgetcwd (Makefile.am): Likewise.
18261         * modules/xnanosleep (Makefile.am): Likewise.
18262         * modules/xreadlink (Makefile.am): Likewise.
18263         * modules/xstrtod (Makefile.am): Likewise.
18264         * modules/xstrtol (Makefile.am): Likewise.
18265         * modules/xstrtold (Makefile.am): Likewise.
18266         * modules/yesno (Makefile.am): Likewise.
18267         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
18268
18269 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18270
18271         * modules/error (Makefile.am): Distribute files through
18272         EXTRA_DIST, not lib_SOURCES.
18273
18274 2006-10-12  Eric Blake  <ebb9@byu.net>
18275
18276         * modules/error (Makefile.am): Distribute files in /lib.
18277         * modules/obstack (Makefile.am): Likewise.
18278
18279 2006-10-12  Bruno Haible  <bruno@clisp.org>
18280
18281         * modules/acl (Makefile.am): Distribute all files in lib/ through
18282         EXTRA_DIST.
18283         * modules/arcfour (Makefile.am): Likewise.
18284         * modules/arctwo (Makefile.am): Likewise.
18285         * modules/argmatch (Makefile.am): Likewise.
18286         * modules/argz (Makefile.am): Likewise.
18287         * modules/atexit (Makefile.am): Likewise.
18288         * modules/backupfile (Makefile.am): Likewise.
18289         * modules/c-strtod (Makefile.am): Likewise.
18290         * modules/c-strtold (Makefile.am): Likewise.
18291         * modules/calloc (Makefile.am): Likewise.
18292         * modules/canon-host (Makefile.am): Likewise.
18293         * modules/canonicalize (Makefile.am): Likewise.
18294         * modules/chdir-long (Makefile.am): Likewise.
18295         * modules/chdir-safer (Makefile.am): Likewise.
18296         * modules/check-version (Makefile.am): Likewise.
18297         * modules/chown (Makefile.am): Likewise.
18298         * modules/cloexec (Makefile.am): Likewise.
18299         * modules/close-stream (Makefile.am): Likewise.
18300         * modules/closeout (Makefile.am): Likewise.
18301         * modules/crc (Makefile.am): Likewise.
18302         * modules/cycle-check (Makefile.am): Likewise.
18303         * modules/des (Makefile.am): Likewise.
18304         * modules/dirfd (Makefile.am): Likewise.
18305         * modules/dirname (Makefile.am): Likewise.
18306         * modules/dup2 (Makefile.am): Likewise.
18307         * modules/euidaccess (Makefile.am): Likewise.
18308         * modules/exclude (Makefile.am): Likewise.
18309         * modules/exitfail (Makefile.am): Likewise.
18310         * modules/fcntl-safer (Makefile.am): Likewise.
18311         * modules/file-type (Makefile.am): Likewise.
18312         * modules/fileblocks (Makefile.am): Likewise.
18313         * modules/filemode (Makefile.am): Likewise.
18314         * modules/filenamecat (Makefile.am): Likewise.
18315         * modules/fnmatch (Makefile.am): Likewise.
18316         * modules/fopen-safer (Makefile.am): Likewise.
18317         * modules/fpending (Makefile.am): Likewise.
18318         * modules/fprintftime (Makefile.am): Likewise.
18319         * modules/free (Makefile.am): Likewise.
18320         * modules/fsusage (Makefile.am): Likewise.
18321         * modules/ftruncate (Makefile.am): Likewise.
18322         * modules/fts (Makefile.am): Likewise.
18323         * modules/gc (Makefile.am): Likewise.
18324         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
18325         * modules/getaddrinfo (Makefile.am): Likewise.
18326         * modules/getcwd (Makefile.am): Likewise.
18327         * modules/getdelim (Makefile.am): Likewise.
18328         * modules/getdomainname (Makefile.am): Likewise.
18329         * modules/getgroups (Makefile.am): Likewise.
18330         * modules/gethostname (Makefile.am): Likewise.
18331         * modules/gethrxtime (Makefile.am): Likewise.
18332         * modules/getline (Makefile.am): Likewise.
18333         * modules/getloadavg (Makefile.am): Likewise.
18334         * modules/getlogin_r (Makefile.am): Likewise.
18335         * modules/getopt (Makefile.am): Likewise.
18336         * modules/getpass (Makefile.am): Likewise.
18337         * modules/getpass-gnu (Makefile.am): Likewise.
18338         * modules/getsubopt (Makefile.am): Likewise.
18339         * modules/gettime (Makefile.am): Likewise.
18340         * modules/gettimeofday (Makefile.am): Likewise.
18341         * modules/getugroups (Makefile.am): Likewise.
18342         * modules/getusershell (Makefile.am): Likewise.
18343         * modules/glob (Makefile.am): Likewise.
18344         * modules/group-member (Makefile.am): Likewise.
18345         * modules/hard-locale (Makefile.am): Likewise.
18346         * modules/hash (Makefile.am): Likewise.
18347         * modules/hmac-md5 (Makefile.am): Likewise.
18348         * modules/hmac-sha1 (Makefile.am): Likewise.
18349         * modules/human (Makefile.am): Likewise.
18350         * modules/idcache (Makefile.am): Likewise.
18351         * modules/imaxabs (Makefile.am): Likewise.
18352         * modules/imaxdiv (Makefile.am): Likewise.
18353         * modules/inet_ntop (Makefile.am): Likewise.
18354         * modules/inet_pton (Makefile.am): Likewise.
18355         * modules/inttostr (Makefile.am): Likewise.
18356         * modules/isapipe (Makefile.am): Likewise.
18357         * modules/lchown (Makefile.am): Likewise.
18358         * modules/long-options (Makefile.am): Likewise.
18359         * modules/lstat (Makefile.am): Likewise.
18360         * modules/malloc (Makefile.am): Likewise.
18361         * modules/mathl (Makefile.am): Likewise.
18362         * modules/mbchar (Makefile.am): Likewise.
18363         * modules/md2 (Makefile.am): Likewise.
18364         * modules/md4 (Makefile.am): Likewise.
18365         * modules/md5 (Makefile.am): Likewise.
18366         * modules/memcasecmp (Makefile.am): Likewise.
18367         * modules/memchr (Makefile.am): Likewise.
18368         * modules/memcmp (Makefile.am): Likewise.
18369         * modules/memcoll (Makefile.am): Likewise.
18370         * modules/memcpy (Makefile.am): Likewise.
18371         * modules/memmem (Makefile.am): Likewise.
18372         * modules/memmove (Makefile.am): Likewise.
18373         * modules/mempcpy (Makefile.am): Likewise.
18374         * modules/memrchr (Makefile.am): Likewise.
18375         * modules/memset (Makefile.am): Likewise.
18376         * modules/memxor (Makefile.am): Likewise.
18377         * modules/mkancesdirs (Makefile.am): Likewise.
18378         * modules/mkdir (Makefile.am): Likewise.
18379         * modules/mkdir-p (Makefile.am): Likewise.
18380         * modules/mkdtemp (Makefile.am): Likewise.
18381         * modules/mkstemp (Makefile.am): Likewise.
18382         * modules/mktime (Makefile.am): Likewise.
18383         * modules/modechange (Makefile.am): Likewise.
18384         * modules/mountlist (Makefile.am): Likewise.
18385         * modules/nanosleep (Makefile.am): Likewise.
18386         * modules/openat (Makefile.am): Likewise.
18387         * modules/pagealign_alloc (Makefile.am): Likewise.
18388         * modules/physmem (Makefile.am): Likewise.
18389         * modules/poll (Makefile.am): Likewise.
18390         * modules/posixtm (Makefile.am): Likewise.
18391         * modules/posixver (Makefile.am): Likewise.
18392         * modules/putenv (Makefile.am): Likewise.
18393         * modules/quote (Makefile.am): Likewise.
18394         * modules/quotearg (Makefile.am): Likewise.
18395         * modules/raise (Makefile.am): Likewise.
18396         * modules/read-file (Makefile.am): Likewise.
18397         * modules/readline (Makefile.am): Likewise.
18398         * modules/readlink (Makefile.am): Likewise.
18399         * modules/readtokens (Makefile.am): Likewise.
18400         * modules/readutmp (Makefile.am): Likewise.
18401         * modules/realloc (Makefile.am): Likewise.
18402         * modules/regex (Makefile.am): Likewise.
18403         * modules/rename (Makefile.am): Likewise.
18404         * modules/rename-dest-slash (Makefile.am): Likewise.
18405         * modules/rijndael (Makefile.am): Likewise.
18406         * modules/rmdir (Makefile.am): Likewise.
18407         * modules/rpmatch (Makefile.am): Likewise.
18408         * modules/safe-read (Makefile.am): Likewise.
18409         * modules/safe-write (Makefile.am): Likewise.
18410         * modules/same (Makefile.am): Likewise.
18411         * modules/save-cwd (Makefile.am): Likewise.
18412         * modules/savedir (Makefile.am): Likewise.
18413         * modules/setenv (Makefile.am): Likewise.
18414         * modules/settime (Makefile.am): Likewise.
18415         * modules/sha1 (Makefile.am): Likewise.
18416         * modules/sig2str (Makefile.am): Likewise.
18417         * modules/snprintf (Makefile.am): Likewise.
18418         * modules/stdlib-safer (Makefile.am): Likewise.
18419         * modules/stpcpy (Makefile.am): Likewise.
18420         * modules/stpncpy (Makefile.am): Likewise.
18421         * modules/strcase (Makefile.am): Likewise.
18422         * modules/strcasestr (Makefile.am): Likewise.
18423         * modules/strchrnul (Makefile.am): Likewise.
18424         * modules/strcspn (Makefile.am): Likewise.
18425         * modules/strdup (Makefile.am): Likewise.
18426         * modules/strerror (Makefile.am): Likewise.
18427         * modules/strftime (Makefile.am): Likewise.
18428         * modules/strndup (Makefile.am): Likewise.
18429         * modules/strnlen (Makefile.am): Likewise.
18430         * modules/strpbrk (Makefile.am): Likewise.
18431         * modules/strsep (Makefile.am): Likewise.
18432         * modules/strstr (Makefile.am): Likewise.
18433         * modules/strtod (Makefile.am): Likewise.
18434         * modules/strtoimax (Makefile.am): Likewise.
18435         * modules/strtok_r (Makefile.am): Likewise.
18436         * modules/strtol (Makefile.am): Likewise.
18437         * modules/strtoll (Makefile.am): Likewise.
18438         * modules/strtoul (Makefile.am): Likewise.
18439         * modules/strtoull (Makefile.am): Likewise.
18440         * modules/strtoumax (Makefile.am): Likewise.
18441         * modules/strverscmp (Makefile.am): Likewise.
18442         * modules/time_r (Makefile.am): Likewise.
18443         * modules/timegm (Makefile.am): Likewise.
18444         * modules/tmpfile-safer (Makefile.am): Likewise.
18445         * modules/unistd-safer (Makefile.am): Likewise.
18446         * modules/unlinkdir (Makefile.am): Likewise.
18447         * modules/userspec (Makefile.am): Likewise.
18448         * modules/utime (Makefile.am): Likewise.
18449         * modules/utimecmp (Makefile.am): Likewise.
18450         * modules/utimens (Makefile.am): Likewise.
18451         * modules/vasnprintf (Makefile.am): Likewise.
18452         * modules/vasprintf (Makefile.am): Likewise.
18453         * modules/vsnprintf (Makefile.am): Likewise.
18454         * modules/xalloc (Makefile.am): Likewise.
18455         * modules/xgetcwd (Makefile.am): Likewise.
18456         * modules/xnanosleep (Makefile.am): Likewise.
18457         * modules/xreadlink (Makefile.am): Likewise.
18458         * modules/xstrtod (Makefile.am): Likewise.
18459         * modules/xstrtol (Makefile.am): Likewise.
18460         * modules/xstrtold (Makefile.am): Likewise.
18461         * modules/yesno (Makefile.am): Likewise.
18462
18463 2006-10-12  Jim Meyering  <jim@meyering.net>
18464
18465         * m4/getloadavg.m4: Revert the change below.
18466
18467         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
18468         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
18469         fail with a symlink, which is what coreutils' ./bootstrap now
18470         creates by default.
18471
18472 2006-10-12  Bruno Haible  <bruno@clisp.org>
18473
18474         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
18475         mingw.
18476         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
18477         MSVC and mingw explicitly.
18478
18479 2006-10-11  Simon Josefsson  <jas@extundo.com>
18480             Bruno Haible  <bruno@clisp.org>
18481
18482         Add support for multiple gnulib-tool invocations in the scope of a
18483         single configure.ac file.
18484         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
18485         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
18486         with the same contents as the _LIBADD variable.
18487         (func_emit_initmacro_start, func_emit_initmacro_end,
18488         func_emit_initmacro_done): New functions.
18489         (func_import, func_create_testdir): Invoke them. Allow the identifiers
18490         gl_LIBOBJS and gl_LTLIBOBJS.
18491
18492 2006-10-11  Bruno Haible  <bruno@clisp.org>
18493
18494         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
18495         (func_create_testdir): Don't create po/Makefile.am, don't invoke
18496         autoreconf. Instead, invoke autopoint explicitly but move back the
18497         *.m4 files from gnulib.
18498
18499 2006-10-11  Bruno Haible  <bruno@clisp.org>
18500
18501         * gnulib-tool (func_usage): Make module names after --create-testdir
18502         optional.
18503         (func_create_testdir): If no module was specified, use nearly all
18504         modules.
18505
18506 2006-10-12  Jim Meyering  <jim@meyering.net>
18507
18508         Big performance improvement for fts-based tools that use FTS_NOSTAT.
18509         Avoid spurious inode-mismatch problems on non-POSIX file systems.
18510         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
18511         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
18512         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
18513         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
18514         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
18515         (fts_set_stat_required): New function.
18516         (fts_open): Defer the calls to fts_stat, if possible or requested.
18517         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
18518         into fts_stat itself.
18519         (fts_read): Perform any required (deferred) fts_stat call.
18520         (fts_build): Likewise, for the directory we're about to open and read.
18521         In the readdir loop, carefully decide whether each entry will require
18522         an eventual call to fts_stat, using dirent.d_type info if available.
18523         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
18524         a command line argument into this function.  Update all callers.
18525         Map a return value of FTS_DOT to FTS_D for a command line argument.
18526         * modules/fts (Depends-on): Add d-type.  Alphabetize.
18527         Thanks to Miklos Szeredi for his tenacity and for the initial
18528         bug report about "find" failing on a FUSE-based file system.
18529
18530         * lib/fts.c (fts_open): Use consistent indentation.
18531
18532 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
18533
18534         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
18535         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
18536         reported by Jim Meyering.  All uses of cache variables renamed
18537         to match Autoconf's.
18538         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
18539         the other one.
18540
18541         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
18542         Fix misspelling in diagnostic.
18543
18544 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18545
18546         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
18547         defined.  Problem reported by Matthew Woehlke.
18548
18549         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
18550         Add support for Tandem NonStop R series.
18551         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
18552         Use new macro.
18553
18554         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
18555         (has_trailing_slash): Omit size arg; all callers changed.
18556         Omit 'inline', since it doesn't help performance and we'd
18557         need to configure it.
18558         Don't count //, ///, etc. as having a trailing slash.
18559         As a side effect, this removes a C99ism reported by Matthew Woehlke.
18560         (rpl_rename_dest_slash): On failure, use rename's errno rather
18561         than (in some cases) an incorrect or junk errno.
18562         Simplify code by removing need to compute length; this does
18563         cause it to make two passes instead of one over the file name,
18564         but it's worth it.
18565
18566         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
18567         change, since Autoconf's version may no longer be appropriate now
18568         that we are using CVS Autoconf's version.  Add support for Tandem.
18569
18570 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
18571             Bruno Haible  <bruno@clisp.org>
18572
18573         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
18574         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
18575         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
18576         gl_AC_TYPE_LONG_LONG.
18577
18578         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
18579         instead of HAVE_LONG_LONG.
18580         * lib/printf-args.c (printf_fetchargs): Likewise.
18581         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
18582         * lib/vasnprintf.c (VASNPRINTF): Likewise.
18583         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
18584         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
18585         gl_AC_TYPE_LONG_LONG.
18586
18587 2006-10-11  Bruno Haible  <bruno@clisp.org>
18588
18589         * m4/longlong.m4: Add comments.
18590         * m4/ulonglong.m4: Likewise.
18591
18592 2006-10-10  Bruno Haible  <bruno@clisp.org>
18593
18594         Make it possible to #define stpcpy, strdup to aliases.
18595         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
18596         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
18597
18598 2006-10-10  Bruno Haible  <bruno@clisp.org>
18599
18600         Make it possible to #define gcd to an alias.
18601         * lib/gcd.c: Include config.h.
18602
18603 2006-10-10  Bruno Haible  <bruno@clisp.org>
18604
18605         Make it possible to #define c_isascii to an alias.
18606         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
18607         defined. Undefine the macros before defining them, to avoid gcc
18608         warnings.
18609         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
18610         define NO_C_CTYPE_MACROS early.
18611
18612 2006-10-10  Bruno Haible  <bruno@clisp.org>
18613
18614         Make it possible to #define set_program_name to an alias.
18615         * lib/progname.c: Don't undefine set_program_name; instead, undefine
18616         ENABLE_RELOCATABLE early.
18617
18618 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18619
18620         Port to Tandem NSK OSS, which has 64-bit signed int but at most
18621         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
18622         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
18623         More generally, don't assume that 64-bit signed int is available
18624         if unsigned int is, and vice versa.
18625         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
18626         unsigned symbols, not on their signed counterparts.
18627         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
18628         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
18629         (UINT64_C, UINTMAX_C):
18630         Likewise.
18631         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
18632         unsigned counterparts.
18633         (Have_long_long, Unsigned): New macros.
18634         (Int): Renamed from INT.
18635         (strtoimax): Use the new macros.
18636         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
18637         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
18638         * modules/inttypes (inttypes.h): Substitute
18639         HAVE_UNSIGNED_LONG_LONG_INT.
18640         * modules/stdint (stdint.h): Likewise.
18641         (Files): Add m4/ulonglong.m4.
18642
18643 2006-10-10  Bruno Haible  <bruno@clisp.org>
18644
18645         Fix a gcc -Wshadow warning.
18646         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
18647         to 'bucket'.
18648         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
18649         gl_linked_indexof_from_to): Likewise.
18650         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
18651         Likewise.
18652         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
18653         Likewise.
18654         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
18655         Reported by Eric Blake.
18656
18657 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
18658
18659         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
18660         for NetBSD.  Problem reported by Bruno Haible.
18661
18662 2006-10-09  Jim Meyering  <jim@meyering.net>
18663
18664         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
18665         Patch from Bruno Haible.
18666
18667 2006-10-09  Jim Meyering  <jim@meyering.net>
18668
18669         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
18670         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
18671         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
18672
18673 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18674
18675         Don't include <config.h> twice; this doesn't work in some cases,
18676         e.g., when config.h has "#define intmax_t long long int" and
18677         we include <config.h>, <inttypes.h>, <config.h> in that order.
18678         Problem reported by Matthew Woehlke in:
18679         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
18680         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
18681         * lib/fts-cycle.c: Don't include config.h.
18682         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
18683         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
18684         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
18685         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
18686         inttypes.h.
18687         * lib/xstrtoumax.c: Likewise.
18688         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
18689         __strtol and the like, so that this module is more like its siblings.
18690         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
18691         Remove; no longer needed now that we assume gnulib inttypes.h.
18692
18693 2006-10-08  Bruno Haible  <bruno@clisp.org>
18694
18695         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
18696         option.
18697
18698 2006-10-07  Jim Meyering  <jim@meyering.net>
18699
18700         * modules/inttypes (inttypes.h): Revert what seems to have been
18701         an inadvertent part of today's change: use "|", not "/" in the
18702         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
18703
18704 2006-10-07  Bruno Haible  <bruno@clisp.org>
18705
18706         * modules/sublist: New file.
18707
18708 2006-10-07  Bruno Haible  <bruno@clisp.org>
18709
18710         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
18711         * modules/argz (argz.h): Likewise.
18712         * modules/arpa_inet (arpa/inet.h): Likewise.
18713         * modules/byteswap (byteswap.h): Likewise.
18714         * modules/configmake (configmake.h): Likewise.
18715         * modules/fcntl (fcntl.h): Likewise.
18716         * modules/fnmatch (fnmatch.h): Likewise.
18717         * modules/getopt (getopt.h): Likewise.
18718         * modules/glob (glob.h): Likewise.
18719         * modules/inttypes (inttypes.h): Likewise.
18720         * modules/netinet_in (netinet/in.h): Likewise.
18721         * modules/poll (poll.h): Likewise.
18722         * modules/stdbool (stdbool.h): Likewise.
18723         * modules/stdint (stdint.h): Likewise.
18724         * modules/sys_select (sys/select.h): Likewise.
18725         * modules/sys_socket (sys/socket.h): Likewise.
18726         * modules/sys_stat (sys/stat.h): Likewise.
18727         * modules/sysexits (sysexits.h): Likewise.
18728         * modules/unistd (unistd.h): Likewise.
18729         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18730         Add a "DO NOT EDIT" comment to the generated file.
18731         (func_import): Likewise for gnulib-comp.m4.
18732
18733 2006-10-07  Bruno Haible  <bruno@clisp.org>
18734
18735         * lib/gl_sublist.h: New file.
18736         * lib/gl_sublist.c: New file.
18737
18738 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18739
18740         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
18741         name (relative to the original working directory) and the file
18742         name component (relative to the temporary working directory).  All
18743         callers changed.
18744         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
18745         * lib/mkdir-p.c (make_dir_parents): Likewise.
18746         * lib/mkdir-p.h (make_dir_parents): Likewise.
18747
18748 2006-10-06  Eric Blake  <ebb9@byu.net>
18749
18750         Define several macros for use by the clean-temp module.
18751         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
18752         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
18753         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
18754
18755         * lib/clean-temp.h (close_stream_temp): New declaration.
18756         * lib/clean-temp.c (includes): Pull in headers according to what
18757         other modules are in use.
18758         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
18759
18760 2006-10-06  Bruno Haible  <bruno@clisp.org>
18761
18762         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
18763         instead of fopen, fwriteerror.
18764
18765 2006-10-06  Bruno Haible  <bruno@clisp.org>
18766
18767         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
18768         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
18769         int.
18770         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
18771         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
18772         Return an error indicator.
18773         Suggested by Eric Blake.
18774
18775 2006-10-06  Bruno Haible  <bruno@clisp.org>
18776
18777         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
18778         Reported by Eric Blake.
18779
18780 2006-10-06  Bruno Haible  <bruno@clisp.org>
18781
18782         * modules/closeout (Description): Mention stderr too.
18783
18784 2006-10-06  Bruno Haible  <bruno@clisp.org>
18785         and Paul Eggert  <eggert@cs.ucla.edu>
18786
18787         * lib/closeout.c (close_stdout): Also close stderr.
18788         * lib/closeout.h: Update comment.
18789
18790 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18791
18792         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
18793         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
18794         * lib/dirchownmod.c: Include lchown.h.
18795         * lib/lchown.c: Don't include files that lchown.h now includes.
18796         Don't declare chown, since lchown.h now does that.
18797         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
18798         (lchown): Define to rpl_chown if lchown is declared but
18799         does not exist.  Declare using a prototype if lchown is not
18800         declared.  Add a copyright notice.
18801         * lib/mkstemp.h: Include <unistd.h>.
18802         * lib/openat.c: Include lchown.h.
18803
18804         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
18805         we now test for that separately.
18806         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
18807         rather than O_NOFOLLOW, when testing whether it's possible to
18808         avoid a race condition reliably.
18809         * lib/savewd.c (savewd_chdir): Likewise.
18810
18811         Remove macros that are no longer needed now that stdint.h is
18812         reliable.
18813         * lib/fsusage.c (UINTMAX_MAX): Remove.
18814         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
18815         * lib/utimecmp.c (SIZE_MAX): Remove.
18816
18817         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
18818
18819         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
18820         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
18821         O_NOATIME works.
18822
18823 2006-10-05  Bruno Haible  <bruno@clisp.org>
18824
18825         * lib/gl_list.h (gl_sortedlist_search_from_to,
18826         gl_sortedlist_indexof_from_to): New declarations.
18827         (gl_list_implementation): New fields sortedlist_search_from_to,
18828         sortedlist_indexof_from_to.
18829         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
18830         inline functions.
18831         * lib/gl_list.c (gl_sortedlist_search_from_to,
18832         gl_sortedlist_indexof_from_to): New functions.
18833         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
18834         function.
18835         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
18836         (gl_array_sortedlist_search_from_to): New function.
18837         (gl_array_list_implementation): Update.
18838         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
18839         function.
18840         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
18841         (gl_carray_sortedlist_search_from_to): New function.
18842         (gl_carray_list_implementation): Update.
18843         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
18844         gl_linked_sortedlist_indexof_from_to): New functions.
18845         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
18846         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
18847         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
18848         gl_tree_sortedlist_indexof_from_to): New functions.
18849         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
18850         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
18851         Update.
18852         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
18853         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
18854         Update.
18855
18856 2006-10-05  Bruno Haible  <bruno@clisp.org>
18857
18858         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
18859         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
18860         (struct gl_list_implementation): Add fields search_from_to,
18861         indexof_from_to. Remove fields search, indexof.
18862         (gl_list_search): Use the search_from_to method.
18863         (gl_list_search_from, gl_list_search_from_to): New functions.
18864         (gl_list_indexof): Use the indexof_from_to method.
18865         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
18866         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
18867         (gl_list_search_from, gl_list_search_from_to): New functions.
18868         (gl_list_indexof): Use the indexof_from_to method.
18869         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
18870         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
18871         gl_array_indexof. Add start_index, end_index arguments.
18872         (gl_array_search_from_to): Renamed from gl_array_search. Add
18873         start_index, end_index arguments.
18874         (gl_array_remove, gl_array_list_implementation): Update.
18875         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
18876         gl_carray_indexof. Add start_index, end_index arguments.
18877         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
18878         start_index, end_index arguments.
18879         (gl_carray_remove, gl_carray_list_implementation): Update.
18880         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
18881         gl_linked_search. Add start_index, end_index arguments.
18882         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
18883         start_index, end_index arguments.
18884         (gl_linked_remove): Update.
18885         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
18886         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
18887         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
18888         field to 'size_t'.
18889         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
18890         gl_tree_search. Add start_index, end_index arguments.
18891         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
18892         start_index, end_index arguments.
18893         (gl_tree_remove): Update.
18894         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
18895         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
18896         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
18897         function.
18898         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
18899         gl_tree_search. Add start_index, end_index arguments.
18900         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
18901         start_index, end_index arguments.
18902         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
18903         Update.
18904         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
18905
18906 2006-10-05  Bruno Haible  <bruno@clisp.org>
18907
18908         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
18909
18910         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
18911         fwriteerror_temp): New declarations.
18912         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
18913         (descriptors): New variable.
18914         (cleanup): First, close the descriptors.
18915         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
18916         fclose_temp, fwriteerror_temp): New functions.
18917
18918 2006-10-04  Jim Meyering  <jim@meyering.net>
18919
18920         * lib/fts.c (fts_open): Tiny comment change.
18921
18922 2006-10-04  Bruno Haible  <bruno@clisp.org>
18923
18924         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
18925         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
18926         gl_LOCK_BODY.
18927         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
18928         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
18929         gl_LOCK_EARLY_BODY.
18930         (gl_LOCK): Require gl_LOCK_BODY.
18931
18932 2006-10-04  Bruno Haible  <bruno@clisp.org>
18933
18934         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
18935         (gl_oset_search_atleast): New declaration.
18936         (struct gl_oset_implementation): Add field 'search_atleast'.
18937         (gl_oset_search_atleast): New inline function.
18938         * lib/gl_oset.c (gl_oset_search_atleast): New function.
18939         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
18940         (gl_array_oset_implementation): Update.
18941         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
18942         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
18943         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
18944
18945 2006-10-04  Bruno Haible  <bruno@clisp.org>
18946
18947         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
18948
18949 2006-10-03  Bruno Haible  <bruno@clisp.org>
18950
18951         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
18952         from gl_avltreehash_list_implementation.
18953
18954 2006-10-03  Bruno Haible  <bruno@clisp.org>
18955
18956         * lib/gl_oset.c (gl_oset_add): Fix return type.
18957
18958 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
18959
18960         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
18961
18962 2006-10-02  Eric Blake  <ebb9@byu.net>
18963
18964         * modules/strnlen (Depends-on): Add extensions.
18965
18966 2006-10-02  Eric Blake  <ebb9@byu.net>
18967
18968         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
18969         definition in 2.60+.
18970
18971 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
18972
18973         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
18974         checks.
18975
18976 2006-10-02  Bruno Haible  <bruno@clisp.org>
18977
18978         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
18979         to the AUTOMAKE_OPTIONS.
18980         Reported by Jim Meyering.
18981
18982 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
18983
18984         Work around bug in Solaris 10 /proc file system:
18985         /proc/self/fd/NNN/.. isn't the parent directory of
18986         the directory whose file descriptor is NNN.  This needs to
18987         be worked around at run time, not compile time, since a
18988         program might be built on Solaris 8, where things work, and
18989         run on Solaris 10.
18990         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
18991         to use the following interface instead:
18992         (OPENAT_BUFFER_SIZE): New macro.
18993         (openat_proc_name): New function.
18994         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
18995         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
18996         Likewise.
18997         * lib/openat-proc.c: New file.
18998         * modules/openat (Files): Add lib/openat-proc.c.
18999         (Depends-on): Add same-inode, stdbool.
19000         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
19001
19002 2006-09-29  Bruno Haible  <bruno@clisp.org>
19003
19004         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
19005         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
19006         argument. Set stdout_closed before testing for ferror, not after.
19007         (fwriteerror, fwriteerror_no_ebadf): New functions.
19008
19009 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19010
19011         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
19012
19013 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
19014
19015         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
19016         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
19017
19018 2006-09-28  Jim Meyering  <jim@meyering.net>
19019
19020         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
19021         Include <unistd.h>.
19022
19023 2006-09-28  Bruno Haible  <bruno@clisp.org>
19024
19025         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
19026         * modules/linkedhash-list (Depends-on): Likewise.
19027         * modules/rbtreehash-list (Depends-on): Likewise.
19028
19029 2006-09-28  Bruno Haible  <bruno@clisp.org>
19030
19031         * lib/strndup.h: Simplify the redefinition of strndup.
19032         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
19033         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
19034
19035 2006-09-28  Bruno Haible  <bruno@clisp.org>
19036
19037         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
19038         * lib/gl_linkedhash_list.c: Likewise.
19039         * lib/gl_rbtreehash_list.c: Likewise.
19040
19041 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19042
19043         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
19044         getaddrinfo.
19045
19046         * lib/__fpending.h: Don't include <stdio_ext.h> unless
19047         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
19048         it causes <stdio_ext.h> to cause a compile-time error.
19049         Problem reported by Nelson H. F. Beebe.
19050         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
19051         of HAVE_DECL___PENDING.
19052
19053         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
19054         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
19055         declaration.
19056
19057 2006-09-27  Jim Meyering  <jim@meyering.net>
19058
19059         This file could end up with a definition for a function
19060         named __strndup, rather than rpl_strndup on a system with
19061         incomplete weak_alias support.
19062         * lib/strndup.c (strndup): Rename from __strndup.
19063         Remove #defines that used to map __strndup to strndup.
19064         Don't use K&R prototypes.
19065         Remove LIBC-related code, since this file is not sync'd with glibc.
19066         * lib/strndup.h: Revamp, accordingly.
19067         * m4/strndup.m4: Modernize.
19068
19069 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19070
19071         * modules/savewd (Depends-on): Add 'raise'.
19072         * lib/savewd.c: Include <signal.h>, for 'raise'.
19073
19074 2006-09-26  Jim Meyering  <jim@meyering.net>
19075
19076         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
19077         when we detect Darwin 8.7.0's acl_get_file bug.
19078         Rearrange to perform the new (below) run-test while $LIBS
19079         contains any acl-related library.  Set USE_ACL at the end.
19080         (gl_ACL_GET_FILE): New function.
19081
19082 2006-09-26  Eric Blake  <ebb9@byu.net>
19083
19084         * lib/verror.c: Include <config.h> unconditionally.
19085
19086 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19087
19088         * modules/clock-time (Maintainer): Add self.
19089         * modules/getlogin_r (Depends-on): Add extensions.
19090
19091 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19092
19093         * modules/clock-time: New module.
19094         * modules/nanosleep (Depends-on): Add clock-time.
19095         * modules/gethrxtime (Depends-on): Likewise.
19096         * modules/gettime (Depends-on): Likewise.
19097         * modules/settime (Depends-on): Likewise.
19098
19099         * modules/fts-lgpl: Depend on openat.
19100         * modules/mkancesdirs: Depend on savewd.
19101         * modules/mkdir-p: Likewise.
19102
19103 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19104
19105         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
19106
19107         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
19108         `gl_have_arbitrary_file_name_length_limit' to
19109         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
19110         actually works between configure runs.
19111
19112 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19113             Bruno Haible  <bruno@clisp.org>
19114
19115         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
19116
19117 2006-09-25  Jim Meyering  <jim@meyering.net>
19118
19119         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
19120         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
19121
19122 2006-09-25  Eric Blake  <ebb9@byu.net>
19123
19124         * gnulib-tool (func_import, func_create_testdir): Fix typos in
19125         exec's in 2006-09-18 patch when shuffling fds.
19126
19127 2006-09-25  Bruno Haible  <bruno@clisp.org>
19128
19129         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
19130         Reported by Jim Meyering.
19131
19132 2006-09-24  Jim Meyering  <jim@meyering.net>
19133
19134         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
19135         compare a pointer against a literal "0".  That caused failures with
19136         at least HP-UX's hpcc.
19137
19138 2006-09-22  Simon Josefsson  <jas@extundo.com>
19139
19140         * modules/gc-sha1:
19141         * modules/gc-md4:
19142         * modules/gc-hmac-sha1:
19143         * modules/gc-hmac-md5:
19144         * modules/gc-des:
19145         * modules/gc-arcfour: Distribute more files.
19146
19147 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19148
19149         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
19150         (gl_linked_iterator_from_to): Initialize struct completely.
19151         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
19152         (gl_tree_iterator_from_to): Likewise
19153         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
19154         * lib/gl_array_list.c [lint] (gl_array_iterator)
19155         (gl_array_iterator_from_to): Likewise.
19156         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
19157         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
19158         (gl_carray_iterator_from_to): Likewise.
19159
19160         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
19161         * lib/md4.c (md4_process_block): Remove unused variable.
19162         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
19163         parentheses for clarity.
19164
19165 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19166
19167         * modules/bison-i18n (Depends-on): Add gettext.
19168
19169 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19170
19171         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
19172         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
19173         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
19174         also add missing comma that caused broken test.
19175         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
19176         stdlib.h, for `abort'.
19177         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
19178         variables.
19179         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
19180         include unistd.h if present, for `rmdir'.
19181         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
19182         variables.
19183         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
19184         in the process include standard headers for prototypes.
19185         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
19186         gets declared on GNU/Linux.
19187         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
19188         unistd.h, for `rmdir'.
19189         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
19190
19191         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
19192         always true.
19193         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
19194
19195         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
19196
19197 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19198
19199         * gnulib-tool (func_version): Create output all at once.  This
19200         may help avoid triggering unnecessary SIGPIPEs, and at any
19201         rate it doesn't hurt.
19202
19203 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19204             Bruno Haible  <bruno@clisp.org>
19205
19206         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
19207         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
19208         * m4/signed.m4 (bh_C_SIGNED): Likewise.
19209
19210         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
19211         (gl_FUNC_VASPRINTF): Invoke it.
19212
19213 2006-09-22  Bruno Haible  <bruno@clisp.org>
19214
19215         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
19216         getloadavg.c as first argument.
19217
19218 2006-09-22  Bruno Haible  <bruno@clisp.org>
19219
19220         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
19221         at the beginning of the gl_INIT macro.
19222         * modules/getloadavg (configure.ac): Pass $gl_source_base to
19223         gl_GETLOADAVG.
19224
19225 2006-09-22  Bruno Haible  <bruno@clisp.org>
19226
19227         * gnulib-tool (func_create_megatestdir): Don't include the config-h
19228         module.
19229         Suggested by Ralf Wildenhues.
19230
19231 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19232
19233         Import this patch from libc:
19234
19235         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
19236
19237         * lib/regex_internal.c (re_string_reconstruct): Handle
19238         offset < pstr->valid_raw_len && pstr->offsets_needed case.
19239         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
19240         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
19241         re_string_context_at.
19242
19243         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
19244         now requires it.
19245         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
19246         gl_REGEX now does it for us.
19247         (gl_REGEX): Add test taken from
19248         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
19249
19250         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
19251         Check that large offsets work.  Modernize Autoconf usages.
19252         Prefer "yes" to mean a good thing rather than a bad.
19253         Don't put "#define mkstemp" in config.h, as this might interfere
19254         with standard system headers that "#define mkstemp mkstemp64".
19255
19256         * modules/mkstemp (Depends-on): Add extensions, so that
19257         mkstemp is visible on some platforms.
19258         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
19259         (Include): Change to "mkstemp.h" from <stdlib.h>.
19260         (Files): Add mkstemp.h.
19261
19262         * lib/mkstemp.h: New file, since some standard headers
19263         #define mkstemp.
19264         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
19265         Include "mkstemp.h".
19266         Make the _LIBC code resemble glibc original more,
19267         e.g., use K&R style.
19268         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
19269         (mkstemp): Remove, since mkstemp.h does this for us.
19270         * lib/stdlib--.h: Include mkstemp.h.
19271
19272         Import this patch from libc:
19273
19274         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
19275
19276         * lib/tempname.c (__gen_tempname): Change attempts_min
19277         into a macro.  Use preprocessor to decide how to initialize
19278         attempts [Coverity CID 67].
19279
19280 2006-09-20  Bruno Haible  <bruno@clisp.org>
19281
19282         * lib/mkdtemp.c: Import from libc.
19283         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
19284                 * sysdeps/posix/tempname.c (__gen_tempname): Change
19285                 attempts_min into a macro.  Use preprocessor to decide how to
19286                 initialize attempts [Coverity CID 67].
19287         2001-11-27  Paul Eggert  <eggert@twinsun.com>
19288                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
19289                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
19290
19291 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19292
19293         * gnulib-tool (func_exit): New function, to allow to pass the
19294         exit status portably through the trap.  Use everywhere.
19295         (--help, --version): Signal a write error.
19296         (trap): catch SIGPIPE, for write errors.
19297         Exit at the end of the trap, with the correct exit status.
19298
19299 2006-09-19  Karl Berry  <karl@gnu.org>
19300
19301         * doc/gnulib.texi: note about the license texinfo files.
19302
19303 2006-09-19  Eric Blake  <ebb9@byu.net>
19304
19305         * gnulib-tool: Avoid space-tab.
19306
19307 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
19308
19309         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
19310         that prevented coreutils 6.1 from building.  Problem reported
19311         by Petter Reinholdtsen.
19312
19313 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
19314
19315         * gnulib-tool (avoidlist): Fix typo that broke options like
19316         --avoid=lock that are used by coreutils bootstrap.
19317
19318 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
19319
19320         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
19321         more systematically.
19322
19323 2006-09-18  Jim Meyering  <jim@meyering.net>
19324
19325         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
19326
19327 2006-09-18  Bruno Haible  <bruno@clisp.org>
19328
19329         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
19330
19331 2006-09-18  Bruno Haible  <bruno@clisp.org>
19332
19333         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
19334         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
19335         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
19336         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
19337         * m4/gettext.m4: Require autoconf >= 2.52.
19338         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
19339         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
19340         of gl_cv_header_inttypes_h.
19341
19342 2006-09-18  Bruno Haible  <bruno@clisp.org>
19343
19344         * lib/javaversion.c: Include configmake.h.
19345
19346 2006-09-18  Bruno Haible  <bruno@clisp.org>
19347
19348         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
19349         avoid that the while loops be executed in a subshell.
19350
19351 2006-09-18  Bruno Haible  <bruno@clisp.org>
19352
19353         * MODULES.html.sh (func_module): Break long lines.
19354         Suggested by Bruce Korb <bkorb@gnu.org>.
19355
19356 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19357
19358         Speed up by a factor of 1.12.
19359         * gnulib-tool (nl): New variable.
19360         (func_import): Rewrite include directive extraction to only read each
19361         directive once.
19362
19363 2006-09-17  Bruno Haible  <bruno@clisp.org>
19364
19365         * modules/javaversion (Makefile.am): Remove DEFS setting.
19366         (Depends-on): Add configmake, for PKGDATADIR definition.
19367
19368 2006-09-17  Bruno Haible  <bruno@clisp.org>
19369
19370         * gnulib-tool (func_create_testdir): Rewrite all files at once.
19371
19372 2006-09-17  Bruno Haible  <bruno@clisp.org>
19373
19374         * gnulib-tool (func_append): New function, stolen from libtool.m4.
19375         (func_modules_transitive_closure, func_modules_add_dummy,
19376         func_modules_to_filelist, func_import, func_create_testdir,
19377         func_create_megatestdir, ...): Use it wherever possible.
19378         Suggested by Ralf Wildenhues.
19379
19380 2006-09-16  Karl Berry  <karl@gnu.org>
19381
19382         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
19383         to avoid sectioning errors.
19384         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
19385         [ifinfo]: blank line after @center-ed titles.
19386         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
19387         Spell FSF address consistently with others.
19388         (These changes approved by rms.)
19389
19390 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19391
19392         Speed up by a factor of 1.61.
19393         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
19394         already checked module names again.
19395
19396 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19397
19398         Speed up by a factor of 1.13.
19399         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
19400         for new_files, and the input to func_add_or_update.
19401
19402 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19403
19404         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
19405         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
19406
19407 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19408
19409         * modules/mkancesdirs (Depends-on): Add fcntl.
19410         * modules/savewd: New file.
19411         * MODULES.html.sh (File system functions): Add savewd.
19412
19413         * modules/configmake (Makefile.am): Add support for the
19414         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
19415
19416 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19417
19418         * m4/savewd.m4: New file.
19419
19420 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19421
19422         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
19423         (dirchownmod): New arg FD.  All callers changed.
19424         Use FD rather than opening the directory ourself, as opening is
19425         now the caller's responsibility.
19426         * lib/dirchownmod.h: Likewise.
19427         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
19428         hosts that require <sys/types.h> before <sys/stat.h>.  Include
19429         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
19430         (test_dir): Remove.
19431         (mkancesdirs): Return length of prefix of FILE that has already
19432         been made, or -2 if there is a child doing the work.  Redo
19433         algorithm so that it is O(N) rather than O(N**2).  Optimize away
19434         ".", and treat ".." specially since it might stray back into
19435         already-created areas.  Use a subprocess if necessary.  New arg
19436         WD; all users changed.  MAKE_DIR function should now return 1
19437         if it creates a directory that is not readable.  Return -2 if
19438         a child process is spun off.
19439         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
19440         Adjust signature to match code.
19441         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
19442         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
19443         all users changed.
19444         * lib/savewd.c, lib/savewd.h: New files.
19445
19446 2006-09-15  Jim Meyering  <jim@meyering.net>
19447
19448         * modules/rename-dest-slash: New module.
19449         * MODULES.html.sh (posix_compat): Add it here.
19450
19451         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
19452
19453 2006-09-15  Jim Meyering  <jim@meyering.net>
19454
19455         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
19456         file.
19457
19458         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
19459
19460 2006-09-15  Jim Meyering  <jim@meyering.net>
19461
19462         * lib/rename-dest-slash.c (has_trailing_slash): Use
19463         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
19464         (rpl_rename_dest_slash): Perform the cheaper trailing slash
19465         test before testing whether SRC is a directory.
19466         Suggestions from Bruno Haible.
19467
19468         Avoid a warning about an unused variable.
19469         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
19470         into the #ifdef block where it's used.
19471
19472         * lib/rename-dest-slash.c: New file.
19473
19474 2006-09-14  Bruno Haible  <bruno@clisp.org>
19475
19476         * lib/allocsa.c: Include <config.h> unconditionally.
19477         * lib/asnprintf.c: Likewise.
19478         * lib/asprintf.c: Likewise.
19479         * lib/c-strcasecmp.c: Likewise.
19480         * lib/c-strcasestr.c: Likewise.
19481         * lib/c-strncasecmp.c: Likewise.
19482         * lib/c-strstr.c: Likewise.
19483         * lib/classpath.c: Likewise.
19484         * lib/clean-temp.c: Likewise.
19485         * lib/concatpath.c: Likewise.
19486         * lib/copy-file.c: Likewise.
19487         * lib/csharpcomp.c: Likewise.
19488         * lib/csharpexec.c: Likewise.
19489         * lib/execute.c: Likewise.
19490         * lib/fatal-signal.c: Likewise.
19491         * lib/findprog.c: Likewise.
19492         * lib/fwriteerror.c: Likewise.
19493         * lib/gl_array_list.c: Likewise.
19494         * lib/gl_array_oset.c: Likewise.
19495         * lib/gl_avltree_list.c: Likewise.
19496         * lib/gl_avltree_oset.c: Likewise.
19497         * lib/gl_avltreehash_list.c: Likewise.
19498         * lib/gl_carray_list.c: Likewise.
19499         * lib/gl_linked_list.c: Likewise.
19500         * lib/gl_linkedhash_list.c: Likewise.
19501         * lib/gl_list.c: Likewise.
19502         * lib/gl_oset.c: Likewise.
19503         * lib/gl_rbtree_list.c: Likewise.
19504         * lib/gl_rbtree_oset.c: Likewise.
19505         * lib/gl_rbtreehash_list.c: Likewise.
19506         * lib/imaxabs.c: Likewise.
19507         * lib/imaxdiv.c: Likewise.
19508         * lib/javacomp.c: Likewise.
19509         * lib/javaexec.c: Likewise.
19510         * lib/javaversion.c: Likewise.
19511         * lib/linebreak.c: Likewise.
19512         * lib/localcharset.c: Likewise.
19513         * lib/lock.c: Likewise.
19514         * lib/mbchar.c: Likewise.
19515         * lib/mbswidth.c: Likewise.
19516         * lib/mkdtemp.c: Likewise.
19517         * lib/pipe.c: Likewise.
19518         * lib/printf-args.c: Likewise.
19519         * lib/printf-parse.c: Likewise.
19520         * lib/progname.c: Likewise.
19521         * lib/progreloc.c: Likewise.
19522         * lib/readlink.c: Likewise.
19523         * lib/sh-quote.c: Likewise.
19524         * lib/stpcpy.c: Likewise.
19525         * lib/stpncpy.c: Likewise.
19526         * lib/strcasecmp.c: Likewise.
19527         * lib/strcasestr.c: Likewise.
19528         * lib/strcspn.c: Likewise.
19529         * lib/striconv.c: Likewise.
19530         * lib/strncasecmp.c: Likewise.
19531         * lib/strnlen1.c: Likewise.
19532         * lib/strstr.c: Likewise.
19533         * lib/strtok_r.c: Likewise.
19534         * lib/tls.c: Likewise.
19535         * lib/tmpdir.c: Likewise.
19536         * lib/unicodeio.c: Likewise.
19537         * lib/unsetenv.c: Likewise.
19538         * lib/vasnprintf.c: Likewise.
19539         * lib/vasprintf.c: Likewise.
19540         * lib/wait-process.c: Likewise.
19541         * lib/xallocsa.c: Likewise.
19542         * lib/xsetenv.c: Likewise.
19543         * lib/xstriconv.c: Likewise.
19544
19545 2006-09-13  Simon Josefsson  <jas@extundo.com>
19546
19547         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
19548         that internally, suggested by Ralf Wildenhues
19549         <Ralf.Wildenhues@gmx.de>.
19550
19551 2006-09-13  Simon Josefsson  <jas@extundo.com>
19552
19553         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
19554         @LIBOBJS@.
19555         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19556
19557 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
19558
19559         * lib/_fpending.c: Include <config.h> unconditionally, since we no
19560         longer worry about uses that don't define HAVE_CONFIG_H.
19561         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
19562         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
19563         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
19564         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
19565         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
19566         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
19567         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
19568         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
19569         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
19570         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
19571         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
19572         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
19573         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
19574         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
19575         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
19576         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
19577         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
19578         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
19579         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
19580         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
19581         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
19582         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
19583         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
19584         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
19585         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
19586         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
19587         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
19588         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
19589         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
19590         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
19591         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
19592         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
19593         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
19594         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
19595         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
19596         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
19597         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
19598         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
19599         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
19600         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
19601         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
19602         Likewise.
19603
19604 2006-09-13  Eric Blake  <ebb9@byu.net>
19605
19606         * lib/getopt.c: Fix typo in last commit.
19607
19608 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
19609
19610         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
19611         dgettext.
19612
19613 2006-09-12  Jim Meyering  <jim@meyering.net>
19614
19615         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
19616         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
19617         Reported by Nelson H. F. Beebe.
19618
19619 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19620
19621         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
19622         program_invocation_name and program_invocation_short_name are
19623         initialized.
19624         * lib/argp-namefrob.h: Move declarations of program_invocation_name
19625         and program_invocation_short_name to argp.h, so they are visible
19626         to user programs.
19627         * lib/argp.h: Likewise
19628
19629 2006-09-10  Bruno Haible  <bruno@clisp.org>
19630
19631         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
19632         m4/inttypes_h.m4, m4/uintmax_t.m4.
19633
19634 2006-09-10  Bruno Haible  <bruno@clisp.org>
19635
19636         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
19637         gl_AC_TYPE_UINTMAX_T.
19638
19639 2006-09-10  Bruno Haible  <bruno@clisp.org>
19640
19641         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
19642
19643 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19644
19645         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
19646         convention.  Text proposed by Bruno Haible.
19647         (struct argp_option): Document the use of N_() wrappers.
19648
19649         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
19650         '\v', and translate the two parts separately, instead of feeding
19651         the whole string to gettext.  This allows to exclude
19652         '\v' from the strings visible to the translator by writing doc
19653         strings as N_("..") "\v" N_("..").
19654
19655 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19656
19657         * config/srclist.txt: Undo latest change; the bug was fixed.
19658
19659 2006-09-09  Bruno Haible  <bruno@clisp.org>
19660
19661         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
19662         assignments if building a library without libtool.
19663         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
19664         in func_emit_lib_Makefile_am.
19665         (func_import): When building a static library libfoo.a, arrange to
19666         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
19667         (func_create_testdir): Likewise.
19668         * modules/gc (configure.ac, Makefile.am): If building statically,
19669         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
19670         * modules/iconvme (configure.ac, Makefile.am): Likewise.
19671         * modules/striconv (configure.ac, Makefile.am): Likewise.
19672         Based on a suggestion by Ralf Wildenhues.
19673
19674 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19675
19676         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
19677         Check for unistd.h too, since Autoconf doesn't assume POSIX.
19678         Also:
19679
19680         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19681         Add year_2050_test to catch glibc bug 2821
19682         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
19683
19684         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19685         Prefer #ifdef to #if.
19686
19687         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
19688         Return from 'main' instead of calling 'exit'.
19689
19690 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19691
19692         * lib/mktime.c (guess_time_tm): Fix bug where mktime
19693         returned the maximum time_t value rather than (time_t) -1.
19694         Problem originally reported by William Bardwell
19695         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
19696
19697         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
19698         Moved to here ...
19699         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
19700         ... from here.
19701
19702 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19703
19704         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
19705         2821 is fixed.
19706
19707 2006-09-08  Jim Meyering  <jim@meyering.net>
19708
19709         Don't make generated files read-only.  That would bother too many
19710         people.  However, do retain the ability to work when targets are
19711         read-only: remove the destination and temporary files before writing
19712         them (when generated via sed or echo), or by using the -f option for
19713         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
19714         * modules/alloca-opt, modules/argz, modules/arpa_inet:
19715         * modules/byteswap, modules/configmake, modules/fcntl:
19716         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
19717         * modules/localcharset, modules/netinet_in, modules/poll:
19718         * modules/stdbool, modules/stdint, modules/sys_select:
19719         * modules/sys_socket, modules/sys_stat, modules/sysexits:
19720
19721 2006-09-08  Jim Meyering  <jim@meyering.net>
19722
19723         Avoid new build failure on FreeBSD 6.0.
19724         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
19725         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
19726         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
19727
19728 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19729
19730         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
19731
19732 2006-09-07  Jim Meyering  <jim@meyering.net>
19733
19734         Fix global typo in last change: use chmod u-w, not chmod u-x.
19735         Spotted by Paul Eggert and Bruce Korb.
19736         * modules/alloca-opt, modules/argz, modules/arpa_inet:
19737         * modules/byteswap, modules/configmake, modules/fcntl:
19738         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
19739         * modules/localcharset, modules/netinet_in, modules/poll:
19740         * modules/stdbool, modules/stdint, modules/sys_select:
19741         * modules/sys_socket, modules/sys_stat, modules/sysexits:
19742
19743 2006-09-06  Jim Meyering  <jim@meyering.net>
19744
19745         Make generated files be read-only.
19746         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
19747         Ensure that each generated file is now read-only.
19748         * modules/argz: Likewise.
19749         * modules/arpa_inet: Likewise.
19750         * modules/byteswap: Likewise.
19751         * modules/configmake: Likewise.
19752         * modules/fcntl: Likewise.
19753         * modules/fnmatch: Likewise.
19754         * modules/getopt: Likewise.
19755         * modules/glob: Likewise.
19756         * modules/inttypes: Likewise.
19757         * modules/netinet_in: Likewise.
19758         * modules/poll: Likewise.
19759         * modules/stdbool: Likewise.
19760         * modules/stdint: Likewise.
19761         * modules/sys_select: Likewise.
19762         * modules/sys_socket: Likewise.
19763         * modules/sys_stat: Likewise.
19764         * modules/sysexits: Likewise.
19765         * modules/localcharset: Same as above, but continue using temporary
19766         file named "t-$@" (why different?) rather than the "$@-t" used
19767         everywhere else.
19768
19769         * modules/sysexits (Makefile.am): Replace literal occurrences
19770         of "sysexit.h" more readable, and more consistent, "$@".
19771
19772 2006-09-06  Bruno Haible  <bruno@clisp.org>
19773
19774         * modules/striconv: New file.
19775         * modules/xstriconv: New file.
19776         * MODULES.html.sh (Internationalization functions): Add striconv,
19777         xstriconv.
19778
19779 2006-09-06  Bruno Haible  <bruno@clisp.org>
19780
19781         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
19782         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
19783         not using libtool correctly.
19784
19785 2006-09-06  Bruno Haible  <bruno@clisp.org>
19786
19787         * lib/striconv.h: New file.
19788         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
19789         iconvstring.c.
19790         * lib/xstriconv.h: New file.
19791         * lib/xstriconv.c: New file.
19792
19793 2006-09-06  Bruno Haible  <bruno@clisp.org>
19794
19795         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
19796         lib_..._LDFLAGS.
19797
19798 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19799
19800         * lib/argz_.h: Sync from Libtool.
19801
19802         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
19803                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19804
19805         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
19806
19807 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
19808
19809         * modules/trim: New file.
19810
19811 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
19812
19813         * lib/trim.h: New file.
19814         * lib/trim.c: New file.
19815
19816 2006-09-05  Bruno Haible  <bruno@clisp.org>
19817
19818         * MODULES.html.sh (String handling): Add trim.
19819
19820 2006-09-04  Karl Berry  <karl@gnu.org>
19821
19822         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
19823         until next release.
19824
19825 2006-09-03  Bruno Haible  <bruno@clisp.org>
19826
19827         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
19828         correctly.
19829
19830 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19831
19832         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
19833         not gl_GETLOADAVG.  Omit unneeded semicolons.
19834         Problems reported by Ralf Wildenhues in
19835         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
19836         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
19837         at the end, which is the usual gnulib style.
19838
19839         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
19840         of doing all the work ourselves.
19841         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
19842         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
19843
19844 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19845
19846         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
19847         Problem reported by Ralf Wildenhues in
19848         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
19849
19850         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
19851         HAVE_STRUCT_STATFS_F_FSTYPENAME.
19852
19853 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19854
19855         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
19856         yesterday's patch by changing test -n to test -z.
19857
19858 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19859
19860         * modules/getloadavg (Files): Add m4/getloadavg.m4.
19861         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
19862         the former is now obsolescent.
19863
19864         * modules/chdir-long (Depends-on): Add fcntl.
19865
19866 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19867
19868         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
19869         obsolescent, and programs should use gnulib instead.
19870         * m4/getloadavg.m4: New file, with contents taken from Autoconf
19871         but with prefixes changed.
19872
19873 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19874
19875         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
19876         or stdbool.h, because they might not exist while configuring.
19877
19878         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
19879         Don't include unistd.h or limits.h; not needed, since chdir-long.h
19880         does that for us.
19881         (O_DIRECTORY): Remove.
19882
19883 2006-08-31  Eric Blake  <ebb9@byu.net>
19884
19885         * gnulib-tool: Don't let emacs change spaces to TAB.
19886
19887 2006-08-31  Bruno Haible  <bruno@clisp.org>
19888
19889         * gnulib-tool: When calling func_import more than once, do it in a
19890         subshell.
19891         Reported by Eric Blake <ebb9@byu.net>.
19892
19893 2006-08-31  Bruno Haible  <bruno@clisp.org>
19894
19895         * gnulib-tool (nl): Remove variable.
19896         (sed_transform_lib_file): Use more robust test for config-h module.
19897         (func_import): Fix typo in 2006-08-25 patch.
19898
19899 2006-08-31  Bruno Haible  <bruno@clisp.org>
19900
19901         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
19902         specified, augment Makefile.am variables instead of assigning them.
19903
19904 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19905
19906         Work around a bug in both the Linux and SunOS 64-bit kernels:
19907         nanosleep mishandles sleeps for longer than 2**31 seconds.
19908         Problem reported by Frank v Waveren in
19909         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
19910         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
19911         Check for nanosleep bug.
19912         (LIB_NANOSLEEP): Append clock_gettime library if needed.
19913
19914 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19915
19916         Work around a bug in both the Linux and SunOS 64-bit kernels:
19917         nanosleep mishandles sleeps for longer than 2**31 seconds.
19918         Problem reported by Frank v Waveren in
19919         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
19920         * lib/nanosleep.c (BILLION): New constant.
19921         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
19922         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
19923         implementation.
19924
19925 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19926
19927         * modules/nanosleep (Depends-on): Add gettime.
19928
19929 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
19930         and Simon Josefsson  <jas@extundo.com>
19931         and Oskar Liljeblad  <oskar@osk.mine.nu>
19932
19933         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
19934         * gnulib-tool (func_import): New license type 'unmodifiable license
19935         text'.
19936         * modules/fdl: Use it.  Longer description.
19937         * module/gpl, module/lgpl: New files.
19938
19939 2006-08-30  Jim Meyering  <jim@meyering.net>
19940
19941         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
19942         shadowing the parameter.
19943
19944 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19945
19946         Sync from Libtool:
19947
19948         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19949
19950         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
19951         sharing with gnulib.  Report by Eric Blake.
19952
19953 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19954
19955         * modules/isapipe: New file.
19956         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
19957
19958 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19959
19960         * modules/configmake (Makefile.am): Add a comment, and omit
19961         the CONFIGMAKE_ prefix from generated macro names.  Suggested
19962         by Bruno Haible.
19963
19964 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19965
19966         * m4/isapipe.m4: New file.
19967
19968 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
19969
19970         * lib/isapipe.c, lib/isapipe.h: New files.
19971
19972 2006-08-29  Jim Meyering  <jim@meyering.net>
19973
19974         * modules/configmake (Makefile.am): Make configmake.h depend on
19975         Makefile.  Otherwise, a stale configmake.h could hang around.
19976
19977 2006-08-29  Eric Blake  <ebb9@byu.net>
19978
19979         * lib/error.c (error_at_line, print_errno_message): Match libc, after
19980         resolution of upstream bug 3044.
19981
19982 2006-08-29  Bruno Haible  <bruno@clisp.org>
19983
19984         * modules/localcharset (Depends-on): Add configmake.
19985         (Makefile.am): Remove setting of LIBDIR through DEFS.
19986
19987 2006-08-29  Bruno Haible  <bruno@clisp.org>
19988
19989         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
19990         defined.
19991
19992 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
19993
19994         * modules/fcntl: New file.
19995         * modules/chdir-safer (Depends-on): Add fcntl.
19996         * modules/fts: Likewise.
19997         * modules/mkdir-p: Likewise.
19998
19999         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
20000         This undoes the most recent change, since we're now addressing the
20001         problem in a different way.
20002
20003         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
20004         into output, since the output might be called Makefile.am even
20005         if $makefile_name is something different.
20006         (func_import): Use $makefile_am rather than
20007         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
20008         empty.
20009
20010         * modules/inttypes (Files): Add m4/inttypes-h.m4.
20011
20012 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20013
20014         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
20015         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
20016         recent change to stdint.m4, since we're now addressing the problem in a
20017         different way.
20018
20019 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20020
20021         * m4/fcntl_h.m4: New file.
20022
20023 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20024
20025         * lib/fcntl_.h: New file.
20026         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
20027         the fcntl module.
20028         * lib/dirchownmod.c: Likewise.
20029         * lib/fts.c: Likewise.
20030
20031         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
20032         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
20033         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
20034         just before including <inttypes.h>, to avoid circular inclusion.
20035
20036 2006-08-28  Jim Meyering  <jim@meyering.net>
20037
20038         * doc/visibility.texi: Actually read and correct the grammar of the
20039         sentence affected by yesterday's change.
20040
20041 2006-08-28  Eric Blake  <ebb9@byu.net>
20042
20043         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
20044         needs wrapper.
20045
20046 2006-08-28  Eric Blake  <ebb9@byu.net>
20047
20048         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
20049
20050 2006-08-28  Eric Blake  <ebb9@byu.net>
20051
20052         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
20053
20054 2006-08-28  Bruno Haible  <bruno@clisp.org>
20055
20056         * modules/c-strstr: New file, from GNU gettext.
20057         * MODULES.html.sh (String handling): Add c-strstr.
20058
20059 2006-08-28  Bruno Haible  <bruno@clisp.org>
20060
20061         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
20062         macros.
20063         Reported by Eric Blake.
20064
20065 2006-08-28  Bruno Haible  <bruno@clisp.org>
20066
20067         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
20068         (VASNPRINTF): Return a string of length > INT_MAX without failing.
20069         * lib/vasprintf.c: Include errno.h, limits.h.
20070         (EOVERFLOW): New fallback definition.
20071         (vasprintf): Test here whether the string length is > INT_MAX.
20072         * lib/vsnprintf.c: Include errno.h, limits.h.
20073         (EOVERFLOW): New fallback definition.
20074         (vsnprintf): Fix bug when generated string was too long for the buffer.
20075         Test here whether the string length is > INT_MAX.
20076
20077 2006-08-28  Bruno Haible  <bruno@clisp.org>
20078
20079         * lib/inttypes_.h (SCNX*): Remove definitions.
20080         Reported by Eric Blake.
20081
20082 2006-08-28  Bruno Haible  <bruno@clisp.org>
20083
20084         * lib/c-strstr.h: New file, from GNU gettext.
20085         * lib/c-strstr.c: New file, from GNU gettext.
20086
20087 2006-08-28  Bruno Haible  <bruno@clisp.org>
20088
20089         * gnulib-tool: Reorder some statements.
20090
20091 2006-08-28  Bruno Haible  <bruno@clisp.org>
20092
20093         * gnulib-tool: New option --makefile-name.
20094         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
20095         $makefile_name.
20096         (func_import): Write $makefile_name to the cache file, and read it from
20097         there unless explicitly specified. Use $makefile_name as file name
20098         instead of Makefile.am. Adjust the recommendations accordingly.
20099
20100 2006-08-28  Bruno Haible  <bruno@clisp.org>
20101
20102         * gnulib-tool (func_verify_module): Check against misapplying patch.
20103
20104 2006-08-28  Bruno Haible  <bruno@clisp.org>
20105
20106         * gnulib-tool (func_relativize, func_relconcat): New functions.
20107         Give an error if --local-dir is given with --update.
20108         Remove trailing slashes from $local_gnulib_dir.
20109         (func_import): Store the relativized $local_gnulib_dir in
20110         gnulib-cache.m4, and read it from there if not specified explicitly.
20111
20112 2006-08-28  Bruno Haible  <bruno@clisp.org>
20113
20114         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
20115         is the current directory. Respect also $local_gnulib_dir.
20116
20117 2006-08-28  Bruno Haible  <bruno@clisp.org>
20118             Simon Josefsson  <jas@extundo.com>
20119
20120         BeOS portability.
20121         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
20122
20123 2006-08-27  Jim Meyering  <jim@meyering.net>
20124
20125         * doc/visibility.texi: Remove duplicate word: "pointer".
20126
20127 2006-08-26  Bruno Haible  <bruno@clisp.org>
20128
20129         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
20130         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
20131         (Makefile.am): Create inttypes.h from inttypes_.h.
20132         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
20133
20134         * modules/imaxabs: New file.
20135
20136         * modules/imaxdiv: New file.
20137
20138 2006-08-26  Bruno Haible  <bruno@clisp.org>
20139
20140         * m4/inttypes.m4: New file.
20141         * m4/_inttypes_h.m4: Remove file.
20142         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
20143         PRI_MACROS_BROKEN.
20144         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
20145
20146         * m4/imaxabs.m4: New file.
20147
20148         * m4/imaxdiv.m4: New file.
20149
20150 2006-08-26  Bruno Haible  <bruno@clisp.org>
20151
20152         * lib/inttypes_.h: New file.
20153         * lib/inttypes.h: Remove file.
20154         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
20155
20156         * lib/imaxabs.c: New file.
20157
20158         * lib/imaxdiv.c: New file.
20159
20160 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20161
20162         New config-h module, so that "make" output needn't be cluttered
20163         by -DHAVE_CONFIG_H.
20164         * MODULES.html.sh (Support for building libraries and executables):
20165         Add config-h.
20166         * modules/config-h: New file.
20167         * gnulib-tool (nl, sed_transform_lib_file): New vars.
20168         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
20169         the config-h module is used.
20170
20171         New configmake module, so that "make" output needn't be cluttered
20172         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
20173         * MODULES.html.sh (Support for building libraries and executables):
20174         Add configmake.
20175         * modules/configmake: New file.
20176
20177 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20178
20179         * m4/config-h.m4: New file.
20180
20181 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20182
20183         * config/srclist.txt: Add elisp-comp.
20184
20185 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20186
20187         * MODULES.html.sh (Support for building libraries and executables):
20188         Add elisp-comp.
20189         * build-aux/elisp-comp: New file.
20190         * modules/elisp-comp: New file.
20191
20192 2006-08-24  Bruno Haible  <bruno@clisp.org>
20193
20194         * gnulib-tool (func_create_testdir): Use non-default values of
20195         sourcebase and m4base.
20196
20197 2006-08-24  Bruno Haible  <bruno@clisp.org>
20198
20199         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
20200         HTML structure.
20201
20202 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20203
20204         * modules/openat (Depends-on): Add lchown.
20205
20206 2006-08-23  Bruno Haible  <bruno@clisp.org>
20207
20208         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
20209         of gl_LOCK_EARLY instead of gl_LOCK.
20210
20211 2006-08-23  Bruno Haible  <bruno@clisp.org>
20212
20213         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
20214         on OSF/1 to no.
20215         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
20216
20217 2006-08-23  Bruno Haible  <bruno@clisp.org>
20218
20219         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
20220         as unusable.
20221
20222         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
20223         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
20224         (gl_LOCK): New macro.
20225
20226 2006-08-22  Simon Josefsson  <jas@extundo.com>
20227
20228         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
20229         to md5 module.
20230
20231 2006-08-22  Simon Josefsson  <jas@extundo.com>
20232
20233         * MODULES.html.sh: Add "Support for maintaining and release
20234         projects".
20235
20236         * build-aux/gnupload: New file, from coreutils.
20237
20238 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20239
20240         Avoid the need for AC_LIBSOURCES in m4 macros.
20241         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
20242         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
20243         * modules/check-version (EXTRA_DIST): Add check-version.h.
20244         * modules/crc (EXTRA_DIST): Add crc.h.
20245         * modules/des (EXTRA_DIST): Add des.h.
20246         * modules/gc (EXTRA_DIST): Add gc.h.
20247         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
20248         * modules/getline (EXTRA_DIST): Add getline.h.
20249         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
20250         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
20251         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
20252         * modules/md2 (EXTRA_DIST): Add md2.h.
20253         * modules/md4 (EXTRA_DIST): Add md4.h.
20254         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
20255         * modules/read-file (EXTRA_DIST): Add read-file.h.
20256         * modules/readline (EXTRA_DIST): Add readline.h.
20257         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
20258         rijndael-api-fst.h.
20259
20260 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20261
20262         * m4/rijndael.m4 (gl_ARCFOUR):
20263         * m4/arctwo.m4 (gl_ARCTWO):
20264         * m4/check-version.m4 (gl_CHECK_VERSION):
20265         * m4/crc.m4 (gl_CRC):
20266         * m4/des.m4 (gl_DES):
20267         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
20268         * m4/gc.m4 (gl_GC):
20269         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
20270         * m4/getline.m4 (gl_FUNC_GETLINE):
20271         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
20272         * m4/hmac-md5.m4 (gl_HMAC_MD5):
20273         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
20274         * m4/md2.m4 (gl_MD2):
20275         * m4/md4.m4 (gl_MD4):
20276         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
20277         * m4/read-file.m4 (gl_FUNC_READ_FILE):
20278         * m4/readline.m4 (gl_FUNC_READLINE):
20279         * m4/rijndael.m4 (gl_RIJNDAEL):
20280         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
20281         to get the necessary .h files and whatnot.
20282
20283 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
20284
20285         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
20286         gnulib rather than the other way around.
20287         * config/srclistvars.sh (COREUTILS): Remove.
20288
20289 2006-08-22  Jim Meyering  <jim@meyering.net>
20290
20291         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
20292
20293         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
20294
20295 2006-08-22  Eric Blake  <ebb9@byu.net>
20296
20297         * modules/regexprops-generic: New file.
20298         * MODULES.html.sh (Support for building documentation): List it.
20299
20300 2006-08-22  Eric Blake  <ebb9@byu.net>
20301
20302         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
20303         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
20304         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
20305         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
20306
20307 2006-08-22  Bruno Haible  <bruno@clisp.org>
20308
20309         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
20310         and lib_LTLIBRARIES like the other lib_* variables.
20311
20312 2006-08-22  Bruno Haible  <bruno@clisp.org>
20313
20314         * build-aux/x-to-1.in: New file, from GNU gettext.
20315
20316 2006-08-22  Bruno Haible  <bruno@clisp.org>
20317
20318         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
20319         <utmpx.h> exists.
20320
20321 2006-08-22  Bruno Haible  <bruno@clisp.org>
20322
20323         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
20324         <utmpx.h> exists.
20325
20326 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20327
20328         BeOS portability.
20329         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
20330         exist.
20331         Problem reported by Bruno Haible.
20332
20333 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20334
20335         Avoid the need for AC_LIBSOURCES in m4 macros.
20336         * modules/acl (EXTRA_DIST): Add acl.h.
20337         * modules/argmatch (Files): Add m4/argmatch.m4.
20338         (configure.ac): Add gl_ARGMATCH.
20339         (EXTRA_DIST): Renamed from lib_SOURCES, for
20340         consistency with the other modules.  Remove argmatch.c.
20341         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
20342         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
20343         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
20344         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
20345         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
20346         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
20347         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
20348         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
20349         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
20350         * modules/closeout (EXTRA_DIST): Add closeout.h.
20351         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
20352         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
20353         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
20354         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
20355         dirname.h; remove basename.c and stripslash.c.
20356         * modules/exclude (EXTRA_DIST): Add exclude.h.
20357         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
20358         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
20359         * modules/file-type (EXTRA_DIST): Add file-type.h.
20360         * modules/filemode (EXTRA_DIST): Add filemode.h.
20361         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
20362         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
20363         * modules/fpending (EXTRA_DIST): Add __fpending.h.
20364         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
20365         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
20366         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
20367         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
20368         * modules/getdate (EXTRA_DIST): Add getdate.c.
20369         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
20370         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
20371         * modules/getpass (EXTRA_DIST): Add getpass.h.
20372         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
20373         * modules/group-member (EXTRA_DIST): Add group-member.h.
20374         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
20375         * modules/hash (EXTRA_DIST): Add hash.h.
20376         * modules/human (EXTRA_DIST): Add human.h.
20377         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
20378         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
20379         * modules/lchown (EXTRA_DIST): Add lchown.h.
20380         * modules/long-options (EXTRA_DIST): Add long-options.h.
20381         * modules/lstat (EXTRA_DIST): Add lstat.h.
20382         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
20383         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
20384         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
20385         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
20386         * modules/memxor (EXTRA_DIST): Add memxor.h.
20387         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
20388         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
20389         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
20390         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
20391         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
20392         * modules/physmem (EXTRA_DIST): Add physmem.h.
20393         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
20394         * modules/posixver (EXTRA_DIST): Add posixver.h.
20395         * modules/quote (EXTRA_DIST): Add quote.h.
20396         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
20397         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
20398         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
20399         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
20400         regex_internal.h regexec.c.
20401         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
20402         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
20403         * modules/same (EXTRA_DIST): Add same.h.
20404         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
20405         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
20406         * modules/savedir (EXTRA_DIST): Add savedir.h.
20407         * modules/sha1 (EXTRA_DIST): Add sha1.h.
20408         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
20409         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
20410         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
20411         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
20412         * modules/strdup (EXTRA_DIST): Add strdup.h.
20413         * modules/strftime (EXTRA_DIST): Add strftime.h.
20414         * modules/strndup (EXTRA_DIST): Add strndup.h.
20415         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
20416         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
20417         * modules/time_r (EXTRA_DIST): Add time_r.h.
20418         * modules/timespec (EXTRA_DIST): Add timespec.h.
20419         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
20420         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
20421         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
20422         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
20423         * modules/userspec (EXTRA_DIST): Add userspec.h.
20424         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
20425         * modules/utimens (EXTRA_DIST): Add utimens.h.
20426         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
20427         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
20428         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
20429         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
20430         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
20431         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
20432         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
20433         * modules/yesno (EXTRA_DIST): Add yesno.h.
20434
20435 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
20436
20437         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
20438
20439         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
20440         * m4/dev-ino.m4, same-inode.m4: Remove.
20441
20442         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
20443         * m4/acl.m4 (AC_FUNC_ACL):
20444         * m4/backupfile.m4 (gl_BACKUPFILE):
20445         * m4/c-strtod.m4 (gl_C99_STRTOLD):
20446         * m4/canon-host.m4 (gl_CANON_HOST):
20447         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
20448         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
20449         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
20450         * m4/cloexec.m4 (gl_CLOEXEC):
20451         * m4/close-stream.m4 (gl_CLOSE_STREAM):
20452         * m4/closeout.m4 (gl_CLOSEOUT):
20453         * m4/dirfd.m4 (gl_FUNC_DIRFD):
20454         * m4/dirname.m4 (gl_DIRNAME):
20455         * m4/exclude.m4 (gl_EXCLUDE):
20456         * m4/exitfail.m4 (gl_EXITFAIL):
20457         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
20458         * m4/file-type.m4 (gl_FILE_TYPE):
20459         * m4/filemode.m4 (gl_FILEMODE):
20460         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
20461         * m4/fpending.m4 (gl_FUNC_FPENDING):
20462         * m4/fprintftime.m4 (gl_FPRINTFTIME):
20463         * m4/fts.m4 (gl_FUNC_FTS):
20464         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
20465         * m4/getdate.m4 (gl_GETDATE):
20466         * m4/gethrxtime.m4 (gl_GETHRXTIME):
20467         * m4/getpagesize.m4 (gl_GETPAGESIZE):
20468         * m4/getpass.m4 (gl_FUNC_GETPASS):
20469         * m4/gettime.m4 (gl_GETTIME):
20470         * m4/getugroups.m4 (gl_GETUGROUPS):
20471         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
20472         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
20473         * m4/hard-locale.m4 (gl_HARD_LOCALE):
20474         * m4/hash.m4 (gl_HASH):
20475         * m4/idcache.m4 (gl_IDCACHE):
20476         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
20477         * m4/lchown.m4 (gl_FUNC_LCHOWN):
20478         * m4/long-options.m4 (gl_LONG_OPTIONS):
20479         * m4/lstat.m4 (gl_FUNC_LSTAT):
20480         * m4/md5.m4 (gl_MD5):
20481         * m4/memcasecmp.m4 (gl_MEMCASECMP):
20482         * m4/memcoll.m4 (gl_MEMCOLL):
20483         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
20484         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
20485         * m4/memxor.m4 (gl_MEMXOR):
20486         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
20487         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
20488         * m4/modechange.m4 (gl_MODECHANGE):
20489         * m4/mountlist.m4 (gl_MOUNTLIST):
20490         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
20491         * m4/openat.m4 (gl_FUNC_OPENAT):
20492         * m4/pathmax.m4 (gl_PATHMAX):
20493         * m4/physmem.m4 (gl_PHYSMEM):
20494         * m4/posixtm.m4 (gl_POSIXTM):
20495         * m4/posixver.m4 (gl_POSIXVER):
20496         * m4/quote.m4 (gl_QUOTE):
20497         * m4/quotearg.m4 (gl_QUOTEARG):
20498         * m4/readtokens.m4 (gl_READTOKENS):
20499         * m4/readutmp.m4 (gl_READUTMP):
20500         * m4/regex.m4 (gl_REGEX):
20501         * m4/safe-read.m4 (gl_SAFE_READ):
20502         * m4/safe-write.m4 (gl_SAFE_WRITE):
20503         * m4/same.m4 (gl_SAME):
20504         * m4/save-cwd.m4 (gl_SAVE_CWD):
20505         * m4/savedir.m4 (gl_SAVEDIR):
20506         * m4/settime.m4 (gl_SETTIME):
20507         * m4/sha1.m4 (gl_SHA1):
20508         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
20509         * m4/stat-macros.m4 (gl_STAT_MACROS):
20510         * m4/stat-time.m4 (gl_STAT_TIME):
20511         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
20512         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
20513         * m4/strdup.m4 (gl_FUNC_STRDUP):
20514         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
20515         * m4/strndup.m4 (gl_FUNC_STRNDUP):
20516         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
20517         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
20518         * m4/time_r.m4 (gl_TIME_R):
20519         * m4/timespec.m4 (gl_TIMESPEC):
20520         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
20521         * m4/unlinkdir.m4 (gl_UNLINKDIR):
20522         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
20523         * m4/userspec.m4 (gl_USERSPEC):
20524         * m4/utimecmp.m4 (gl_UTIMECMP):
20525         * m4/utimens.m4 (gl_UTIMENS):
20526         * m4/xalloc.m4 (gl_XALLOC):
20527         * m4/xgetcwd.m4 (gl_XGETCWD):
20528         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
20529         * m4/xreadlink.m4 (gl_XREADLINK):
20530         * m4/xstrtod.m4 (gl_XSTRTOD):
20531         * m4/yesno.m4 (gl_YESNO):
20532         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
20533         to get the necessary .h files and whatnot.
20534
20535 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
20536             Bruno Haible  <bruno@clisp.org>
20537
20538         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
20539         /bin/sh understanding of '!' conditional negation.
20540
20541 2006-08-21  Jim Meyering  <jim@meyering.net>
20542
20543         * modules/openat (Depends-on): Really alphabetize.
20544
20545         * modules/acl (Depends-on): Add error and quote.
20546
20547         * check-module (find_included_lib_files): Add at-func.c to the
20548         ok-to-include-more-than-once white list.
20549
20550         * modules/openat (Depends-on): Add lstat.  Alphabetize.
20551
20552 2006-08-21  Bruno Haible  <bruno@clisp.org>
20553
20554         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20555         Emit a pkgdata_DATA variable only if some snippets add contents to it.
20556         Reported by Martin Lambers <marlam@marlam.de>.
20557
20558 2006-08-21  Bruno Haible  <bruno@clisp.org>
20559
20560         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
20561         specify an installation location, don't emit a noinst_LIBRARIES or
20562         noinst_LTLIBRARIES assignment.
20563
20564 2006-08-21  Bruno Haible  <bruno@clisp.org>
20565
20566         BeOS portability.
20567         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
20568         BeOS has mbrtowc() but no <wctype.h>.
20569
20570 2006-08-21  Bruno Haible  <bruno@clisp.org>
20571
20572         BeOS portability.
20573         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
20574         exist.
20575
20576 2006-08-21  Bruno Haible  <bruno@clisp.org>
20577
20578         BeOS portability.
20579         * lib/mbchar.h: Include <wctype.h> only if it exists.
20580
20581 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20582
20583         Remove files that are no longer needed by their respective modules.
20584         * m4/obstack.m4: Remove.
20585         * m4/strerror_r.m4: Remove.
20586         * m4/uint32_t.m4: Remove.
20587         * m4/uintptr_t.m4: Remove.
20588         * m4/ullong_max.m4: Remove.
20589         * m4/xstrtoimax.m4: Remove.
20590         * m4/xstrtoumax.m4: Remove.
20591
20592         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
20593         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
20594         dependencies now capture this.
20595
20596         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
20597         Do not use AC_LIBSOURCES, since gnulib modules now do this.
20598         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
20599         * m4/human.m4 (gl_HUMAN): Likewise.
20600         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
20601         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
20602
20603         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
20604
20605         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
20606         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
20607         stdint.
20608         * m4/human.m4 (gl_HUMAN): Likewise.
20609         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
20610         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
20611         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20612         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20613         * m4/xstrtol (gl_XSTRTOL): Likewise.
20614
20615         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
20616         AC_TYPE_LONG_LONG_INT.
20617         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
20618         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
20619         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
20620         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
20621
20622         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
20623         on stdbool.
20624
20625         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
20626         (gl_PREREQ_XSTRTOUL): Remove.
20627
20628         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
20629
20630         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
20631         mode.
20632
20633 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20634
20635         Add and change modules to make it easier for coreutils to use
20636         gnulib-tool.
20637         * modules/backupfile (Files): Remove m4/d-ino.m4.
20638         (Depends-on): Add d-ino.
20639         * modules/cycle-check (Depends-on): Add stdint.
20640         (lib_SOURCES): Add cycle-check.h.
20641         * modules/d-ino: New module.
20642         * modules/d-type: New module.
20643         * modules/error (Files): Remove m4/strerror_r.m4.
20644         * modules/filemode (Files): Add m4/st_dm_mode.m4.
20645         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
20646         m4/inttypes_h.m4, m4/uintmax_t.m4.
20647         (Depends-on): Add stdint.
20648         (lib_SOURCES): Add fsusage.h.
20649         * modules/getcwd (Files): Remove d-ino.m4.
20650         (Depends-on): Add d-ino.
20651         * modules/getndelim2 (Depends-on): Add stdint.
20652         * modules/glob (Files): Remove m4/d-type.m4.
20653         (Depends-on): Add d-type.
20654         * modules/host-os: New module.
20655         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
20656         m4/inttypes_h.m4, m4/uintmax_t.m4.
20657         * Depends-on: Add stdint.
20658         (lib_SOURCES): Add human.h.
20659         * modules/inttostr (Files): Remove m4/intmax_t.m4,
20660         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
20661         m4/uintmax_t.m4, m4/ulonglong.m4.
20662         (Depends-on): Add stdint.
20663         (EXTRA_DIST): Add inttostr.h.
20664         * modules/lchmod: New module.
20665         * modules/link-follow: New module.
20666         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
20667         (Depends-on): Add lchmod.
20668         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
20669         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
20670         (Depends-on): Add stdint.
20671         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
20672         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
20673         (Depends-on): Add stdint.
20674         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
20675         * modules/perl: New module.
20676         * modules/regex (Depends-on): Add stdint.
20677         * modules/rmdir-errno: New module.
20678         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20679         m4/intmax_t.m4.
20680         (Depends-on): Add stdint.
20681         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
20682         m4/uintmax_t.m4.
20683         (Depends-on): Add stdint.
20684         * modules/unlink-busy: New module.
20685         * modules/utimecmp (Depends-on): Add stdint.
20686         * modules/uptime: New module.
20687         * modules/winsz-ioctl: New module.
20688         * modules/winsz-termios: New module.
20689         * modules/xnanosleep (Depends-on): Add nanosleep.
20690         * modules/ullong_max: Remove.
20691         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
20692         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
20693         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
20694         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
20695         (Depends-on): Add inttypes.
20696         (lib_SOURCES): Add xstrtol.h.
20697         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
20698         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
20699         * MODULES.html.sh: Move 'assert' into the assert section.
20700         Move 'dummy' into the linking section.
20701         Remove ullong_max.
20702         Add section for compatibility checks for POSIX:2001 functions,
20703         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
20704         winsz-ioctl, and winsz-termios into it.
20705         Add lchmod.
20706         Add top-level Misc section and put host-os, perl, and uptime
20707         into it.
20708
20709 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20710
20711         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
20712         now assume the stdint module.  Do not include inttypes.h.
20713         * lib/fsusage.h: Likewise.
20714         * lib/getndelim2.c: Likewise.
20715         * lib/human.h: Likewise.
20716         * lib/inttostr.h: Likewise.
20717         * lib/obstack.c: Likewise.
20718         * lib/regex_internal.h: Likewise.
20719         * lib/tempname.c: Likewise.
20720         * lib/utimecmp.c: Likewise.
20721         * lib/xstrtol.h: Likewise.
20722
20723         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
20724
20725         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
20726         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
20727         * lib/xtime.h: Likewise.
20728
20729 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20730
20731         * modules/openat (Files): Add lib/fchmodat.c.
20732         Fixes problem reported by Jay Youngman.
20733
20734 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20735
20736         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
20737         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
20738
20739 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
20740             Bruno Haible  <bruno@clisp.org>
20741
20742         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
20743         and is a script that invokes bison. Tighten the code. Add comments.
20744
20745 2006-08-18  Jim Meyering  <jim@meyering.net>
20746
20747         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
20748         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
20749         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
20750         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
20751
20752 2006-08-18  Bruno Haible  <bruno@clisp.org>
20753
20754         * modules/bison-i18n: New file.
20755         * MODULES.html.sh (Internationalization functions): Add it.
20756
20757 2006-08-18  Bruno Haible  <bruno@clisp.org>
20758
20759         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
20760         sys/statvfs.h. When getmntinfo was found, check its declaration and
20761         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
20762
20763 2006-08-18  Bruno Haible  <bruno@clisp.org>
20764
20765         * m4/bison-i18n.m4: New file, from bison.
20766
20767 2006-08-18  Bruno Haible  <bruno@clisp.org>
20768
20769         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
20770         (ME_DUMMY): Treat "kernfs" as a dummy.
20771         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
20772
20773 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20774
20775         Update from coreutils.
20776
20777         2006-08-15  Jim Meyering  <jim@meyering.net>
20778
20779         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
20780
20781         2006-01-17  Jim Meyering  <jim@meyering.net>
20782
20783         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
20784
20785         2006-01-11  Jim Meyering  <jim@meyering.net>
20786
20787         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
20788         Check for the lchmod function.
20789
20790 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20791
20792         Update from coreutils.
20793
20794         * lib/__fpending.h: Add copyright notice.
20795         * lib/fprintftime.h: Likewise.
20796         * lib/savedir.c: Use (C) in copyright notice.
20797         * lib/savedir.h: Likewise.
20798
20799         2006-08-15  Jim Meyering  <jim@meyering.net>
20800
20801         * lib/at-func.c: New file, with the logic of all emulated at-functions.
20802         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
20803         in support of the EXPECTED_ERRNO macro.
20804         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
20805         definitions.  Instead, define the appropriate symbols and include
20806         "at-func.c".
20807         * lib/mkdirat.c (mkdirat): Likewise.
20808         * lib/fchmodat.c (fchmodat): Likewise.
20809         (ENOSYS): Remove definition.
20810         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
20811         it.  Don't include "unistd--.h" -- it wasn't ever used.
20812
20813         2006-01-17  Jim Meyering  <jim@meyering.net>
20814
20815         Rewrite fts.c not to change the current working directory,
20816         by using openat, fstatat, fdopendir, etc..
20817
20818         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
20819         (HAVE_OPENAT_SUPPORT): Define.
20820         [_LIBC] (fchdir): Don't undef or define; no longer used.
20821         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
20822         Now, this `function' always succeeds, and consumes its file descriptor
20823         parameter -- so callers must not close such FDs.  Update callers.
20824         (diropen_fd, opendirat, cwd_advance_fd): New functions.
20825         (diropen): Add parameter, SP.  Adjust all callers.
20826         Implement using diropen_fd, rather than open.
20827         (fts_open): Initialize new member, fts_cwd_fd.
20828         Remove fts_rft-setting code.
20829         (fts_close): Close fts_cwd_fd, if necessary.
20830         (__opendir2): Define in terms of opendir or opendirat,
20831         depending on whether the FST_NOCHDIR flag is set.
20832         (fts_build): Since fts_safe_changedir consumes its FD, and since
20833         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
20834         and close the dup'd file descriptor upon failure.
20835         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
20836         (fts_safe_changedir): Tweak semantics to reflect that this function
20837         now calls cwd_advance_fd and hence consumes its FD argument.
20838         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
20839         [struct FTS] (fts_rft): Remove now-unused member.
20840         [struct FTS] (fts_cycle.state): Improve comment.
20841
20842         * lib/openat.c (openat_needs_fchdir): New function.
20843         * lib/openat.h (openat_needs_fchdir): Declare it.
20844
20845 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20846
20847         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
20848         Problem and fix reported by Pádraig Brady in
20849         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
20850
20851 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20852
20853         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
20854
20855 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20856
20857         * lib/memcoll.c (memcoll): Optimize for the common case where the
20858         arguments are bytewise equal.
20859
20860 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20861
20862         * doc/regexprops-generic.texi: Add a copyright notice.
20863
20864 2006-08-15  Bruno Haible  <bruno@clisp.org>
20865
20866         * modules/tmpdir (License): Change to LGPL.
20867
20868 2006-08-15  Bruno Haible  <bruno@clisp.org>
20869
20870         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
20871         module.
20872
20873 2006-08-14  Simon Josefsson  <jas@extundo.com>
20874
20875         * config/srclist.txt: Add gnupload.
20876
20877 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20878
20879         Change copyright notice from LGPL 2 to GPL 2, since that's the
20880         standard form used in the gnulib repository.
20881         * tests/test-lock.c: Likewise.
20882         * tests/test-stdint.c: Likewise.
20883         * tests/test-tls.c: Likewise.
20884
20885         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
20886         prelude-manager.  User shorter URLs for GNU projects, without '?'.
20887         Add copyright notice.
20888
20889         * check-module: Add copyright notice.  Output a copyright
20890         notice if "--version" is specified.
20891         * modules/COPYING: New file.
20892         * tests/test-getaddrinfo.c: Add copyright notice.
20893         * tests/test-verify.c: Likewise.
20894
20895 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20896
20897         Change copyright notice from LGPL 2 to GPL 2, since that's the
20898         standard form used in the gnulib repository.
20899         * lib/lock.c: LGPL -> GPL.
20900         * lib/lock.h: Likewise.
20901         * lib/strnlen1.c: Likewise.
20902         * lib/strnlen1.h: Likewise.
20903         * lib/tls.c: Likewise.
20904         * lib/tls.h: Likewise.
20905         * lib/tmpdir.c: Likewise.
20906
20907         * lib/TODO: Remove; this belongs only in coreutils.
20908
20909 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20910
20911         Add copyright notices to long-enough files that lack them, since
20912         otherwise the files aren't clearly free.  Use the same notice that
20913         getdate.texi already uses.
20914         * doc/alloca-opt.texi: Add copyright notice.
20915         * doc/alloca.texi: Likewise.
20916         * doc/ctime.texi: Likewise.
20917         * doc/functions.texi: Likewise.
20918         * doc/gcd.texi: Likewise.
20919         * doc/gnulib-tool.texi: Likewise.
20920         * doc/inet_ntoa.texi: Likewise.
20921         * doc/visibility.texi: Likewise.
20922
20923         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
20924         * doc/quote.texi: Add copyright notice.
20925
20926         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
20927         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
20928         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
20929         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
20930         is now obsolete, and give a pointer to the Sun list.
20931         Add copyright notice.
20932
20933 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20934
20935         * config/srclistvars.sh: Add copyright notice.
20936
20937 2006-08-14  Eric Blake  <ebb9@byu.net>
20938
20939         Import the following change from libc:
20940
20941         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
20942
20943         Upstream bug 2997.
20944         * lib/misc/error.c: Add space between program name and message if file
20945         name is missing.
20946
20947 2006-08-12  Karl Berry  <karl@gnu.org>
20948
20949         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
20950         remove, these originate in gnulib now.
20951
20952 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20953
20954         * doc/Makefile (standards.info standards.html standards.dvi):
20955         Also depend on make-stds.texi.
20956
20957 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
20958
20959         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
20960         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
20961
20962         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
20963         in wchar_t.  Problem reported by Eric Blake.
20964
20965         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
20966         LEN is smaller than SIZE.  Suggested by Bruno Haible.
20967         Also, help the compiler to keep LEN in a register.
20968
20969 2006-08-11  Eric Blake  <ebb9@byu.net>
20970
20971         * users.txt: Sort.  Add tar.
20972
20973 2006-08-11  Bruno Haible  <bruno@clisp.org>
20974
20975         * users.txt: New file.
20976
20977 2006-08-11  Bruno Haible  <bruno@clisp.org>
20978
20979         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
20980         before <wchar.h>. Needed for OSF/1 and BSD/OS.
20981
20982 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
20983
20984         * modules/snprintf (Depends-on): Remove minmax.
20985         (Maintainer): Add self and Bruno.
20986
20987 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
20988
20989         * lib/.cppi-disable: Add snprintf.h, socket_.h.
20990         * lib/snprintf.c: Include <errno.h> and <limits.h>.
20991         (EOVERFLOW): Define if the system does not.
20992         Do not include "minmax.h"; it wasn't used.
20993         (snprintf): Don't assume size_t promotes to an unsigned type.
20994         Fix bug when generated string was too long for the buffer: the
20995         buffer's contents are supposed to be the initial prefix of the
20996         output.  Don't assume vasnprintf returns EOVERFLOW if the size
20997         exceeds INT_MAX; do the check ourselves.
20998
20999         Import the following changes from libc:
21000
21001         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
21002
21003         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
21004         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
21005         set wc to the byte which couldn't be converted.
21006         (re_string_reconstruct): Don't clear valid_raw_len before calling
21007         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
21008         tip_context using re_string_context_at.
21009
21010         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
21011
21012         * lib/posix/regex.h: g++ still cannot handled [restrict].
21013
21014         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
21015
21016         * lib/posix/regex.h: Remove special handling for VMS.
21017
21018 2006-08-10  Jim Meyering  <jim@meyering.net>
21019
21020         * modules/same-inode: New module.
21021         * modules/dev-ino: New module.
21022         * modules/cycle-check: Depend on these modules, rather than simply
21023         including their .h files.
21024         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
21025         required via m4/cycle-check.m4.
21026         * modules/same: Depend on new same-inode module, rather than
21027         including same-inode.h.
21028         * modules/chdir-safer: New file.
21029
21030         * modules/chown (Depends-on): Add stat-macros.
21031
21032 2006-08-10  Jim Meyering  <jim@meyering.net>
21033
21034         * m4/cycle-check.m4: New file.
21035         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
21036         * m4/dev-ino.m4, m4/same-inode.m4: New files.
21037
21038 2006-08-10  Eric Blake  <ebb9@byu.net>
21039
21040         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
21041         in from original proposal.
21042
21043 2006-08-10  Eric Blake  <ebb9@byu.net>
21044         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21045
21046         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
21047         namespace.
21048
21049 2006-08-10  Bruno Haible  <bruno@clisp.org>
21050
21051         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
21052         as well.
21053
21054 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21055
21056         Sync from coreutils.
21057
21058         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
21059
21060         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
21061         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
21062
21063 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21064
21065         * modules/restrict: Remove; no longer needed now that we assume
21066         Autoconf 2.59 or later.
21067         * MODULES.html.sh: Remove 'restrict'.
21068         * modules/argp (Depends-on): Remove 'restrict'.
21069         * modules/base64 (Depends-on): Likewise.
21070         * modules/gc (Depends-on): Likewise.
21071         * modules/getaddrinfo (Depends-on): Likewise.
21072         * modules/glob (Depends-on): Likewise.
21073         * modules/inet_ntop (Depends-on): Likewise.
21074         * modules/inet_pton (Depends-on): Likewise.
21075         * modules/memxor (Depends-on): Likewise.
21076         * modules/regex (Depends-on): Likewise.
21077         * modules/strtok_r (Depends-on): Likewise.
21078         * modules/time_r (Depends-on): Likewise.
21079
21080 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21081
21082         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
21083         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
21084         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21085         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
21086         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
21087         * m4/memxor.m4 (gl_MEMXOR): Likewise.
21088         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
21089         gl_C_RESTRICT replaced by AC_C_RESTRICT.
21090
21091         Merge from coreutils.
21092         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
21093         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
21094         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
21095         * m4/time_r.m4 (gl_TIME_R): Likewise.
21096
21097 2006-08-09  Karl Berry  <karl@gnu.org>
21098
21099         * config/srclist.txt: no more gettext-tools, per Bruno.
21100
21101 2006-08-08  Eric Blake  <ebb9@byu.net>
21102
21103         * modules/verror: New module.
21104         * MODULES.html.sh: Document it.
21105
21106 2006-08-08  Eric Blake  <ebb9@byu.net>
21107
21108         * lib/verror.h, lib/verror.c: New files.
21109
21110 2006-08-08  Eric Blake  <ebb9@byu.net>
21111
21112         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
21113         verror_at_line output complies with GNU Coding Standards even when
21114         file is NULL.
21115
21116 2006-08-07  Bruno Haible  <bruno@clisp.org>
21117
21118         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
21119         versions of AIX.
21120         Reported by Ralf Wildenhues.
21121
21122 2006-08-07  Bruno Haible  <bruno@clisp.org>
21123
21124         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
21125         in an AC_DEFUN. Needed so that the autoconf snippets can use
21126         AC_REQUIRE.
21127
21128 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21129
21130         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21131         Initialize pkgdata_DATA.
21132         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
21133         overriding it.
21134
21135 2006-08-06  Eric Blake  <ebb9@byu.net>
21136
21137         * lib/error.h: Fold in some upstream changes from glibc.
21138         * lib/error.c: Likewise.
21139
21140 2006-08-04  Bruno Haible  <bruno@clisp.org>
21141
21142         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21143         Make the mostlyclean-local rule depend on mostlyclean-generic.
21144         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
21145
21146 2006-07-31  Bruno Haible  <bruno@clisp.org>
21147
21148         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
21149         <stdlib.h>, <string.h>.
21150
21151 2006-07-30  Bruno Haible  <bruno@clisp.org>
21152
21153         * modules/readlink (License): Change to LGPL.
21154
21155 2006-07-30  Bruno Haible  <bruno@clisp.org>
21156
21157         * modules/javaversion (Makefile.am): Distribute javaversion.java and
21158         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
21159         set PKGDATADIR to point to it.
21160
21161 2006-07-30  Bruno Haible  <bruno@clisp.org>
21162
21163         * modules/csharpexec (configure.ac): Comment out macro invocation.
21164         * modules/javaexec (configure.ac): Likewise.
21165         * modules/javacomp-script (configure.ac): Likewise.
21166
21167         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
21168
21169 2006-07-30  Bruno Haible  <bruno@clisp.org>
21170
21171         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
21172         linked-list.
21173
21174 2006-07-30  Bruno Haible  <bruno@clisp.org>
21175
21176         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
21177
21178 2006-07-30  Bruno Haible  <bruno@clisp.org>
21179
21180         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21181         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
21182         get removed.
21183
21184 2006-07-29  Bruno Haible  <bruno@clisp.org>
21185
21186         Make it possible for gnulib-tool to work with locally modified or
21187         augmented gnulib repositories.
21188         * gnulib-tool (func_usage): Document --local-dir option.
21189         (local_gnulib_dir): New variable.
21190         Handle --local-dir option.
21191         (func_lookup_file): New function.
21192         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
21193         (func_get_description, func_get_filelist, func_get_description,
21194         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
21195         func_get_automake_snippet, func_get_include_directive,
21196         func_get_license, func_get_maintainer): Use func_lookup_file.
21197         (func_import, func_create_testdir): Use func_lookup_file.
21198
21199 2006-07-29  Bruno Haible  <bruno@clisp.org>
21200
21201         * modules/setenv (Depends-on): Add unistd.
21202
21203 2006-07-29  Bruno Haible  <bruno@clisp.org>
21204
21205         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
21206
21207 2006-07-29  Bruno Haible  <bruno@clisp.org>
21208
21209         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
21210
21211 2006-07-29  Bruno Haible  <bruno@clisp.org>
21212
21213         * gnulib-tool (import, update): If there is no Makefile.am, look at
21214         aclocal.m4, instead of bailing out.
21215
21216 2006-07-29  Bruno Haible  <bruno@clisp.org>
21217
21218         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
21219         Categorize the options by when they are useful.
21220
21221 2006-07-29  Bruno Haible  <bruno@clisp.org>
21222
21223         * gnulib-tool (func_usage): Document option --no-libtool.
21224         Handle option --no-libtool.
21225         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
21226         for changed semantics of $libtool variable.
21227         (func_import): Likewise. If libtool is not used, show this through
21228         an option --no-libtool.
21229         (func_create_testdir): Update.
21230
21231 2006-07-29  Bruno Haible  <bruno@clisp.org>
21232
21233         * gnulib-tool (func_import): Extend error message about missing
21234         --doc-base.
21235
21236 2006-07-29  Bruno Haible  <bruno@clisp.org>
21237
21238         * gnulib-tool (func_import): Don't create the $docbase directory if
21239         there is no file to store there.
21240
21241 2006-07-29  Bruno Haible  <bruno@clisp.org>
21242
21243         * gnulib-tool (autoconf_minversion): If a --dir option is given and
21244         relevant, look for configure.ac there, not in the current directory.
21245         Also use a simple search for AC_PREREQ, not "autoconf --trace".
21246
21247 2006-07-29  Bruno Haible  <bruno@clisp.org>
21248
21249         * gnulib-tool (SORT): New variable.
21250         (func_usage): Undocument --assume-autoconf option.
21251         Remove --assume-autoconf option handling.
21252         (autoconf_minversion): Determine from the contents of configure.ac.
21253         (func_import): Remove autoconf_minversion handling.
21254         Suggested by Eric Blake.
21255
21256 2006-07-29  Bruno Haible  <bruno@clisp.org>
21257
21258         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
21259
21260 2006-07-29  Bruno Haible  <bruno@clisp.org>
21261
21262         * config/srclist.txt (*setenv.[ch]): Remove rules.
21263
21264 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21265
21266         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
21267
21268 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21269
21270         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
21271         arpa/inet.h.
21272
21273 2006-07-28  Simon Josefsson  <jas@extundo.com>
21274
21275         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
21276         * modules/inet_pton (Depends-on): Likewise.
21277
21278 2006-07-28  Simon Josefsson  <jas@extundo.com>
21279
21280         * m4/netinet_in_h.m4: New file.
21281
21282 2006-07-28  Simon Josefsson  <jas@extundo.com>
21283
21284         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
21285         #include's.
21286
21287 2006-07-28  Simon Josefsson  <jas@extundo.com>
21288
21289         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
21290         #include's.
21291
21292 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
21293
21294         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
21295         setgid on directories only if they set these bits.
21296         * lib/modechange.h: Remove obsolete comment about masks.
21297
21298 2006-07-28  Eric Blake  <ebb9@byu.net>
21299
21300         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
21301         macro expansion.
21302
21303 2006-07-28  Bruno Haible  <bruno@clisp.org>
21304
21305         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
21306
21307 2006-07-28  Bruno Haible  <bruno@clisp.org>
21308
21309         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
21310
21311 2006-07-28  Bruno Haible  <bruno@clisp.org>
21312
21313         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
21314         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
21315         Define fallbacks.
21316         Avoids link error on FreeBSD 4.x.
21317         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21318
21319         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
21320         encoding.
21321         * lib/mbswidth.c (iswcntrl): Likewise.
21322
21323 2006-07-27  Bruno Haible  <bruno@clisp.org>
21324
21325         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
21326         test.
21327
21328 2006-07-27  Bruno Haible  <bruno@clisp.org>
21329
21330         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
21331         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
21332         defined.
21333
21334 2006-07-26  Eric Blake  <ebb9@byu.net>
21335
21336         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
21337
21338 2006-07-26  Eric Blake  <ebb9@byu.net>
21339
21340         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
21341         like mingw that lack mkstemp.
21342         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
21343         avoid compilation warning on mingw.
21344
21345 2006-07-26  Bruno Haible  <bruno@clisp.org>
21346
21347         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
21348         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
21349         INT_FAST*_MIN, INTPTR_MIN.
21350
21351 2006-07-25  Bruno Haible  <bruno@clisp.org>
21352
21353         * modules/version-etc (Depends-on): Add stdarg.
21354
21355 2006-07-25  Bruno Haible  <bruno@clisp.org>
21356
21357         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
21358         complex commands.
21359
21360 2006-07-25  Bruno Haible  <bruno@clisp.org>
21361
21362         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
21363         defined in <stdarg.h> or config.h.
21364
21365 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
21366
21367         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
21368         (gl_STDIO_SAFER): Remove.
21369
21370 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
21371
21372         * MODULES.html.sh (File stream based Input/Output):
21373         Add fopen-safer, tmpfile-safer; remove stdio-safer.
21374         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
21375         * modules/fopen-safer, modules/tmpfile-safer: New files.
21376         * modules/stdio-safer: Remove.
21377
21378 2006-07-24  Bruno Haible  <bruno@clisp.org>
21379
21380         * modules/tmpdir: New file.
21381         * MODULES.html.sh (File system functions): Add it.
21382
21383 2006-07-24  Bruno Haible  <bruno@clisp.org>
21384
21385         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
21386         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
21387
21388 2006-07-24  Bruno Haible  <bruno@clisp.org>
21389
21390         * modules/clean-temp: New file.
21391
21392 2006-07-24  Bruno Haible  <bruno@clisp.org>
21393
21394         * m4/tmpdir.m4: New file, from GNU gettext.
21395
21396 2006-07-24  Bruno Haible  <bruno@clisp.org>
21397
21398         * lib/tmpdir.h: New file, from GNU gettext.
21399         * lib/tmpdir.c: New file, from GNU gettext.
21400
21401 2006-07-24  Bruno Haible  <bruno@clisp.org>
21402
21403         * lib/clean-temp.h: New file, from GNU gettext.
21404         * lib/clean-temp.c: New file, from GNU gettext.
21405
21406 2006-07-23  Eric Blake  <ebb9@byu.net>
21407
21408         * modules/stdio-safer (Files): Add tmpfile-safer.c.
21409         (Depends-on): Add binary-io.
21410
21411 2006-07-23  Eric Blake  <ebb9@byu.net>
21412
21413         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
21414
21415 2006-07-23  Eric Blake  <ebb9@byu.net>
21416
21417         * lib/tmpfile-safer.c: New file.
21418         * lib/stdio-safer.h (fopen_safer): Add prototype.
21419         * lib/stdio--.h (tmpfile): Make safer.
21420
21421 2006-07-23  Bruno Haible  <bruno@clisp.org>
21422
21423         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
21424         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
21425         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
21426         gl_linked_remove_at): Use it.
21427
21428 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21429         and Simon Josefsson <jas@extundo.com>
21430
21431         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
21432
21433         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
21434
21435 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21436
21437         * modules/close-stream: New file.
21438         * modules/closeout (Description): Make it clear that it exits
21439         with a diagnostic on error.
21440         (Depends-on): Add close-stream.  Remove fpending, stdbool.
21441         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
21442
21443 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21444
21445         * m4/close-stream.m4: New file.
21446
21447 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21448
21449         * lib/close-stream.c, lib/close-stream.h: New files.
21450
21451 2006-07-22  Bruno Haible  <bruno@clisp.org>
21452
21453         Merge from GNU gettext 0.15.
21454
21455         2006-05-01  Bruno Haible  <bruno@clisp.org>
21456
21457                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
21458
21459         2006-07-22  Bruno Haible  <bruno@clisp.org>
21460
21461                 * modules/javaversion: New file.
21462                 * MODULES.html.sh (Java): Add javaversion.
21463
21464         2006-03-12  Bruno Haible  <bruno@clisp.org>
21465
21466                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
21467
21468         2005-12-04  Bruno Haible  <bruno@clisp.org>
21469
21470                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
21471                 (untested).
21472
21473         2006-06-21  Bruno Haible  <bruno@clisp.org>
21474
21475                 Avoid warnings from recent versions of mcs.
21476                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
21477                 -o, -L, -r any more. Use options documented since mcs-1.0
21478                 instead. Similarly for -g.
21479
21480         2005-12-04  Bruno Haible  <bruno@clisp.org>
21481
21482                 * build-aux/csharpcomp.sh.in: Suffix for resources is
21483                 .resources, not .resource.
21484
21485         2005-07-09  Bruno Haible  <bruno@clisp.org>
21486
21487                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
21488                 add a .dll suffix.
21489                 Reported by Mark Junker <mjscod@gmx.de>.
21490
21491         2006-07-22  Bruno Haible  <bruno@clisp.org>
21492
21493                 * modules/gettext: Upgrade to gettext-0.15.
21494                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
21495                 m4/visibility.m4.
21496                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
21497
21498 2006-07-22  Bruno Haible  <bruno@clisp.org>
21499
21500         Merge from GNU gettext 0.15.
21501
21502         2006-03-25  Bruno Haible  <bruno@clisp.org>
21503
21504                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
21505
21506         2006-07-21  Bruno Haible  <bruno@clisp.org>
21507
21508                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
21509                 "1.1".
21510
21511         2006-05-09  Bruno Haible  <bruno@clisp.org>
21512
21513                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
21514                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
21515                 for the conftestver execution.
21516
21517         2006-05-01  Bruno Haible  <bruno@clisp.org>
21518
21519                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
21520                 optional target-version argument. Verify that the compiler
21521                 groks source of the specified source-version, or add -source
21522                 option as necessary. Verify that the compiler produces
21523                 bytecode in the specified target-version, or add -target and
21524                 -source options as necessary. Make the result of the test
21525                 available as variable CONF_JAVAC. Also log error output in
21526                 config.log.
21527
21528         2006-03-11  Bruno Haible  <bruno@clisp.org>
21529
21530                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
21531
21532         2006-05-09  Bruno Haible  <bruno@clisp.org>
21533
21534                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
21535                 CLASSPATH_SEPARATOR to a semicolon.
21536
21537         2006-03-12  Bruno Haible  <bruno@clisp.org>
21538
21539                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
21540                 available as variable CONF_JAVA, for subsequent autoconf
21541                 tests. Also log error output in config.log.
21542
21543         2006-07-19  Bruno Haible  <bruno@clisp.org>
21544
21545                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
21546                 that getline works on glibc2 systems. Needed to avoid trouble
21547                 in relocatable.c.
21548                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
21549
21550         2005-12-04  Bruno Haible  <bruno@clisp.org>
21551
21552                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
21553                 launcher (untested).
21554
21555         2005-12-04  Bruno Haible  <bruno@clisp.org>
21556
21557                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
21558
21559         2006-07-22  Bruno Haible  <bruno@clisp.org>
21560
21561                 * gettext.m4: Update from GNU gettext-0.15.
21562                 * nls.m4: Likewise.
21563                 * po.m4: Likewise.
21564                 * inttypes-pri.m4: Likewise.
21565                 * inttypes-h.m4: Renamed from inttypes.m4.
21566                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
21567
21568 2006-07-22  Bruno Haible  <bruno@clisp.org>
21569
21570         Merge from GNU gettext 0.15.
21571
21572         2005-07-05  Bruno Haible  <bruno@clisp.org>
21573
21574                 * printf-args.c (printf_fetchargs): Work around broken
21575                 definition of wint_t on mingw.
21576
21577         2005-02-12  Bruno Haible  <bruno@clisp.org>
21578
21579                 * xallocsa.h: Add extern "C" for C++.
21580
21581         2006-05-17  Bruno Haible  <bruno@clisp.org>
21582
21583                 Cygwin portability.
21584                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
21585
21586         2006-04-30  Bruno Haible  <bruno@clisp.org>
21587
21588                 * progreloc.c: Include <mach-o/dyld.h> if available.
21589                 (find_executable): Use _NSGetExecutablePath when possible.
21590
21591         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
21592
21593                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
21594                 function.
21595
21596         2005-12-29  Bruno Haible  <bruno@clisp.org>
21597
21598                 * progreloc.c (set_program_name_and_installdir): Fix
21599                 compilation error.
21600
21601         2005-12-04  Bruno Haible  <bruno@clisp.org>
21602
21603                 Cygwin portability.
21604                 * progreloc.c: Include <windows.h> also on Cygwin.
21605                 (find_executable): Add support for Cygwin.
21606                 (set_program_name_and_installdir): Handle also platforms with
21607                 nonempty EXEEXT.
21608
21609         2006-07-11  Bruno Haible  <bruno@clisp.org>
21610
21611                 * javacomp.c: Fix a comment.
21612                 Reported by Jim Meyering.
21613
21614         2006-04-30  Bruno Haible  <bruno@clisp.org>
21615
21616                 * javacomp.h (compile_java_class): Add source_version,
21617                 target_version arguments.
21618                 * javacomp.c: Rewritten to choose only a compiler that
21619                 respects the specified source_version and target_version.
21620
21621         2006-06-27  Bruno Haible  <bruno@clisp.org>
21622
21623                 Assume correct S_ISDIR macro.
21624                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
21625
21626         2006-07-22  Bruno Haible  <bruno@clisp.org>
21627
21628                 * javaversion.h: New file, from GNU gettext.
21629                 * javaversion.c: New file, from GNU gettext.
21630                 * javaversion.java: New file, from GNU gettext.
21631                 * javaversion.class: New file, from GNU gettext.
21632
21633         2006-05-17  Bruno Haible  <bruno@clisp.org>
21634
21635                 Cygwin portability.
21636                 * javaexec.c (execute_java_class): Test for jview program
21637                 also on Cygwin.
21638
21639         2006-04-09  Bruno Haible  <bruno@clisp.org>
21640
21641                 * fatal-signal.c: Don't include string.h.
21642                 (at_fatal_signal): Use a copying loop instead of memcpy.
21643
21644         2005-12-04  Bruno Haible  <bruno@clisp.org>
21645
21646                 * csharpexec.c: Add support for 'clix' launcher (untested).
21647                 (execute_csharp_using_sscli): New function.
21648                 (execute_csharp_program): Call it.
21649
21650         2006-06-21  Bruno Haible  <bruno@clisp.org>
21651
21652                 Avoid warnings from recent versions of mcs.
21653                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
21654                 -o, -L, -r any more. Use options documented since mcs-1.0
21655                 instead. Similarly for -g.
21656
21657         2005-07-09  Bruno Haible  <bruno@clisp.org>
21658
21659                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
21660                 add a .dll suffix.
21661                 Reported by Mark Junker <mjscod@gmx.de>.
21662
21663         2006-06-17  Bruno Haible  <bruno@clisp.org>
21664
21665                 * config.charset: Update for NetBSD 3.0.
21666
21667         2006-05-17  Bruno Haible  <bruno@clisp.org>
21668
21669                 Cygwin portability.
21670                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
21671
21672         2006-05-16  Bruno Haible  <bruno@clisp.org>
21673
21674                 * localcharset.c [CYGWIN]: Include <windows.h>.
21675                 (get_charset_aliases): For Cygwin, return the same CPxxx
21676                 aliases list as under WIN32.
21677                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
21678                 the environment variables. Fall back to GetACP().
21679
21680         2006-04-05  Bruno Haible  <bruno@clisp.org>
21681
21682                 * config.charset: Update Juan Manuel Guerrero's address.
21683
21684         2005-02-12  Bruno Haible  <bruno@clisp.org>
21685
21686                 * allocsa.h: Add extern "C" for C++.
21687
21688         2005-02-10  Bruno Haible  <bruno@clisp.org>
21689
21690                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
21691                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
21692
21693         2006-07-22  Bruno Haible  <bruno@clisp.org>
21694
21695                 * gettext.h: Update to GNU gettext-0.15.
21696
21697 2006-07-22  Bruno Haible  <bruno@clisp.org>
21698
21699         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
21700         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
21701         lib-prefix.m4, longdouble.m4, ssize_t.m4.
21702
21703 2006-07-21  Eric Blake  <ebb9@byu.net>
21704
21705         * modules/stdlib-safer: New file.
21706         * MODULES.html.sh (File stream based Input/Output): Add
21707         stdlib-safer.
21708
21709 2006-07-21  Eric Blake  <ebb9@byu.net>
21710
21711         * lib/stdlib-safer.h: New file from coreutils, required by
21712         stdlib--.h.
21713
21714 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
21715
21716         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
21717
21718 2006-07-20  Bruno Haible  <bruno@clisp.org>
21719
21720         * gnulib-tool: Recognize new option --assume-autoconf.
21721         (autoconf_minversion): New variable.
21722         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
21723
21724 2006-07-20  Bruno Haible  <bruno@clisp.org>
21725
21726         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
21727
21728 2006-07-19  Derek R. Price  <derek@ximbiot.com>
21729
21730         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
21731         Reindent and repaginate.
21732
21733 2006-07-19  Derek Price  <derek@ximbiot.com>
21734
21735         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
21736         Correct grammar.
21737
21738 2006-07-17  Bruno Haible  <bruno@clisp.org>
21739
21740         * modules/list: New file.
21741         * modules/array-list: New file.
21742         * modules/carray-list, modules/carray-list-tests: New files.
21743         * modules/linked-list, modules/linked-list-tests: New files.
21744         * modules/avltree-list, modules/avltree-list-tests: New files.
21745         * modules/rbtree-list, modules/rbtree-list-tests: New files.
21746         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
21747         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
21748         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
21749         * modules/oset: New file.
21750         * modules/array-oset: New file.
21751         * modules/avltree-oset, modules/avltree-oset-tests: New files.
21752         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
21753         * tests/test-carray_list.c: New file.
21754         * tests/test-linked_list.c: New file.
21755         * tests/test-avltree_list.c: New file.
21756         * tests/test-rbtree_list.c: New file.
21757         * tests/test-linkedhash_list.c: New file.
21758         * tests/test-avltreehash_list.c: New file.
21759         * tests/test-rbtreehash_list.c: New file.
21760         * tests/test-avltree_oset.c: New file.
21761         * tests/test-rbtree_oset.c: New file.
21762         * MODULES.html.sh (Container data structures): New section.
21763
21764 2006-07-17  Bruno Haible  <bruno@clisp.org>
21765
21766         * m4/gl_list.m4: New file.
21767
21768 2006-07-17  Bruno Haible  <bruno@clisp.org>
21769
21770         * lib/gl_list.h: New file.
21771         * lib/gl_list.c: New file.
21772         * lib/gl_array_list.h: New file.
21773         * lib/gl_array_list.c: New file.
21774         * lib/gl_carray_list.h: New file.
21775         * lib/gl_carray_list.c: New file.
21776         * lib/gl_linked_list.h: New file.
21777         * lib/gl_linked_list.c: New file.
21778         * lib/gl_anylinked_list1.h: New file.
21779         * lib/gl_anylinked_list2.h: New file.
21780         * lib/gl_avltree_list.h: New file.
21781         * lib/gl_avltree_list.c: New file.
21782         * lib/gl_anyavltree_list1.h: New file.
21783         * lib/gl_anyavltree_list2.h: New file.
21784         * lib/gl_rbtree_list.h: New file.
21785         * lib/gl_rbtree_list.c: New file.
21786         * lib/gl_anyrbtree_list1.h: New file.
21787         * lib/gl_anyrbtree_list2.h: New file.
21788         * lib/gl_anytree_list1.h: New file.
21789         * lib/gl_anytree_list2.h: New file.
21790         * lib/gl_linkedhash_list.h: New file.
21791         * lib/gl_linkedhash_list.c: New file.
21792         * lib/gl_anyhash_list1.h: New file.
21793         * lib/gl_anyhash_list2.h: New file.
21794         * lib/gl_avltreehash_list.h: New file.
21795         * lib/gl_avltreehash_list.c: New file.
21796         * lib/gl_rbtreehash_list.h: New file.
21797         * lib/gl_rbtreehash_list.c: New file.
21798         * lib/gl_anytreehash_list1.h: New file.
21799         * lib/gl_anytreehash_list2.h: New file.
21800
21801         * lib/gl_oset.h: New file.
21802         * lib/gl_oset.c: New file.
21803         * lib/gl_array_oset.h: New file.
21804         * lib/gl_array_oset.c: New file.
21805         * lib/gl_avltree_oset.h: New file.
21806         * lib/gl_avltree_oset.c: New file.
21807         * lib/gl_rbtree_oset.h: New file.
21808         * lib/gl_rbtree_oset.c: New file.
21809         * lib/gl_anytree_oset.h: New file.
21810
21811 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21812
21813         * m4/mkancesdirs.m4: New file.
21814         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
21815         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
21816         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
21817         it.
21818
21819 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21820
21821         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
21822         * lib/mkancesdirs.h: New files.
21823         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
21824         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
21825         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
21826         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
21827         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
21828         callers changed.  Revamp internals significantly, by not
21829         attempting to create directories that are temporarily more
21830         permissive than the final results.  Do not attempt to use
21831         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
21832         This removes some race conditions, fixes some bugs, and simplifies
21833         things.  Use new dirchownmod function to do owner and mode changes.
21834         * lib/mkdir-p.h: Likewise.
21835         * lib/modechange.c (octal_to_mode): New function.
21836         (struct mode_change): New member mentioned.
21837         (make_node_op_equals): New arg mentioned.  All callers changed.
21838         (mode_compile): Keep track of which mode bits the user has explicitly
21839         mentioned.
21840         (mode_adjust): New arg DIR, so that we implement the X op correctly.
21841         New arg PMODE_BITS, to keep track of which mode bits the user
21842         mentioned; it treats S_ISUID and S_ISGID speciall.
21843         All callers changed.
21844         * lib/modechange.h: Likewise.
21845
21846 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
21847
21848         * MODULES.html.sh: Add mkancestors.
21849         * modules/mkancesdirs: New module.
21850         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
21851         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
21852         The chdir-safer and afs files are now orphans; I'll remove them
21853         unless someone speaks up.
21854         Add lib/dirchownmod.c, lib/dirchownmod.h.
21855         (Depends-on): Remove alloca, chown, save-cwd, dirname.
21856         Add lchown, mkancesdirs.
21857         (Maintainer): Add self.
21858
21859 2006-07-15  Karl Berry  <karl@gnu.org>
21860
21861         * gnulib-tool: help message wording/arrangement.
21862
21863 2006-07-14  Simon Josefsson  <jas@extundo.com>
21864
21865         * doc/gnulib.texi (Libtool and Windows): New section.
21866
21867 2006-07-12  Simon Josefsson  <jas@extundo.com>
21868
21869         * modules/gendocs (License): Fix license, approved by Karl.
21870
21871 2006-07-12  Eric Blake  <ebb9@byu.net>
21872
21873         * MODULES.html.sh: Add gendocs.
21874
21875 2006-07-11  Eric Blake  <ebb9@byu.net>
21876
21877         * modules/fdl: New module, to install doc/fdl.texi.
21878         * MODULES.html.sh: Add new section for documentation modules.
21879         * gnulib-tool: Avoid space-tab.
21880         (--doc-base): New option, to manage files from doc.
21881
21882 2006-07-11  Eric Blake  <ebb9@byu.net>
21883
21884         * m4/absolute-header.m4: Fix comments to match recent change.
21885
21886 2006-07-11  Eric Blake  <ebb9@byu.net>
21887
21888         * gnulib-tool: List --doc-base before --tests-base.
21889
21890 2006-07-11  Derek R. Price  <derek@ximbiot.com>
21891
21892         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
21893
21894 2006-07-11  Bruno Haible  <bruno@clisp.org>
21895
21896         * README: Mention where to put documentation.
21897
21898 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21899
21900         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
21901
21902 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
21903
21904         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
21905         to stdint.m4.
21906
21907 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
21908
21909         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
21910         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
21911         "no/such/file/stdint.h" when there is no such file, so that
21912         the resulting C code can be parsed by dodgy compilers.
21913         Problems reported by Bob Proulx.
21914
21915 2006-07-10  Derek R. Price  <derek@ximbiot.com>
21916
21917         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
21918         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
21919         macros into the GNU _D_EXACT_NAMLEN.
21920         * lib/savedir.c:  Likewise.
21921         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
21922
21923 2006-07-10  Derek R. Price  <derek@ximbiot.com>
21924         and Paul Eggert  <eggert@cs.ucla.edu>
21925
21926         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
21927         * m4/savedir.m4:
21928         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
21929         macros into the GNU _D_EXACT_NAMLEN.
21930
21931 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21932
21933         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
21934         around the absolute name, to work around a problem with the HP-UX
21935         11.23 native C compiler, reported by Bob Proulx.
21936
21937 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21938
21939         * doc/maintain.texi, make-stds.texi: Sync from
21940         <http://savannah.gnu.org/projects/gnustandards>.
21941
21942 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
21943
21944         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
21945
21946 2006-07-09  Jim Meyering  <jim@meyering.net>
21947
21948         * m4/glob.m4: Remove a doubled word in a comment.
21949
21950 2006-07-09  Jim Meyering  <jim@meyering.net>
21951
21952         * lib/argp-pv.c: Remove a doubled word in a comment.
21953         * lib/check-version.c (check_version): Likewise.
21954         * lib/javacomp.c (compile_java_class): Likewise.
21955
21956 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21957
21958         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
21959         for the benefit of people using Autoconf 2.60.  If you want to
21960         support older Autoconf versions you can copy m4/onceonly_2_57.m4
21961         (or m4/onceonly.m4, if pre-2.57) manually.
21962
21963 2006-07-08  Jim Meyering  <jim@meyering.net>
21964
21965         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
21966         comment.
21967         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
21968         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
21969         comment.
21970
21971 2006-07-08  Jim Meyering  <jim@meyering.net>
21972
21973         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
21974
21975 2006-07-07  Simon Josefsson  <jas@extundo.com>
21976
21977         * tests/test-crc.c: Change expected crc value, the test vector
21978         were probably computed using the old broken crc.c?
21979
21980 2006-07-06  Simon Josefsson  <jas@extundo.com>
21981
21982         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
21983         now the canonical place for the M4 file).
21984
21985         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
21986         from the sys_socket dependency now.
21987
21988         * modules/inet_pton (Files): Ditto.
21989
21990         * modules/inet_ntop (Files): Ditto.
21991
21992 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21993
21994         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
21995         not gl_PREREQ_GETUSERSHELL.
21996
21997 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21998
21999         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
22000         with only one argument, for Autoconf 2.60.
22001         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
22002         expand to nothing, so add a shell command to avoid syntax error.
22003         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
22004
22005 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22006
22007         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
22008
22009 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22010
22011         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
22012         no longer needed.  Check for isblank decl.
22013         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
22014         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
22015         of existence.
22016
22017 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22018
22019         * lib/getloadavg.c: Use __VMS, not VMS.
22020         * lib/getopt.c: Likewise.
22021         * lib/getpagesize.h: Likewise.
22022         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
22023         and probably does not work.
22024
22025 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22026
22027         * lib/.cppi-disable: Add wcwidth.
22028         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
22029         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
22030         (ISGRAPH): Remove.  All uses changed to isgraph.
22031         (FOLD) [!defined _LIBC]: Remove special case.
22032         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
22033         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
22034         HAVE_ISBLANK.
22035         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
22036         case.
22037
22038 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22039
22040         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
22041         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
22042         brackets.  Other minor changes to suppress some compiler
22043         warnings.
22044
22045 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22046         and Paul Eggert  <eggert@cs.ucla.edu>
22047
22048         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
22049         of invoking obsolescent AC_HEADER_DIRENT macro.
22050         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
22051         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
22052         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
22053         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
22054         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
22055         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
22056         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
22057         * m4/readdir.m4: Remove; no longer needed.
22058
22059 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22060         and Paul Eggert  <eggert@cs.ucla.edu>
22061
22062         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
22063         Don't worry about this obsolete case any more.
22064         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
22065         directories.
22066         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
22067         worry about this obsolete case any more.
22068         * lib/fts.c: Likewise.
22069         * lib/getcwd.c: Likewise.
22070         * lib/glob.h: Likewise.
22071         * lib/savedir.c: Likewise.
22072
22073 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22074
22075         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
22076         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
22077         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
22078         needed.
22079         All uses removed.
22080         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22081         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22082         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
22083         needed.
22084         * m4/getdate.m4 (gl_GETDATE): Likewise.
22085         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
22086         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
22087         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
22088         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22089         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22090         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
22091         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
22092         needed.
22093
22094 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22095
22096         * lib/memcasecmp.c: Include <limits.h>.
22097         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
22098         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
22099         Don't assume isdigit succeeds only on '0' through '9'.
22100
22101 2006-07-05  Eric Blake  <ebb9@byu.net>
22102
22103         * modules/getaddrinfo (Depends-on): Add snprintf.
22104
22105 2006-07-05  Eric Blake  <ebb9@byu.net>
22106
22107         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
22108         to avoid 'header present but could not be compiled' on cygwin.
22109
22110 2006-07-05  Eric Blake  <ebb9@byu.net>
22111
22112         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
22113         missing from netdb.h.
22114         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
22115
22116 2006-07-05  Derek R. Price  <derek@ximbiot.com>
22117
22118         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
22119         no longer needed.
22120         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
22121         * m4/getdate.m4 (gl_GETDATE): Likewise.
22122         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
22123         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
22124         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
22125         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22126         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
22127
22128 2006-07-05  Derek R. Price  <derek@ximbiot.com>
22129
22130         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
22131         All uses of is_space replaced by isspace.
22132         * lib/exit.h: Don't talk about STDC_HEADERS.
22133         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
22134         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
22135         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
22136         replaced by isprint etc.
22137         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
22138         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
22139         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
22140         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
22141         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
22142         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
22143
22144 2006-07-05  Bruno Haible  <bruno@clisp.org>
22145
22146         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
22147         the function exists, before testing against AIX.
22148         Reported by Martin Lambers <marlam@marlam.de>.
22149
22150 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
22151
22152         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
22153         From Mark D. Baushke.
22154
22155 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
22156
22157         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
22158         to the absolute name, not just one, to bypass Sun C 5.8's
22159         "warning: #include of /usr/include/... may be non-portable".
22160
22161 2006-07-04  Eric Blake  <ebb9@byu.net>
22162
22163         * modules/dirname-tests: New test module.
22164         * tests/test-dirname.c: New file, replacing dirname.c
22165         TEST_DIRNAME section that was recently deleted.
22166
22167 2006-07-04  Bruno Haible  <bruno@clisp.org>
22168
22169         Assume ANSI C header files and <ctype.h> functions.
22170         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
22171         (mbsnwidth): Use isprint, iscntrl instead.
22172
22173 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22174
22175         Merge from coreutils.
22176         * MODULES.html.sh: Add xstrtold.
22177         * modules/xstrtold: New file.
22178         * modules/cycle-check (Files): Add lib/same-inode.h.
22179         * modules/dirname (Files): Add m4/double-slash-root.m4.
22180         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
22181         * modules/mkdir-p (Files): Add lib/same-inode.h.
22182         * modules/same (Files): Add lib/same-inode.h.
22183
22184 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22185
22186         * m4/absolute-header.m4: Renamed from full-header-path.m4.
22187         This is to keep the terminology clean; POSIX talks about
22188         "absolute pathnames", not "full pathnames", but the GNU
22189         Coding Standards say to use "path" for something else;
22190         so use "absolute" to keep both sides happy.
22191         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
22192         Set gl_absolute_header, not gl_full_header_path.
22193         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
22194         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
22195         All uses changed.
22196
22197         Merge from coreutils.
22198
22199         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22200
22201         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
22202         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
22203         want to require the building of c-strtod.o.
22204         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
22205         needs -lm directly.
22206         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
22207
22208         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22209
22210         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
22211         --as-needed option if available.  Problem reported by Albert Chin in
22212         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
22213         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
22214         cc merely issues a bunch of annoying warnings for --as-needed
22215         (this problem was reported by Bob Proulx).  Also, try linking with
22216         -lm to detect a bug in binutils 2.16 (this problem was reported
22217         by Ralf Wildenhues).
22218
22219         2006-06-18  Jim Meyering  <jim@meyering.net>
22220
22221         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
22222         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
22223         macro.
22224         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
22225         also check for glibc-2.4's abort-inducing bug.
22226
22227         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
22228         Low-probability clean-up should be to use rmdir to get rid of
22229         the just-created directory, not unlink.
22230
22231         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
22232         configure fail, and request a bug report to inform us about it.
22233         Add a comment that, barring reports to the contrary, in 2007 we'll
22234         assume ftruncate is universally available.
22235
22236         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
22237
22238         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
22239
22240         2006-03-12  Jim Meyering  <jim@meyering.net>
22241
22242         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
22243         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
22244         * m4/same.m4 (gl_SAME): Likewise.
22245         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
22246
22247         2006-03-11  Eric Blake  <ebb9@byu.net>
22248
22249         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
22250         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
22251         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
22252         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
22253
22254 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22255
22256         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
22257         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
22258         reported by Mark D. Baushke, one in
22259         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
22260
22261         Merge from coreutils.
22262
22263         * lib/.cppi-disable: Add stdint_.h.
22264         * lib/.cvsignore: Add stdint.h.
22265
22266         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
22267
22268         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
22269         both double and long double versions.
22270         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
22271         * lib/xstrtold.c: New file.
22272         * lib/xstrtod.h (xstrtold): New decl.
22273
22274         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
22275
22276         * lib/filemode.c (setst): Remove.
22277         (strmode): Rewrite to avoid setst.  This makes the code shorter,
22278         (arguably) clearer, and the generated code is a bit smaller on my
22279         Debian GNU/Linux stable x86 host.
22280
22281         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
22282
22283         * lib/filemode.c: Include "filemode.h" first, to test the interface.
22284         Assume that filemode.h includes sys/types.h and sys/stat.h.
22285         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
22286         (ftypelet): Reorder to put common cases first, for efficiency.
22287         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
22288         to do 'M'.
22289         (strmode): Renamed from mode_string, and now stores 12 bytes instead
22290         of 10, for compatibility with FreeBSD.  All callers changed.
22291         (filemodestring): Now stores 12 bytes instead of 10, and sets file
22292         types that can't be deduced solely from st_mode.  First arg is now a
22293         const pointer.
22294         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
22295         (strmode): Renamed from mode_string.
22296         (filemodestring): New decl.
22297         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
22298         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
22299         needed.
22300         (S_ISPORT, S_ISWHT): New macros, if not already defined.
22301
22302         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22303
22304         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
22305         fsusage.h now does that.  Include fsusage.h first, to test interface.
22306         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
22307         at most one method (the old code could have generated decls that
22308         didn't conform to C89, not that this was ever exercised).
22309         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
22310
22311         2006-03-19  Jim Meyering  <jim@meyering.net>
22312
22313         Work even in a chroot where d_ino values for entries in "/"
22314         don't match the stat.st_ino values for the same names.
22315         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
22316         number, iterate through all entries again, using lstat instead.
22317         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
22318         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
22319
22320         * lib/getcwd.c (__getcwd): Clarify a comment.
22321         Use memcpy in place of a call to strcpy.
22322
22323         2006-03-12  Jim Meyering  <jim@meyering.net>
22324
22325         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
22326         matches that of the current directory (which we're about to chdir ".."
22327         out of), then save the dev-ino of the parent, instead.
22328
22329         * lib/same-inode.h (SAME_INODE): New file/macro.
22330         * lib/chdir-safer.c (SAME_INODE): Remove definition.
22331         Include "same-inode.h", instead.
22332         * lib/same.c: Likewise.
22333         * lib/cycle-check.h: Include "same-inode.h".
22334         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
22335         * lib/cycle-check.c (SAME_INODE): Remove definition.
22336         * lib/root-dev-ino.h: Include "same-inode.h".
22337
22338         2006-03-11  Eric Blake  <ebb9@byu.net>
22339
22340         * lib/same.c (same_name): s/base_name/last_component/
22341         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
22342         * lib/filenamecat.c (file_name_concat): Likewise.
22343
22344         2006-03-11  Eric Blake  <ebb9@byu.net>,
22345                     Paul Eggert  <eggert@cs.ucla.edu>
22346
22347         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
22348         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
22349         drive prefix.
22350         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
22351         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
22352         (last_component): New method.
22353         * lib/dirname.c (dir_len): Determine when drive letters need a
22354         subsequent slash.  Preserve // when it is special.
22355         (dir_name): Don't append dot when drive letter is absolute.
22356         [TEST_DIRNAME]: Move into a full-blown gnulib test.
22357         * lib/basename.c (base_name): New semantics - malloc the result.
22358         Preserve // when it is special.  Preserve relative files that look
22359         like drive letters.
22360         (base_len): Preserve // when it is special.
22361         (last_component): New method, similar to old base_name semantics.
22362         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
22363         base_name.  Strip redundant slashes from ///.
22364
22365 2006-07-03  Jim Meyering  <jim@meyering.net>
22366
22367         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
22368         macro is used before the first cycle_check call.
22369
22370 2006-07-03  Eric Blake  <ebb9@byu.net>
22371
22372         * modules/dirname (Depends-on): Add xstrndup.
22373
22374 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22375
22376         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
22377         test cases, so that config.log is a bit easier to follow.
22378
22379 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22380
22381         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
22382         both are 64 bits, since this seems to be the tradition, and this
22383         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
22384         we ever run into a host that prefers long long to long in this
22385         case, we'll need another configure-time test.  Problem reported by
22386         Jim Meyering.
22387
22388 2006-07-02  Eric Blake  <ebb9@byu.net>
22389
22390         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
22391
22392 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22393
22394         * modules/inttypes (Depends-on): No longer depends on stdint.
22395         * modules/stdint (Description): Say more about assumptions.
22396         Say that the fast types might differ.  Say macros are used.
22397         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
22398         (Makefile.am): Revise list of substituted symbols to match
22399         new stdint.m4.
22400         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
22401         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
22402         * tests/test-stdint.c (verify_same_types)
22403         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
22404         the code conforms to C99/C89.
22405         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
22406         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
22407
22408 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22409
22410         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
22411         but fix a bug, by requiring at least 64 bits.
22412         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
22413         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
22414         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
22415         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
22416
22417         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
22418         changes.  Make 2.59 a prerequisite.  Check and substitute for
22419         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
22420         inttypes.h.  Do not use special include files; just use the
22421         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
22422         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
22423         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
22424         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
22425         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
22426         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
22427         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
22428         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
22429         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
22430         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
22431         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
22432         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
22433         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
22434         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
22435         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
22436         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
22437         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
22438         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
22439         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
22440         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
22441         WINT_MAX.  Check for C99 conformance more strictly, by detecting
22442         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
22443         not check for things that C99 does not require, e.g., int8_t.  If
22444         a test isn't needed unless <stdint.h> isn't working, and is
22445         unlikely to be needed for any other reason, then don't do it
22446         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
22447         size_t, since we assume C89 freestanding at least.  Do not check
22448         for sig_atomic_t, wchar_t, or wint_t, since the code now does
22449         the right thing even if the types are not defined.  Instead use:
22450         (gl_STDINT_TYPE_PROPERTIES): New macro.
22451         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
22452         testing whether <sys/types.h> clashes, as Autoconf does this for
22453         us now.  All uses removed.
22454         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
22455         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
22456         (gl_CHECK_TYPE_SAME):
22457         Remove; no longer needed.
22458         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
22459         exists, since we'll return 0 anyway in that case.
22460         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
22461
22462 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22463
22464         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
22465         possible collision with system files.
22466         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
22467         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
22468         WCHAR_MIN and WCHAR_MAX in this case.
22469         (<stddef.h>): Do not include; no longer needed.
22470         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
22471         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
22472         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
22473         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
22474         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
22475         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
22476         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
22477         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
22478         !defined(__c99))]: Include in this case too, since it's harmless
22479         now.
22480         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
22481         dangerous to do so.
22482         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
22483         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
22484         (_STDINT_MIN, _STDINT_MAX): New macros.
22485         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
22486         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
22487         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
22488         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
22489         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
22490         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
22491         macros, not typedefs; this simplifies things quite a bit.
22492         Use long int for all types narrower than int64_t.
22493         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
22494         Define in terms of long long int or int64_t or long int,
22495         not int64_t or int32_t.  This saves some compile-time testing.
22496         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
22497         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
22498         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
22499         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
22500         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
22501         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
22502         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
22503         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
22504         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
22505         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
22506         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22507         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22508         undef any previous version and define our own version, for
22509         simplicity and consistency with the new macros for types.
22510         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
22511         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
22512         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
22513         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
22514         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
22515         @WINT_T_SUFFIX@ to keep things simple here.
22516         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
22517         Simplify by assuming typical 8/16/32/64 host, since we're
22518         already doing that elsewhere anyway.
22519         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
22520         and assume long long int is 64 bits if available.  This
22521         speeds up 'configure'.
22522
22523 2006-07-01  Eric Blake  <ebb9@byu.net>
22524
22525         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
22526         Reported by Andreas Buening.
22527
22528 2006-07-01  Eric Blake  <ebb9@byu.net>
22529
22530         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
22531
22532 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22533
22534         * lib/getaddrinfo.c: fixed typo
22535
22536 2006-06-29  Jim Meyering  <jim@meyering.net>
22537
22538         * modules/strftime (Maintainer): Add my name, since with the
22539         FPRINTFTIME changes strftime.c has forked from glibc.
22540
22541 2006-06-29  Eric Blake  <ebb9@byu.net>
22542
22543         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
22544
22545 2006-06-29  Eric Blake  <ebb9@byu.net>
22546
22547         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
22548
22549 2006-06-29  Eric Blake  <ebb9@byu.net>
22550
22551         * lib/stat_.h: New file.
22552
22553 2006-06-29  Eric Blake  <ebb9@byu.net>
22554
22555         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
22556         unused static function.
22557
22558 2006-06-29  Eric Blake  <ebb9@byu.net>
22559
22560         * doc/functions.texi (Function Portability): Document missing lstat
22561         on mingw.
22562
22563 2006-06-29  Eric Blake  <ebb9@byu.net>
22564
22565         * MODULES.html.sh: Add sys_stat.
22566         * modules/sys_stat: New module.
22567         * modules/mkstemp (Depends-on): Add sys_stat.
22568
22569 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22570
22571         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
22572
22573 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22574
22575         * m4/c-bs-a.m4: Removed.
22576
22577 2006-06-29  Derek R. Price  <derek@ximbiot.com>
22578
22579         * lib/strftime.c: Assume strftime() exists.
22580
22581 2006-06-29  Derek Price  <derek@ximbiot.com>
22582
22583         * modules/c-bs-a: Removed - \a is C89.
22584         * MODULES.html.sh: Remove c-bs-a.
22585
22586 2006-06-29  Bruno Haible  <bruno@clisp.org>
22587
22588         * modules/wcwidth (License): Change to LGPL.
22589
22590 2006-06-28  Simon Josefsson  <jas@extundo.com>
22591
22592         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
22593         on _WIN32.
22594
22595         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
22596         getnameinfo.
22597
22598 2006-06-28  Simon Josefsson  <jas@extundo.com>
22599
22600         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
22601
22602 2006-06-28  Simon Josefsson  <jas@extundo.com>
22603
22604         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
22605         functions there.  It will succeed on Windows XP, but on Windows
22606         2000 and (presumably) earlier, it will fail, and use the internal
22607         re-implementation.
22608         (use_win32_p): New function.
22609         (getaddrinfo): Use strtoul on servname, to support numeric ports.
22610         Support AI_NUMERICSERV to disable getservbyname.
22611         (getnameinfo): New function, only supports
22612         NI_NUMERICHOST|NI_NUMERICSERV for now.
22613
22614         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
22615         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
22616         getnameinfo.
22617
22618 2006-06-28  Eric Blake  <ebb9@byu.net>
22619
22620         * modules/wcwidth: New file.
22621         * modules/mbchar (Depends-on): Add wcwidth.
22622         * modules/mbswidth (Depends-on): Add wcwidth.
22623         * MODULES.html.sh: Add wcwidth.
22624
22625 2006-06-28  Eric Blake  <ebb9@byu.net>
22626
22627         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
22628         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
22629
22630 2006-06-28  Eric Blake  <ebb9@byu.net>
22631
22632         * lib/xvasprintf.h: Fix comments.
22633
22634 2006-06-28  Eric Blake  <ebb9@byu.net>
22635
22636         * lib/mbchar.h (wcwidth): Include wcwidth.h.
22637         * lib/mbswidth.c (wcwidth): Move from here...
22638         * lib/wcwidth.h: ...to this new file.
22639
22640 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22641
22642         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
22643
22644         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
22645         it's obsolete.
22646         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
22647
22648 2006-06-28  Derek R. Price  <derek@ximbiot.com>
22649
22650         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
22651         Autoconf 2.60 says this stuff was obsolete.
22652
22653 2006-06-28  Bruno Haible  <bruno@clisp.org>
22654
22655         * modules/wcwidth (Files): Add m4/wchar_t.m4.
22656
22657 2006-06-28  Bruno Haible  <bruno@clisp.org>
22658
22659         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
22660         gt_TYPE_WCHAR_T.
22661
22662 2006-06-28  Bruno Haible  <bruno@clisp.org>
22663
22664         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
22665         declaration for wcwidth.
22666         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
22667
22668 2006-06-28  Bruno Haible  <bruno@clisp.org>
22669
22670         * lib/mkdtemp.c [MINGW]: Include <io.h>.
22671         (mkdir): Define using _mkdir.
22672
22673 2006-06-28  Bruno Haible  <bruno@clisp.org>
22674
22675         * lib/getaddrinfo.h: Fix POSIX URL.
22676         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
22677         _WIN32.
22678         (use_win32_p): Make static.
22679         (getaddrinfo): Reject service name if it is empty or does not consist
22680         solely of decimal digits, or if its value is > 65535.
22681         (getnameinfo): Remove useless casts.
22682
22683 2006-06-27  Simon Josefsson  <jas@extundo.com>
22684
22685         * modules/sys_select: New file, suggested by Bruno Haible, Paul
22686         Eggert and Martin Lambers.
22687
22688 2006-06-27  Simon Josefsson  <jas@extundo.com>
22689
22690         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
22691         Eggert and Martin Lambers.
22692
22693 2006-06-27  Bruno Haible  <bruno@clisp.org>
22694
22695         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
22696         result to 0, not to empty.
22697         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
22698
22699 2006-06-27  Bruno Haible  <bruno@clisp.org>
22700
22701         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
22702
22703 2006-06-26  Simon Josefsson  <jas@extundo.com>
22704
22705         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
22706         present.
22707
22708 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
22709
22710         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
22711         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
22712         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
22713
22714 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
22715
22716         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
22717
22718 2006-06-26  Bruno Haible  <bruno@clisp.org>
22719
22720         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
22721
22722 2006-06-26  Bruno Haible  <bruno@clisp.org>
22723
22724         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
22725
22726 2006-06-26  Bruno Haible  <bruno@clisp.org>
22727
22728         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
22729         SGI C compiler in pre-C99 mode.
22730         Suggested by Mark D. Baushke and Larry Jones.
22731
22732 2006-06-26  Bruno Haible  <bruno@clisp.org>
22733
22734         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
22735         WCHAR_MAX.
22736         Reported by Mark D. Baushke and Larry Jones.
22737
22738 2006-06-26  Bruno Haible  <bruno@clisp.org>
22739
22740         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
22741         in pre-C99 mode.
22742         Suggested by Mark D. Baushke and Larry Jones.
22743
22744 2006-06-23  Simon Josefsson  <jas@extundo.com>
22745             Bruno Haible  <bruno@clisp.org>
22746
22747         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
22748         Emit mostlyclean-local rule.
22749         (func_emit_tests_Makefile_am): Likewise.
22750         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
22751
22752 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
22753
22754         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
22755
22756 2006-06-23  Bruno Haible  <bruno@clisp.org>
22757
22758         * tests/test-stdint.c: Update to match ISO C 99 Technical
22759         Corrigendum 1.
22760
22761 2006-06-23  Bruno Haible  <bruno@clisp.org>
22762
22763         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
22764
22765 2006-06-23  Bruno Haible  <bruno@clisp.org>
22766
22767         * lib/stdint_.h: Treat IRIX like OpenBSD.
22768
22769 2006-06-23  Bruno Haible  <bruno@clisp.org>
22770
22771         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
22772         ISO C 99 Technical Corrigendum 1.
22773
22774 2006-06-22  Simon Josefsson  <jas@extundo.com>
22775
22776         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
22777         MinGW.
22778
22779 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22780
22781         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
22782         needed.  Some compiler complained about some of them.  Problem reported
22783         by Larry Jones in
22784         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
22785
22786 2006-06-21  Simon Josefsson  <jas@extundo.com>
22787
22788         * tests/test-getaddrinfo.c: New file.
22789
22790         * modules/getaddrinfo-tests: New file.
22791
22792         * MODULES.html.sh: Add inet_pton.
22793
22794         * modules/inet_pton: New file.
22795
22796 2006-06-21  Simon Josefsson  <jas@extundo.com>
22797
22798         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
22799         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
22800         of using the (limited) gnulib implementation on Windows XP.
22801
22802         * m4/inet_pton.m4: New file.
22803
22804 2006-06-21  Simon Josefsson  <jas@extundo.com>
22805
22806         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
22807         variable.
22808
22809         * lib/socket_.h: Don't define WINVER.
22810
22811         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
22812         slightly modified to work in gnulib.
22813
22814 2006-06-21  Simon Josefsson  <jas@extundo.com>
22815
22816         * doc/gnulib.texi (Windows sockets): Add.
22817
22818 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22819
22820         * lib/read-file.c (fread_file): Start with buffer allocation of
22821         0 bytes rather than 1 byte; this simplifies the code.
22822         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
22823         code to free buffer and save/restore errno.
22824         (internal_read_file): Remove unused local.
22825
22826 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22827
22828         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
22829         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
22830         Problem reported by Denis Excoffier in
22831         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
22832
22833 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22834
22835         * modules/sys_socket, modules/socklen: Include sys/types since
22836         FreeBSD 4.x's sys/socket.h needs it.
22837
22838 2006-06-19  Simon Josefsson  <jas@extundo.com>
22839
22840         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
22841
22842 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
22843
22844         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
22845
22846 2006-06-19  Bruno Haible  <bruno@clisp.org>
22847
22848         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
22849         and FULL_PATH_INTTYPES_H in angle brackets.
22850         Reported by Mark D. Baushke <mdb@gnu.org>.
22851
22852 2006-06-17  Eric Blake  <ebb9@byu.net>
22853
22854         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
22855         errno.
22856
22857 2006-06-17  Bruno Haible  <bruno@clisp.org>
22858
22859         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
22860         <sys/inttypes.h>.
22861
22862 2006-06-17  Bruno Haible  <bruno@clisp.org>
22863
22864         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
22865         whether errno is declared. Assume <errno.h> declares errno.
22866
22867 2006-06-17  Bruno Haible  <bruno@clisp.org>
22868
22869         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
22870
22871 2006-06-17  Bruno Haible  <bruno@clisp.org>
22872
22873         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
22874         problem on Solaris 2.5.1.
22875
22876 2006-06-16  Eric Blake  <ebb9@byu.net>
22877
22878         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
22879         * lib/unicodeio.c [!defined errno]: Likewise.
22880         * lib/strtol.c [!defined errno]: Likewise.
22881         * lib/strtod.c [!defined errno]: Likewise.
22882
22883 2006-06-15  Eric Blake  <ebb9@byu.net>
22884
22885         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
22886
22887 2006-06-15  Eric Blake  <ebb9@byu.net>
22888
22889         * config/srclist.txt (ssize_t.m4): Lose sync.
22890
22891 2006-06-15  Bruno Haible  <bruno@clisp.org>
22892
22893         * modules/stdint (Files): Include m4/full-header-path.m4,
22894         m4/size_max.m4, m4/wchar_t.m4.
22895         (Makefile.am): Many more substitutions.
22896         * modules/stdint-tests: New file.
22897         * tests/test-stdint.c: New file.
22898
22899 2006-06-15  Bruno Haible  <bruno@clisp.org>
22900
22901         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
22902         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
22903         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
22904         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
22905         gl_CHECK_TYPE_SAME): New macros.
22906
22907 2006-06-15  Bruno Haible  <bruno@clisp.org>
22908
22909         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
22910
22911 2006-06-15  Bruno Haible  <bruno@clisp.org>
22912
22913         * lib/stdint_.h: Rewritten to be fully auto-configured.
22914         Fixes bug on HP-UX/IA64.
22915
22916 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
22917
22918         * lib/getdate.y (__attribute__): Don't define if already defined.
22919         Problem reported by Larry Jones.
22920         * lib/utimens.c (__attribute__): Likewise.
22921
22922 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
22923
22924         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
22925         reported by Andreas Schwab.
22926
22927 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22928             Bruno Haible  <bruno@clisp.org>
22929
22930         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
22931         check for the declaration of strnlen and a run test that exposes the
22932         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
22933         rpl_strndup.
22934
22935 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22936             Bruno Haible  <bruno@clisp.org>
22937
22938         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
22939
22940 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22941
22942         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
22943         compile test, for Tru64 4.0D.
22944
22945 2006-05-28  Karl Berry  <karl@gnu.org>
22946
22947         * config/srclist.txt (printf-args.c): lose sync.
22948
22949 2006-05-26  Martin Lambers  <marlam@marlam.de>
22950
22951         * lib/getpass.c: Updates the test for the native W32 API, and adds
22952         missing includes, thus fixing compilation warnings.
22953
22954 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
22955
22956         * lib/exclude.c (exclude_fnmatch): New function.
22957         (excluded_file_name): Call exclude_fnmatch.
22958         * lib/exclude.h (excluded_file_name): New prototype
22959
22960 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
22961
22962         * lib/tempname.c (small_open, large_open): New macros.
22963         (__open, __open64) [!_LIBC]: Remove.
22964         (__gen_tempname): Use small_open and large_open instead of __open
22965         and __open64.  This fixes a portability bug on HP-UX 11.11i
22966         reported by Simon Wing-Tang in
22967         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
22968
22969 2006-05-24  Bruno Haible  <bruno@clisp.org>
22970
22971         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
22972         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
22973         Reported by Thorsten Maerz <torte@netztorte.de> via
22974         Aaron Stone <aaron@serendipity.cx>.
22975
22976 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
22977
22978         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
22979         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
22980         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
22981         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
22982         not really conditional on the cache.
22983         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
22984
22985 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
22986
22987         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
22988         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
22989         (my_usleep): Don't mishandle maximum value.
22990
22991 2006-05-19  Jim Meyering  <jim@meyering.net>
22992
22993         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
22994
22995 2006-05-17  Bruno Haible  <bruno@clisp.org>
22996
22997         Cygwin portability.
22998         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
22999
23000 2006-05-17  Bruno Haible  <bruno@clisp.org>
23001
23002         * lib/stdint_.h: Fix recognition of Cygwin.
23003
23004 2006-05-15  Bruno Haible  <bruno@clisp.org>
23005
23006         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
23007         on libtool patch by Ralf Wildenhues.
23008
23009 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
23010
23011         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
23012         test for C99 conformance; (bool) 0.5 is an integer constant
23013         expression, but (bool) -0.5 is not.  Problem reported by Fedor
23014         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
23015
23016 2006-05-11  Simon Josefsson  <jas@extundo.com>
23017
23018         * m4/xvasprintf.m4: Fix obvious typo.
23019
23020 2006-05-11  Jim Meyering  <jim@meyering.net>
23021
23022         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
23023         James Lemley.
23024
23025 2006-05-10  Simon Josefsson  <jas@extundo.com>
23026
23027         * lib/md4.c: Typo fix, update copyright years.
23028         (K1, K2): Don't use L because it turn computations into 64-bit on
23029         64-bit platforms.
23030
23031 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
23032
23033         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
23034         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
23035         unwanted sign propagation, e.g., on hosts with 64-bit int.
23036         There still are some problems with reeelly weird theoretical hosts
23037         (e.g., 33-bit int) but it's not worth worrying about now.
23038         * lib/sha1.c (rol): Likewise.
23039         (K1, K2, K3, K4): Remove unnecessary L suffix.
23040
23041 2006-05-10  Bruno Haible  <bruno@clisp.org>
23042
23043         * lib/des.c: Cast to avoid warnings.
23044
23045 2006-05-09  Bruno Haible  <bruno@clisp.org>
23046
23047         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
23048         (Depends-on): Depend also on xsize, stdarg.
23049         (configure.ac): Add gl_XVASPRINTF.
23050
23051 2006-05-09  Bruno Haible  <bruno@clisp.org>
23052
23053         * m4/xvasprintf.m4: New file.
23054
23055 2006-05-09  Bruno Haible  <bruno@clisp.org>
23056
23057         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
23058         (EOVERFLOW): Define fallback value.
23059         (xstrcat): New function.
23060         (xvasprintf): Recognize the special case of a string concatenation.
23061
23062 2006-05-08  Eric Blake  <ebb9@byu.net>
23063
23064         * gnulib-tool (func_version): Base copyright year on CVS date.
23065         (func_emit_copyright_notice): New function.
23066         (func_emit_lib_Makefile_am): Use it.
23067         (func_emit_tests_Makefile_am): Likewise.
23068         (func_import): Likewise.
23069
23070 2006-05-08  Bruno Haible  <bruno@clisp.org>
23071
23072         * modules/stdarg: New file.
23073         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
23074
23075 2006-05-08  Bruno Haible  <bruno@clisp.org>
23076
23077         * m4/stdarg.m4: New file, from GNU gettext.
23078
23079 2006-05-08  Bruno Haible  <bruno@clisp.org>
23080
23081         * config/srclist.txt (build-aux/config.rpath): different from latest
23082         release.
23083
23084 2006-05-08  Bruno Haible  <bruno@clisp.org>
23085
23086         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
23087
23088 2006-05-05  Jim Meyering  <jim@meyering.net>
23089
23090         * m4/warning.m4: New file, derived from bison's file by the same name.
23091
23092 2006-05-03  Bruno Haible  <bruno@clisp.org>
23093
23094         * lib/stdint_.h: Shorter URL.
23095         * lib/inttypes.h: Likewise.
23096
23097 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23098
23099         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
23100
23101 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23102
23103         * lib/verify.h: Document the internals better.  Most of this change
23104         was written by Bruno Haible.
23105
23106 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23107
23108         * doc/verify.texi: New file, partly based on a proposal by
23109         Bruno Haible.
23110
23111 2006-05-02  Bruno Haible  <bruno@clisp.org>
23112
23113         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
23114         test from here...
23115         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
23116
23117 2006-04-29  Bruno Haible  <bruno@clisp.org>
23118
23119         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
23120         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
23121
23122 2006-04-29  Bruno Haible  <bruno@clisp.org>
23123
23124         * gnulib-tool: Make --update option actually work.
23125
23126 2006-04-29  Bruno Haible  <bruno@clisp.org>
23127
23128         * doc/gcd.texi: New file.
23129         * doc/gnulib.texi: Include it.
23130
23131 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
23132
23133         * lib/getdate.y (get_date): When adding relative date, start with the
23134         initial time, not with the result of the first mktime call.
23135
23136 2006-04-25  Bruno Haible  <bruno@clisp.org>
23137
23138         * gnulib-tool (func_import): Output the include directives in three
23139         blocks, sorted separately.
23140         Reported by Ben Pfaff <blp@cs.stanford.edu>.
23141
23142 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
23143
23144         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
23145         to define main with arguments, for C++.  Reported by Eric Blake.
23146         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
23147         Prefer 'int main ()' to 'int main (void)', for C++.
23148         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
23149         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
23150         for 'main', for C99 and C++.
23151
23152 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
23153
23154         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
23155         Don't assume that exit status -1 is valid.
23156         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
23157         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
23158         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
23159         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
23160         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
23161         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
23162         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
23163         functions can be used without declaring them, or that you can
23164         exit with status -1.
23165         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
23166
23167 2006-04-24  Karl Berry  <karl@gnu.org>
23168
23169         * config/srclist.txt (longdouble.m4): sync lost.
23170
23171 2006-04-24  Eric Blake  <ebb9@byu.net>
23172
23173         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
23174
23175 2006-04-24  Bruno Haible  <bruno@clisp.org>
23176
23177         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
23178         poll() implementation in AIX.
23179         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23180
23181 2006-04-24  Bruno Haible  <bruno@clisp.org>
23182
23183         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
23184         assigned exactly once.
23185
23186 2006-04-23  Claudio Fontana  <claudio@gnu.org>
23187             Bruno Haible  <bruno@clisp.org>
23188
23189         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
23190         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
23191         for AM_CPPFLAGS.
23192
23193 2006-04-23  Bruno Haible  <bruno@clisp.org>
23194
23195         * modules/copy-file: Depend on unistd.
23196         * modules/execute: Likewise.
23197         * modules/fatal-signal: Likewise.
23198         * modules/findprog: Likewise.
23199         * modules/mkdtemp : Likewise.
23200         * modules/pipe: Likewise.
23201         * modules/wait-process: Likewise.
23202
23203 2006-04-23  Bruno Haible  <bruno@clisp.org>
23204
23205         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
23206         condition was already detected.
23207         Reported by Ben Pfaff <blp@cs.stanford.edu>.
23208
23209 2006-04-23  Bruno Haible  <bruno@clisp.org>
23210
23211         * lib/copy-file.c: Include <unistd.h> unconditionally.
23212         * lib/execute.c: Likewise.
23213         * lib/fatal-signal.c: Likewise.
23214         * lib/findprog.c: Likewise.
23215         * lib/mkdtemp.c: Likewise.
23216         * lib/pipe.h: Likewise.
23217         * lib/pipe.c: Likewise.
23218         * lib/wait-process.h: Likewise.
23219
23220 2006-04-23  Bruno Haible  <bruno@clisp.org>
23221
23222         * gnulib-tool (func_usage): Fix --import description. Document
23223         --update.
23224         (func_import): Create temporary file in a temporary directory, if
23225         --dry-run is specified. Silence errors from 'grep' when there are no
23226         m4 files in $m4dir.
23227         (func_create_testdir): Silence errors from 'grep' when there are no
23228         m4 files in $m4dir.
23229         Reported by Karl Berry <karl@freefriends.org>.
23230
23231 2006-04-20  Bruno Haible  <bruno@clisp.org>
23232
23233         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
23234         one argument, so that the code will be portable to Autoconf 2.60.
23235         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
23236         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
23237         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
23238
23239 2006-04-19  Derek Price  <derek@ximbiot.com>
23240             Eric Blake  <ebb9@byu.net>
23241
23242         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
23243         rather than "/full/path.h".  Update comment to match.  Shorten &
23244         generalize m4_translit call via AS_TR_CPP.
23245
23246 2006-04-19  Derek Price  <derek@ximbiot.com>
23247             Eric Blake  <ebb9@byu.net>
23248
23249         * lib/inttypes.h: Correct grammar in comment.
23250
23251 2006-04-18  Derek Price  <derek@ximbiot.com>
23252             Paul Eggert  <eggert@cs.ucla.edu>
23253
23254         * modules/inttypes: New file.
23255         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
23256
23257 2006-04-18  Derek Price  <derek@ximbiot.com>
23258             Paul Eggert  <eggert@cs.ucla.edu>
23259
23260         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
23261         New files.
23262
23263 2006-04-18  Derek Price  <derek@ximbiot.com>
23264             Paul Eggert  <eggert@cs.ucla.edu>
23265
23266         * lib/inttypes.h: New file.
23267         * lib/strtoimax.c: Assume <inttypes.h>.
23268
23269 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
23270
23271         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
23272         isn't mounted.  Problem reported by Kir Kolyshkin.
23273
23274 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
23275
23276         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
23277         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
23278         Derek R. Price.
23279         * lib/regex.h (RE_DUP_MAX): Update comment to match current
23280         implementation.
23281
23282 2006-04-12  Eric Blake  <ebb9@byu.net>
23283
23284         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
23285         is now done automatically by the corresponding Autoconf macro.
23286
23287 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
23288
23289         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
23290         time_r.h.
23291
23292 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23293
23294         Merge regex changes from libc, removing some of our
23295         POSIX-conformance changes that were rejected and redoing them in a
23296         less-intrusive way.
23297
23298         * lib/regcomp.c (re_compile_internal, init_dfa):
23299         Length arg is now size_t, not Idx.  All uses changed.
23300         (peek_token): Forward decl now says internal_function.
23301         (__re_error_msgid, __re_error_msgid_idx):
23302         Now static rather than extern with attribute_hidden.
23303         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
23304         For some reason libc prefers K&R style defns for external functions.
23305         (regerror) [!defined _LIBC]: Likewise.
23306         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
23307         (seek_collating_symbol_entry, lookup_collation_sequence_value):
23308         (build_range_exp, build_collating_symbol):
23309         Use K&R-style defn.
23310         (re_compile_fastmap): Use '\0' to memset, not 0.
23311         (utf8_sb_map): Make the calculations more obvious.
23312         (init_dfa, parse_bracket_exp, build_charclass_op):
23313         Call calloc and cast result, as glibc does.
23314         (init_word_char, fetch_token, peek_token, peek_token_bracket):
23315         (build_range_exp, build_collating_symbol):
23316         Now internal functions.
23317
23318         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
23319
23320         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
23321         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
23322         Don't depend on VMS; depend on __VMS instead, for POSIX
23323         namespace cleanness.
23324         (regoff_t): Define to ssize_t, not long int.
23325
23326         Remove the REG_ macros named below.  Instead, make the old names
23327         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
23328         __USE_GNU_REGEX.
23329         (REG_BACKSLASH_ESCAPE_IN_LISTS):
23330         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
23331         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
23332         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
23333         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
23334         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
23335         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
23336         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
23337         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
23338         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
23339         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
23340         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
23341         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
23342         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
23343         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
23344         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
23345         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
23346         (REG_NREGS):
23347         Remove.  All uses replaced by the old RE_* names.
23348         (RE_BACKSLASH_ESCAPE_IN_LISTS):
23349         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
23350         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
23351         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
23352         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
23353         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
23354         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
23355         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
23356         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
23357         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
23358         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
23359         Don't bother having these macros be independent of each others'
23360         values, since they no longer exist in the POSIX name space.
23361
23362         Rename the following member names back to their old names,
23363         unless !__USE_GNU_REGEX.  All uses changed back.
23364         (buffer): Renamed from re_buffer.
23365         (allocated): Renamed from re_allocated.
23366         (used): Renamed from re_used.
23367         (syntax): Renamed from re_syntax.
23368         (fastmap): Renamed from re_fastmap.
23369         (translate): Renamed from re_translate.
23370         (can_be_null): Renamed from re_can_be_null.
23371         (regs_allocated): Renamed from re_regs_allocated.
23372         (fastmap_accurate): Renamed from re_fastmap_accurate.
23373         (no_sub): Renamed from re_no_sub.
23374         (not_bol): Renamed from re_not_bol.
23375         (not_eol): Renamed from re_not_eol.
23376         (newline_anchor): Renamed from re_newline_anchor.
23377         (num_regs): Renamed from rm_num_regs.
23378         (start): Renamed from rm_start.
23379         (end): Renamed from rm_end.
23380
23381         (free_state): Move up a bit.
23382
23383         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
23384         #define to be empty.
23385         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
23386         when that is what is intended.
23387         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
23388         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
23389         (MAX): New macro.
23390         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
23391         All uses changed back to re_malloc, etc.  It's now the caller's
23392         responsibility to check for overflow; all callers changed.
23393         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
23394         (re_x2nrealloc): Remove.
23395         (free_state): Remove decl.
23396
23397         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
23398         (re_set_registers, re_exec):
23399         Use K&R-style defn.
23400
23401         2006-01-31  Roland McGrath  <roland@redhat.com>
23402
23403         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
23404         Reported by Mike Frysinger <vapier@gentoo.org>.
23405
23406         2006-01-15  Andreas Jaeger  <aj@suse.de>
23407
23408         [BZ #1950]
23409         * lib/regex_internal.c (re_string_reconstruct): Adjust for
23410         build_wcs_upper_buffer change.
23411         (build_wcs_upper_buffer): Change return type.
23412
23413         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
23414
23415         * lib/regex_internal.h: Include <stdint.h> if available.
23416
23417         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
23418
23419         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
23420
23421         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
23422
23423         * lib/regcomp.c: Adjust for changed secondary hash function.
23424
23425         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
23426
23427         * lib/regex.h: Pretty printing.
23428         Clean up namespace a bit.
23429
23430         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
23431
23432         * lib/regexec.c (update_cur_sifted_state, check_arrival,
23433         check_arrival_add_next_nodes): Avoid using uninitialized variable.
23434
23435         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
23436                     Ulrich Drepper  <drepper@redhat.com>
23437
23438         [BZ #1302]
23439         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
23440         changed.
23441         (bitset_word_t): Renamed from bitset_word.  All uses changed.
23442
23443         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
23444
23445         [BZ #281]
23446         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
23447         * lib/regcomp.c: Remove unnecessary uses of
23448         unsigned RE_TRANSLATE_TYPE.
23449         * lib/regex_internal.h: Likewise.
23450         * lib/regex_internal.c: Likewise.
23451         * lib/regexec.c: Likewise.
23452         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
23453
23454         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
23455
23456         * lib/regexec.c (find_recover_state): Remove unnecessary
23457         initialization.
23458         (transit_state_bkref): Make DFA a const pointer.
23459         (get_subexp): Likewise.
23460         (check_arrival): Likewise.
23461         (update_cur_sifted_state): Likewise.
23462         (re_search_internal): Likewise.
23463         (prune_impossible_nodes): Likewise.
23464         (acquire_init_state_context): Likewise.
23465         (proceed_next_node): Likewise.
23466         (set_regs): Likewise.
23467         (free_fail_stack_return): Likewise.
23468         (check_arrival_expand_ecl): Mark DFA parameter as const.
23469         (check_arrival_expand_ecl_sub): Likewise.
23470         (check_subexp_limits): Likewise.
23471         (sub_epsilon_src_nodes):  Likewise.
23472         (add_epsilon_src_nodes):  Likewise.
23473         (merge_state_array): Likewise.
23474         (update_regs): Likewise.
23475         (build_trtable): Likewise.
23476         (sift_states_backward): Mark MCTX parameter as const.
23477         (build_sifted_states): Likewise.
23478         (update_cur_sifted_state): Likewise.
23479         (sift_states_mkref): Likewise.
23480         (check_arrival_expand_ecl): Mark eclosure as const.
23481         (check_dst_limits_calc_pos_1): Likewise.
23482         * lib/regex_internal.h (re_match_context_t): Make dfa a const
23483         pointer.
23484
23485         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
23486
23487         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
23488         (transit_state_sb): Likewise.
23489         (transit_state_mb): Likewise.
23490         (sift_states_iter_mb): Likewise.
23491         (check_arrival_add_next_nodes): Likewise.
23492         (check_node_accept_bytes): Change first parameter to pointer-to-const.
23493         [_LIBC] (re_search_2_stub): Use mempcpy.
23494
23495         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
23496         mbrtowc for very simple UTF-8 case.
23497
23498         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
23499         a pointer-to-const.
23500         (re_acquire_state_context): Likewise.
23501         * lib/regex_internal.h: Adjust prototypes.
23502
23503         * lib/regex.c: Prevent using C++ compilers.
23504
23505         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
23506         (re_acquire_state_context): Likewise.
23507
23508 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23509
23510         * modules/regex (Depends-on): Add ssize_t.
23511
23512 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23513
23514         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
23515         translation table.
23516
23517 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
23518
23519         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
23520
23521 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
23522             Bruno Haible  <bruno@clisp.org>
23523
23524         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
23525         <sys/types.h> and <inttypes.h>.
23526
23527 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23528
23529         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
23530         `__error_t_defined', so argp.h will not typedef the former.
23531
23532 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
23533
23534         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
23535         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
23536         glibc names.  Even if glibc is changed to conform to POSIX, the
23537         traditional names will be available anyway, since regex depends on
23538         the extensions module.  Also, fix a longstanding typo in the
23539         implementation of Spencer ERE test #75 from grep 2.3.  Problems
23540         reported by Emanuele Giaquinta.  Also, change sense of cached
23541         variable, so that the message makes sense.
23542
23543 2006-03-24  Simon Josefsson  <jas@extundo.com>
23544
23545         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
23546         including some doc fixes.
23547         (base64_encode_alloc): Fix +1 bug on allocation failures.
23548
23549 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23550
23551         * lib/base64.c (base64_encode): Do not read past end of array with
23552         unsanitized input on systems with CHAR_BIT > 8.
23553
23554 2006-03-24  Eric Blake  <ebb9@byu.net>
23555
23556         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
23557
23558 2006-03-22  Karl Berry  <karl@gnu.org>
23559
23560         * config/srclist.txt (*setenv.[ch]): get from coreutils.
23561         * config/srclistvars.sh (COREUTILS): new var.
23562
23563 2006-03-17  Jim Meyering  <jim@meyering.net>
23564
23565         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
23566         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
23567
23568 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23569
23570         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
23571         no longer needs it.  Instead, check that regoff_t is as least
23572         as wide as ptrdiff_t.
23573
23574         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
23575         so that our regex.h stays compatible with the installed regex.
23576         This is helpful for installers who configure --without-included-regex.
23577         Problem reported by Emanuele Giaquinta.
23578
23579 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
23580
23581         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
23582         Typedef to long int, not to off_, as POSIX will likely change
23583         in that direction.
23584
23585 2006-03-15  Eric Blake  <ebb9@byu.net>
23586
23587         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
23588
23589 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
23590
23591         * lib/argp-help.c (validate_uparams): Fix typo
23592         * lib/argp-parse.c (argp_default_options): Consistently begin help
23593         messages with a lowercase letter.
23594
23595 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
23596
23597         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
23598         overrun buffers and shouldn't be used (much as gets shouldn't be
23599         used).
23600         * lib/time_r.c (asctime_r, ctime_r): Likewise.
23601
23602 2006-03-08  Simon Josefsson  <jas@extundo.com>
23603
23604         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
23605         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23606
23607 2006-03-08  Simon Josefsson  <jas@extundo.com>
23608
23609         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
23610         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23611
23612 2006-03-08  Simon Josefsson  <jas@extundo.com>
23613
23614         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
23615         signal that configure disabled the device.
23616
23617 2006-03-08  Simon Josefsson  <jas@extundo.com>
23618
23619         * build-aux/maint.mk: Fix refresh-po, to handle no translated
23620         languages.
23621
23622 2006-03-07  Simon Josefsson  <jas@extundo.com>
23623
23624         * modules/getopt (Depends-on): Add unistd.
23625
23626         * modules/unistd: New file.
23627
23628 2006-03-07  Simon Josefsson  <jas@extundo.com>
23629
23630         * modules/gc-random: New file.
23631
23632 2006-03-07  Simon Josefsson  <jas@extundo.com>
23633
23634         * m4/unistd_h.m4: New file.
23635
23636 2006-03-07  Simon Josefsson  <jas@extundo.com>
23637
23638         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
23639         test to be side-effect free by storing the result in the cache
23640         variable gl_cv_lib_readline, and moving the assignment of
23641         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
23642         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
23643
23644 2006-03-07  Simon Josefsson  <jas@extundo.com>
23645
23646         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
23647         error on missing devices (the functions will return an error).
23648
23649         * m4/gc.m4: Move random stuff to gc-random.m4
23650
23651 2006-03-07  Simon Josefsson  <jas@extundo.com>
23652
23653         * lib/unistd_.h: New file.
23654
23655 2006-03-07  Simon Josefsson  <jas@extundo.com>
23656
23657         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
23658
23659 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23660
23661         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
23662         Problem reported by Juan Manuel Guerrero.
23663
23664 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23665
23666         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
23667         the unistd module.
23668         * lib/getlogin_r.c: Likewise.
23669         * lib/getlogin_r.h: Likewise.
23670         * lib/glob.c: Likewise.
23671         * lib/pagealign_alloc.c: Likewise.
23672         * lib/unistd_.h: Remove; no longer needed.
23673
23674 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
23675
23676         * MODULES.html.sh (Support for systems lacking POSIX:2001):
23677         Add unistd.
23678         * modules/c-stack (Depends-on): Add unistd.
23679         * modules/getlogin_r: Likewise.
23680         * modules/glob: Likewise.
23681         * modules/pagealign_alloc: Likewise.
23682         * modules/unistd (Files): Remove lib/unistd_.h.
23683         (EXTRA_DIST): Remove.
23684         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
23685         need unistd_.h.
23686         (MOSTLYCLEANFILES): Remove unistd.h-t.
23687
23688 2006-03-03  Simon Josefsson  <jas@extundo.com>
23689
23690         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
23691
23692 2006-03-03  Simon Josefsson  <jas@extundo.com>
23693
23694         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
23695         libidn and bison.
23696
23697 2006-03-03  Simon Josefsson  <jas@extundo.com>
23698
23699         * build-aux/maint.mk: Add indent target.
23700
23701 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
23702
23703         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
23704         our replacement poll.h in any case, to avoid a differing
23705         declaration from a system header.  Seen on AIX.
23706
23707 2006-03-01  Simon Josefsson  <jas@extundo.com>
23708
23709         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
23710         <kasal@ucw.cz>.
23711
23712 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23713
23714         * modules/gettime (Depends-on): Add extensions module.
23715         * modules/nanosleep (Depends-on): Likewise.
23716         * modules/settime (Depends-on): Likewise.
23717
23718 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23719
23720         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
23721         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
23722         pedantically.
23723         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
23724         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
23725
23726         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
23727         not "==".  Reported by Ralf Wildenhues.
23728
23729 2006-03-01  Karl Berry  <karl@gnu.org>
23730
23731         * doc/Copyright/request-*: new files, synced from gnuorg.
23732
23733 2006-03-01  Karl Berry  <karl@gnu.org>
23734
23735         * config/srclist.txt (Copyright/*): new entries.
23736
23737 2006-02-28  Simon Josefsson  <jas@extundo.com>
23738
23739         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
23740
23741 2006-02-27  Simon Josefsson  <jas@extundo.com>
23742
23743         * lib/base64.h: Indent #define's.  From Jim Meyering
23744         <jim@meyering.net>.
23745
23746 2006-02-27  Jim Meyering  <jim@meyering.net>
23747
23748         Revert the change of 2006-02-24, so these files can continue
23749         to be sync'd from gettext.
23750         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
23751         of `config.h'.
23752
23753 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
23754
23755         * modules/intprops: New file.
23756         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
23757         Add intprops.
23758         * modules/getloadavg (Files): Remove lib/intprops.h.
23759         (Depends-on): Add intprops.
23760         * modules/human: Likewise.
23761         * modules/inttostr: Likewise.
23762         * modules/openat: Likewise.
23763         * modules/sig2str: Likewise.
23764         * modules/userspec: Likewise.
23765         * modules/utimecmp: Likewise.
23766         * modules/xnanosleep: Likewise.
23767         * modules/xstrtol: Likewise.
23768
23769 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
23770
23771         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
23772         * modules/lock-tests (TESTS): Use $(EXEEXT).
23773         * modules/tls-tests: Likewise.
23774         * modules/argp-tests: Likewise.
23775         (check_PROGRAMS): New var, replacing...
23776         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
23777
23778 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23779
23780         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
23781         `config.h'.
23782
23783 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
23784
23785         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
23786
23787 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23788
23789         Sync from coreutils.
23790         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
23791         gl_CHDIR_SAFER.
23792
23793 2006-02-22  Jim Meyering  <jim@meyering.net>
23794
23795         Sync from coreutils.
23796         * m4/chdir-safer.m4: New file.
23797
23798 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
23799
23800         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
23801         AT_FDCWD exceeds INT_MAX.
23802         * lib/openat.h (AT_FDCWD): Likewise.
23803
23804 2006-02-17  Eric Blake  <address@hidden>
23805
23806         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
23807
23808 2006-02-16  Simon Josefsson  <jas@extundo.com>
23809
23810         * modules/getaddrinfo (Depends-on): Add sys_socket.
23811
23812 2006-02-15  Simon Josefsson  <jas@extundo.com>
23813
23814         * build-aux/maint.mk: Add dsyntax-check rule.
23815
23816 2006-02-15  Eric Blake  <ebb9@byu.net>
23817
23818         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
23819         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
23820         'present but cannot compile' warnings on cygwin.
23821         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
23822         use ws2tcpip.h if sys/socket.h works.
23823         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
23824         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
23825
23826 2006-02-14  Simon Josefsson  <jas@extundo.com>
23827
23828         * modules/maintainer-makefile (Files): Rename.
23829
23830         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
23831         and (the local) Makefile.cfg to maint-cfg.mk.
23832
23833         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
23834         to the latter.
23835
23836         * modules/maintainer-makefile: New module.
23837
23838         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
23839         severaly stripped to make it possible to build it up from scratch
23840         with reliable tests.
23841
23842         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
23843         fixes to permit overriding the default actions when configure and
23844         makefile are not available.
23845
23846 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
23847
23848         Sync from coreutils.
23849         * modules/lstat (Depends-on): Don't depend on xalloc.
23850         (License): Change from GPL to LGPL, since this is now simply a
23851         replacement for a libc function.
23852
23853 2006-02-14  Jim Meyering  <jim@meyering.net>
23854
23855         Sync from coreutils.
23856
23857         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
23858         failure on deficient systems, and simplify gnulib lgpl dependencies.
23859         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
23860         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
23861
23862         * lib/xalloc-die.c: Remove unused definition of N_.
23863
23864 2006-02-14  Jim Meyering  <jim@meyering.net>
23865
23866         Sync from coreutils.
23867         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
23868         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
23869         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
23870         double-quote uses of that variable, to accommodate the rare case in
23871         which getmntent is available in none of the libraries checked.  This
23872         happens at least on FreeBSD 5.0.
23873
23874 2006-02-13  Simon Josefsson  <jas@extundo.com>
23875
23876         * gnulib-tool (Usage): Fix --import, from
23877         karl@freefriends.org (Karl Berry).
23878
23879 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
23880
23881         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
23882
23883 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
23884
23885         * lib/argp-namefrob.h: Restore changes accidentally lost during the
23886         "autoupdate" on 2005-12-12.
23887
23888 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
23889
23890         * modules/closeout (Depends-on): Remove atexit.
23891
23892 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
23893
23894         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
23895         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
23896
23897 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
23898
23899         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
23900         __EXTENSIONS__ if this causes compilation to fail.  Problem
23901         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
23902         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
23903
23904 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
23905
23906         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
23907         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
23908         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
23909         All uses changed.
23910
23911 2006-01-26  Simon Josefsson  <jas@extundo.com>
23912
23913         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
23914         prototype is visible on mingw32.
23915
23916         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
23917         for mingw32.
23918
23919         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
23920         mingw32).
23921
23922 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
23923
23924         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
23925         attempt to open for write; this always fails, at least on POSIX
23926         hosts.  This reinstates the 2006-01-09 change, which was
23927         inadvertently removed.
23928
23929 2006-01-26  Bruno Haible  <bruno@clisp.org>
23930
23931         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
23932         Reported by Paul Eggert.
23933
23934 2006-01-26  Bruno Haible  <bruno@clisp.org>
23935             Paul Eggert  <eggert@cs.ucla.edu>
23936
23937         * lib/stdbool_.h (_Bool)
23938         [(! (defined __cplusplus || defined __BEOS__)
23939           && !defined __GNUC__
23940           && !(defined __HP_cc || defined __xlc__
23941                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
23942                || defined __sgi))]:
23943         #define to signed char in these cases too; this simplifies
23944         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
23945         etc., separately) and makes it more conservative.
23946
23947 2006-01-25  Simon Josefsson  <jas@extundo.com>
23948
23949         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
23950         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
23951         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
23952
23953 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
23954
23955         * lib/argp-namefrob.h: Bugfix. Remove stray #
23956
23957 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
23958
23959         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
23960         so that we test the test.
23961         Check for yet another HP-UX cc bug involving *bool |= bool.
23962
23963 2006-01-25  Karl Berry  <karl@gnu.org>
23964
23965         * config/srclist.txt (vasnprintf.c): sync lost.
23966
23967 2006-01-25  Jim Meyering  <jim@meyering.net>
23968
23969         Sync from the stable (b5) branch of coreutils:
23970
23971         * lib/fts.c (fts_children): Don't let close() clobber errno from
23972         failed fchdir().
23973
23974         * lib/fts.c (fts_stat): When following a symlink-to-directory,
23975         don't necessarily interpret stat-fails+lstat-succeeds as indicating
23976         a dangling symlink.  That can also happen at least for ELOOP.
23977         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
23978         FYI, this bug predates the inclusion of fts.c in coreutils.
23979
23980         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
23981         in their own block, so pre-c99 compilers don't object.
23982
23983         Avoid the double-free (first in fts_read, second in fts_close) that
23984         would occur when an `active' directory is made inaccessible (e.g.,
23985         via chmod a-x) during a traversal.
23986         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
23987         before returning.  Reproduce this failure by
23988         mkdir -p a/b; cd a; chmod a-x . b
23989         Reported by Stavros Passas.
23990
23991 2006-01-25  Jim Meyering  <jim@meyering.net>
23992
23993         * lib/fileblocks.c: Remove more useless parentheses.
23994         * lib/readutmp.h: Likewise.
23995
23996 2006-01-25  Bruno Haible  <bruno@clisp.org>
23997
23998         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
23999         warnings.
24000         Reported by Paul Eggert.
24001
24002 2006-01-25  Bruno Haible  <bruno@clisp.org>
24003
24004         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
24005         rid of a trap command. For Solaris sh.
24006         Reported by Mark D. Baushke <mdb@gnu.org>.
24007
24008 2006-01-24  Simon Josefsson  <jas@extundo.com>
24009
24010         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
24011         Bruno.
24012
24013 2006-01-24  Karl Berry  <karl@gnu.org>
24014
24015         * config/srclist.txt (argp-namefrob.h): sync lost.
24016
24017 2006-01-24  Jim Meyering  <jim@meyering.net>
24018
24019         * modules/openat (Files): Add lib/intprops.h.
24020         From Mark D. Baushke.
24021
24022 2006-01-24  Jim Meyering  <jim@meyering.net>
24023
24024         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
24025         Reported by Mark D. Baushke.
24026
24027 2006-01-24  Jim Meyering  <jim@meyering.net>
24028
24029         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
24030
24031 2006-01-24  Bruno Haible  <bruno@clisp.org>
24032
24033         * modules/strnlen (Maintainer): Change from glibc to all.
24034
24035 2006-01-24  Bruno Haible  <bruno@clisp.org>
24036
24037         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
24038         Patch by Paul Eggert.
24039
24040 2006-01-24  Bruno Haible  <bruno@clisp.org>
24041
24042         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
24043         already has it.
24044         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
24045         2005-11-26.
24046
24047         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
24048         'signed char' to avoid problems with the built-in _Bool type.
24049         Reported by Paul Eggert on 2005-11-26.
24050
24051 2006-01-24  Bruno Haible  <bruno@clisp.org>
24052
24053         * gnulib-tool (func_import): Avoid constructing complicated sed
24054         expressions inside backquote.
24055         Report and solution by Mark D. Baushke <mdb@gnu.org>.
24056
24057 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
24058
24059         These changes imported from libc.
24060         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
24061         test and two separate function calls.
24062         * lib/strndup.c (__strndup): Add libc_hidden_def.
24063
24064 2006-01-23  Simon Josefsson  <jas@extundo.com>
24065
24066         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
24067         Remove the test_*_SOURCES variable: automake infers it by default.
24068         * modules/tls-tests: Likewise.
24069
24070 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24071
24072         Work around porting bugs reported by Dieter in
24073         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
24074         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
24075         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
24076         Include "getopt.h" first, to check interface.
24077         (getenv): Declare only if defined HAVE_DECL_GETENV &&
24078         !HAVE_DECL_GETENV.
24079         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
24080         (__strndup): Revert to K&R-style function dfns, the glibc style.
24081         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
24082         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
24083         Include strnlen.h first, to get prototype properly.
24084         (strnlen): Renamed from __strnlen.
24085         Remove weak alias.
24086
24087 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24088
24089         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
24090
24091 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24092
24093         * config/srclist.txt: Adjust to reflect glibc reorganization.
24094         This affects only comments.
24095
24096 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
24097
24098          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
24099          Reported by Bruce Korb <bkorb@gnu.org>.
24100
24101 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
24102
24103         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
24104         to pacify gcc -Wswitch-default.
24105
24106 2006-01-22  Bruno Haible  <bruno@clisp.org>
24107
24108         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
24109         temporary buffer for sprintf, take into account the precision also
24110         for 'd', 'i', 'u', 'o', 'x', 'X'.
24111
24112 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
24113
24114         * modules/argp-tests: New module
24115         * tests/test-argp.c: New file
24116         * tests/test-argp-2.sh: New file
24117
24118 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
24119
24120         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
24121         (__argp_base_name): Removed
24122         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
24123         typo.
24124         (__argp_base_name): Provide macro definition or extern declaration
24125         depending on the configuration
24126
24127 2006-01-20  Simon Josefsson  <jas@extundo.com>
24128
24129         * modules/inet_ntop (Depends-on): Depend on sys_socket.
24130
24131 2006-01-20  Simon Josefsson  <jas@extundo.com>
24132
24133         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
24134
24135 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
24136
24137         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
24138         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
24139         Suggested by Bruno Haible.
24140
24141 2006-01-20  Karl Berry  <karl@gnu.org>
24142
24143         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
24144         until changes propagate, I guess.
24145
24146 2006-01-19  Simon Josefsson  <jas@extundo.com>
24147
24148         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
24149
24150 2006-01-19  Simon Josefsson  <jas@extundo.com>
24151
24152         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
24153
24154 2006-01-19  Simon Josefsson  <jas@extundo.com>
24155
24156         * gnulib-tool: Set check_PROGRAMS.
24157
24158         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
24159         modules/des-tests, modules/gc-arcfour-tests,
24160         modules/gc-arctwo-tests, modules/gc-des-tests,
24161         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
24162         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
24163         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
24164         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
24165         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
24166         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
24167         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
24168         test_*_SOURCES.
24169
24170 2006-01-18  Simon Josefsson  <jas@extundo.com>
24171
24172         * modules/socklen (Depends-on): Depend on sys_socket.
24173
24174 2006-01-18  Simon Josefsson  <jas@extundo.com>
24175
24176         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
24177         modules/des-tests, modules/gc-arcfour-tests,
24178         modules/gc-arctwo-tests, modules/gc-des-tests,
24179         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
24180         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
24181         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
24182         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
24183         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
24184         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
24185         $(EXEEXT) to automake TESTS variable, for mingw32.
24186
24187 2006-01-17  Simon Josefsson  <jas@extundo.com>
24188
24189         * modules/socklen (Include): Need sys/socket.h.
24190
24191 2006-01-17  Bruno Haible  <bruno@clisp.org>
24192
24193         * modules/ssize_t (Include): Add <sys/types.h>.
24194
24195 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
24196
24197         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
24198         it's not portable and it doesn't work with cross-compiles.
24199         Problem reported by Bruno Haible.  Fix missing-$ typo in
24200         'test "gl_cv_ignore_unused_libraries" ...' that prevented
24201         -zignore from being used with Sun's C compiler.
24202
24203 2006-01-12  Simon Josefsson  <jas@extundo.com>
24204
24205         * lib/base64.c: Fix warning, reported by Bruno Haible
24206         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
24207
24208 2006-01-12  Bruno Haible  <bruno@clisp.org>
24209
24210         * modules/ldd: New file.
24211         * build-aux/ldd.sh.in: New file.
24212         * MODULES.html.sh (Support for building libraries and executables): Add
24213         ldd.
24214
24215 2006-01-12  Bruno Haible  <bruno@clisp.org>
24216
24217         * m4/ldd.m4: New file.
24218
24219 2006-01-12  Bruno Haible  <bruno@clisp.org>
24220
24221         * gnulib-tool (func_import, func_create_testdir): Don't go into an
24222         endless loop while replacing $auxdir with build-aux.
24223
24224 2006-01-11  Simon Josefsson  <jas@extundo.com>
24225
24226         * lib/stdint_.h (SIZE_MAX): Add missing (.
24227
24228 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
24229
24230         Sync from coreutils.
24231         * lib/md5.c: Fix commentary typos.
24232         (alignof, UNALIGNED_P): No need for a GCC-specific version.
24233         * lib/md5.h (__attribute__): Remove; unused.
24234         * lib/sha1.c: Fix commentary to match md5 better.
24235         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
24236         so that we don't need to worry about alignment.  All uses changed.
24237         This merges the 2005-10-28 md5 change into sha1.
24238
24239 2006-01-11  Jim Meyering  <jim@meyering.net>
24240
24241         Sync from coreutils.
24242         * lib/md5.c (OP): Fix spacing.
24243
24244 2006-01-11  Bruno Haible  <bruno@clisp.org>
24245
24246         Ensure automatic ordering between gl_LOCK and gl_ARGP.
24247         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
24248         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
24249
24250 2006-01-11  Bruno Haible  <bruno@clisp.org>
24251
24252         Ensure automatic ordering between gl_LOCK and gl_ARGP.
24253         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
24254         the "early" section as well.
24255
24256 2006-01-11  Bruno Haible  <bruno@clisp.org>
24257
24258         Avoid "ar: no archive members specified" error on MacOS X.
24259         * gnulib-tool (func_modules_add_dummy): New function.
24260         (func_import, func_create_testdir): Invoke it.
24261
24262 2006-01-11  Bruno Haible  <bruno@clisp.org>
24263
24264         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
24265         with $auxdir in AC_CONFIG_FILES statements.
24266
24267 2006-01-11  Bruno Haible  <bruno@clisp.org>
24268
24269         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24270         Initialize also noinst_HEADERS to empty.
24271
24272 2006-01-11  Bruno Haible  <bruno@clisp.org>
24273
24274         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
24275         variables.
24276         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
24277         autoreconf.
24278
24279 2006-01-11  Bruno Haible  <bruno@clisp.org>
24280
24281         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
24282         overridable by the user.
24283         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24284
24285 2006-01-10  Simon Josefsson  <jas@extundo.com>
24286
24287         * modules/sys_socket: New file.
24288
24289 2006-01-10  Simon Josefsson  <jas@extundo.com>
24290
24291         * m4/sys_socket_h.m4: New file.
24292
24293 2006-01-10  Simon Josefsson  <jas@extundo.com>
24294
24295         * lib/socket_.h: New file.
24296
24297 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24298
24299         * modules/readutmp (Maintainer): Add myself.
24300
24301 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24302
24303         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
24304         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
24305         People who are still concerned with buggy memcmp implementations
24306         can invoke gl_FUNC_MEMCMP themselves.
24307
24308 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24309
24310         * lib/regex_internal.h (BITSET_WORD_BITS):
24311         Work around a bug in 64-bit PGC (before version 6.1-2), where the
24312         preprocessor mishandles large unsigned values as if they were signed.
24313         Problem reported by Claudio Fontana in
24314         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
24315
24316 2006-01-10  Jim Meyering  <jim@meyering.net>
24317
24318         Avoid the double-free (first in fts_read, second in fts_close) that
24319         would occur when an `active' directory is made inaccessible (e.g.,
24320         via chmod a-x) during a traversal.
24321         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
24322         before returning.  Reproduce this failure by
24323         mkdir -p a/b; cd a; chmod a-x . b
24324         Reported by Stavros Passas.
24325
24326         Sync from coreutils.
24327         * lib/sha1.c: Tweak grammar in a comment.
24328
24329 2006-01-10  Jim Meyering  <jim@meyering.net>
24330
24331         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
24332         Patch by Joerg Sonnenberger.
24333
24334 2006-01-10  Bruno Haible  <bruno@clisp.org>
24335
24336         * modules/readutmp: Depend on module free.
24337         * modules/strtok_r: Depend on module restrict.
24338
24339 2006-01-10  Bruno Haible  <bruno@clisp.org>
24340
24341         * modules/gettext (configure.ac): Add an invocation of
24342         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
24343
24344 2006-01-10  Bruno Haible  <bruno@clisp.org>
24345
24346         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
24347         Reported by Werner Lemberg <wl@gnu.org>.
24348
24349 2006-01-10  Bruno Haible  <bruno@clisp.org>
24350
24351         * lib/localcharset.c: Update from GNU gettext.
24352
24353 2006-01-10  Bruno Haible  <bruno@clisp.org>
24354
24355         * lib/argp.h (__const): Remove macro. Use const instead.
24356         * lib/argp-fmtstream.h (__const): Likewise.
24357         * lib/glob_.h (__const): Remove macro.
24358         * lib/glob-libc.h: Use const instead of __const.
24359
24360 2006-01-10  Bruno Haible  <bruno@clisp.org>
24361
24362         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
24363         variable.
24364         Needed to avoid an automake error regarding the 'gettext' module.
24365
24366 2006-01-09  Simon Josefsson  <jas@extundo.com>
24367
24368         * modules/inet_ntop (Depends-on): Add restrict.
24369
24370 2006-01-09  Simon Josefsson  <jas@extundo.com>
24371
24372         * modules/gc-rijndael-tests (License): Put under LGPL.
24373
24374         * modules/gc-des-tests (License): Likewise.
24375
24376         * modules/gc-arcfour-tests (License): Likewise.
24377
24378         * modules/gc-arctwo-tests (License): Likewise.
24379
24380         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
24381
24382         * modules/gc-hmac-sha1-tests (Files): Likewise.
24383
24384         * modules/gc-hmac-md5-tests (License): Likewise.
24385
24386         * modules/gc-sha1-tests (License): Likewise.
24387
24388         * modules/gc-md5-tests (License): Likewise.
24389
24390         * modules/gc-md4-tests (License): Likewise.
24391
24392         * modules/gc-md2-tests (License): Likewise.
24393
24394         * modules/gc-tests (License): Likewise.
24395
24396         * modules/des-tests (License): Likewise.
24397
24398         * modules/md4-tests (License): Likewise.
24399
24400         * modules/md2-tests (License): Likewise.
24401
24402 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24403
24404         Sync from coreutils:
24405
24406         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
24407         * modules/lib-ignore: New file.
24408         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
24409         chdir-safer.m4, lchmod.m4.
24410         * modules/openat: Add mkdirat.c, openat-priv.h.
24411
24412 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24413
24414         Sync from coreutils.
24415         * m4/lib-ignore.m4: New file.
24416         * m4/lchmod.m4: New file.
24417
24418 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24419
24420         Sync from coreutils.
24421         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
24422         for write access: POSIX says that must fail.
24423         * lib/fts.c (diropen): Likewise.
24424         * lib/save-cwd.c (save_cwd): Likewise.
24425         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
24426         well, for minor improvements on hosts that lack O_DIRECTORY.
24427         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
24428         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
24429         Fall back on chown if open failed with EACCES.
24430
24431         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
24432         Report an error at compile-time if only a 1-second nominal clock
24433         resolution is found.
24434
24435         * lib/lchmod.h: New file.
24436         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
24437         (make_dir_parents): Use lchown rather than chown, and
24438         lchmod rather than chmod.
24439
24440         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
24441         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
24442         "proc" reported by n0dalus.
24443
24444         * lib/mountlist.c: Include <limits.h>.
24445         (dev_from_mount_options)
24446         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
24447         New function.  It no longer assumes "dev=" has the System V meaning
24448         on Linux (since it doesn't).  It also parses "dev=" more carefully.
24449         (read_file_system_list)
24450         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
24451         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
24452         dev= in that case.
24453
24454         * lib/posixtm.h (PDS_PRE_2000): New macro.
24455         * lib/posixtm.c (year): Arg is now syntax_bits rather than
24456         allow_century.  All usages changed.  Reject dates outside the range
24457         1969-1999 if PDS_PRE_2000 is used.
24458
24459 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
24460
24461         Sync from coreutils.
24462         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
24463         (Time of day items): Mention the possibility of leap seconds.
24464         Problem reported by Dr. David Alan Gilbert.
24465
24466 2006-01-09  Jim Meyering  <jim@meyering.net>
24467
24468         Sync from coreutils.
24469
24470         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
24471
24472         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
24473
24474         * lib/modechange.c (mode_compile): Reject an invalid mode string
24475         that starts with an octal digit.  From Andreas Gruenbacher.
24476
24477         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
24478         and dup to open_safer and dup_safer, respectively.
24479         (openat_permissive): Fix typo in comment.
24480
24481         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
24482         "gettext.h"; either no longer needed or are guaranteed by openat.h.
24483         (_): Remove; no longer needed.
24484         (openat): Renamed from rpl_openat; no need for rpl_openat
24485         since openat.h renames openat for us.
24486         Replace most of the body with a call to openat_permissive,
24487         to avoid duplicate code.
24488         Port to (probably hypothetical) environments were mode_t is
24489         wider than int.
24490         (openat_permissive): Require mode arg, so that we can check
24491         types better.  Put it just after flags.  Change cwd failure
24492         indicator from pointer-to-bool to pointer-to-errno-value.
24493         All callers changed.
24494         Invoke openat_save_fail and/or openat_restore_fail if
24495         cwd_errno is null, so that openat can call us.
24496         (openat_permissive, fdopendir, fstatat, unlinkat):
24497         Simplify errno handling to avoid some duplicate code,
24498         as it's OK to set errno on success.
24499         * lib/openat.h: Revamp code so that function macros depend on
24500         __OPENAT_PREFIX only, not also on AT_FDCWD.
24501         (openat_ro): Remove.  Caller changed to use openat_permissive.
24502         (openat_permissive): Now a macro, if not a function.
24503         (openat_restore_fail, openat_save_fail): Now always functions,
24504         since mkdirat needs them even if __OPENAT_PREFIX is defined.
24505
24506         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
24507         and openat.c.
24508         * lib/mkdirat.c: Include openat-priv.h.
24509         Remove definitions of macros defined therein.
24510         * lib/openat.c: Likewise.
24511
24512         * lib/mkdirat.c (mkdirat): New file and function.
24513         * lib/openat.h (mkdirat): Declare.
24514
24515         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
24516
24517         * lib/openat.h (openat_permissive): Declare.
24518         (openat_ro): Define.
24519
24520         * lib/openat.c (EXPECTED_ERRNO): New macro.
24521         (openat_permissive): New function -- used in remove.c rewrite.
24522         (all functions): Set errno just before returning, only if there
24523         was an actual failure.
24524         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
24525
24526         Emulate openat-family functions using Linux's procfs, if possible.
24527         Idea and some code based on Ulrich Drepper's glibc changes.
24528
24529         * lib/openat.c: (BUILD_PROC_NAME): New macro.
24530         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
24531         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
24532         before falling back on save_cwd and restore_cwd.
24533         (fdopendir, fstatat, unlinkat): Likewise.
24534
24535         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
24536         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
24537
24538         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
24539         as second argument to va_arg.  Otherwise, some versions of gcc
24540         warn that `if this code is reached, the program will abort'.
24541
24542 2006-01-09  Jim Meyering  <jim@meyering.net>
24543
24544         Sync from coreutils.
24545         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
24546         Require openat-priv.h.
24547
24548 2006-01-09  Bruno Haible  <bruno@clisp.org>
24549
24550         * modules/strnlen (Include): Use strnlen.h.
24551
24552 2006-01-09  Bruno Haible  <bruno@clisp.org>
24553
24554         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
24555
24556 2006-01-09  Bruno Haible  <bruno@clisp.org>
24557
24558         * lib/sysexit_.h (EX_OK): New macro.
24559         Suggested by Martin Lambers <marlam@marlam.de>.
24560
24561 2006-01-09  Bruno Haible  <bruno@clisp.org>
24562
24563         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
24564         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
24565
24566 2006-01-09  Bruno Haible  <bruno@clisp.org>
24567
24568         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
24569         numbers.
24570
24571 2006-01-09  Bruno Haible  <bruno@clisp.org>
24572
24573         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
24574         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
24575         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
24576         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
24577
24578 2006-01-09  Bruno Haible  <bruno@clisp.org>
24579
24580         * build-aux/javacomp.sh.in: New file, moved from lib/.
24581         * modules/javacomp-script (Files): Update.
24582         (configure.ac): Add AC_CONFIG_FILES invocation.
24583         (EXTRA_DIST): Remove variable.
24584
24585         * build-aux/javaexec.sh.in: New file, moved from lib/.
24586         * modules/javaexec (Files): Update.
24587         (configure.ac): Add AC_CONFIG_FILES invocation.
24588         (EXTRA_DIST): Remove javaexec.sh.in.
24589
24590         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
24591         * modules/csharpcomp-script (Files): Update.
24592         (configure.ac): Add AC_CONFIG_FILES invocation.
24593         (EXTRA_DIST): Remove variable.
24594
24595         * build-aux/csharpexec.sh.in: New file, moved from lib/.
24596         * modules/csharpexec (Files): Update.
24597         (configure.ac): Add AC_CONFIG_FILES invocation.
24598         (EXTRA_DIST): Remove csharpexec.sh.in.
24599
24600 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24601
24602         Sync from coreutils.
24603
24604         Add POSIX ACL support
24605         * lib/acl.h (copy_acl, set_acl): Add declarations.
24606         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
24607         systems other than Linux.
24608         (chmod_or_fchmod): New function: use fchmod when possible,
24609         and chmod otherwise.
24610         (file_has_acl): Add a POSIX ACL implementation, with a
24611         Linux-specific subcase.
24612         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
24613         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
24614         acls are unsupported.
24615         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
24616         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
24617         are unsupported.
24618
24619 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
24620
24621         Sync from coreutils.
24622         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
24623
24624 2006-01-07  Bruno Haible  <bruno@clisp.org>
24625
24626         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
24627         gl_EARLY.
24628
24629 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24630
24631         * lib/strftime.c (tzname): Don't declare if it is already #defined.
24632         Problem reported for Mingw by Mark Junker.
24633
24634 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24635
24636         * README: Gnulib normally doesn't generate a tarball.
24637
24638 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
24639
24640         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
24641         long int, not int, for nanosecond counts, so that people who are
24642         used to POSIX struct timespec won't be surprised.  Reported by Jim
24643         Meyering.
24644
24645 2005-12-28  Bruno Haible  <bruno@clisp.org>
24646
24647         * build-aux/config.rpath: Update from GNU gettext.
24648
24649 2005-12-16  Jim Meyering  <jim@meyering.net>
24650
24651         * modules/fprintftime: New module.
24652         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
24653
24654 2005-12-16  Jim Meyering  <jim@meyering.net>
24655
24656         * m4/fprintftime.m4: New file.
24657
24658 2005-12-16  Jim Meyering  <jim@meyering.net>
24659
24660         * lib/fprintftime.c, lib/fprintftime.h: New files.
24661
24662 2005-12-15  Simon Josefsson  <jas@extundo.com>
24663
24664         * modules/socklen (configure.ac): Fix M4 macro name, to align with
24665         new m4/socklen.m4.
24666
24667 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24668
24669         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
24670         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
24671
24672 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
24673
24674         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
24675         * lib/argp-help.c (fill_in_uparams): Check if the constructed
24676         struct uparams is valid. Fall back to the default values if it is
24677         not.
24678
24679 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24680
24681         * modules/argp (Files): Add argp-pin.c
24682         (Depends-on): dirname
24683         (lib_SOURCES): Add argp-pin.c
24684
24685 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24686
24687         * m4/argp.m4:  Check if program_invocation_name and
24688         program_invocation_short_name are declared and define appropriate
24689         macros if they are not.
24690
24691 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
24692
24693         * lib/argp-help.c (__argp_base_name): New function
24694         (__argp_short_program_name): Rewrite using __argp_base_name
24695         * lib/argp-namefrob.h: Define program_invocation_name and
24696         program_invocation_short_name if requested
24697         (__argp_base_name): Add prototype
24698         * lib/argp-parse.c (argp_def): Use gettext wrappers
24699         (argp_default_parser): Use __argp_base_name
24700         * lib/argp-pin.c: New file. Defines program_invocation_name and
24701         program_invocation_short_name on systems that lack them.
24702
24703 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24704
24705         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
24706         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
24707         porting problem reported by Georg Schwarz in
24708         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
24709
24710 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24711
24712         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
24713         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
24714         porting problem reported by Georg Schwarz in
24715         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
24716
24717 2005-12-05  Bruno Haible  <bruno@clisp.org>
24718
24719         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
24720         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
24721         Reported by Mark Junker <mjscod@gmx.de>.
24722
24723 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
24724
24725         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
24726         Use implementation from Albert Chin, with some
24727         comments/corrections by Stepan Kasal and myself.
24728
24729 2005-12-02  Bruno Haible  <bruno@clisp.org>
24730
24731         * gnulib-tool (func_import): Accept GPLed build tool modules when
24732         --lgpl is given.
24733         * modules/csharpcomp-script: New file.
24734         * modules/csharpcomp: Depend on it.
24735         * modules/javacomp-script: New file.
24736         * modules/javacomp: Depend on it.
24737         Suggested by Simon Josefsson.
24738
24739 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
24740
24741         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
24742         statement, to work around an HP-UX 10.20 compiler bug reported by
24743         Peter O'Gorman.
24744
24745 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
24746
24747         * modules/savedir (Depends-on): Add openat.
24748
24749 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
24750
24751         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
24752         (uintmax_t) [defined uintmax_t]: Do not declare.
24753         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
24754         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
24755         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
24756         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
24757         sake of portability to weird hosts that C allows (though we don't
24758         know of any practical examples).
24759
24760         * lib/savedir.h (fdsavedir): New decl.
24761         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
24762         contains most of the former guts of savedir.
24763         (savedir): Use savedirstream.
24764         Include "openat.h".
24765
24766 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24767
24768         * modules/obstack (Files): Add m4/ulonglong.m4.
24769         Problem reported by Davide Angelocola.
24770
24771 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
24772
24773         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
24774         coreutils no longer futzes with rounding modes.
24775
24776 2005-11-14  Jim Meyering  <jim@meyering.net>
24777
24778         * lib/mkstemp-safer.c: Include <config.h>, required for possible
24779         replacement of mkstemp.
24780
24781 2005-11-10  Simon Josefsson  <jas@extundo.com>
24782
24783         * lib/readline.c: Remove EOL.
24784
24785 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24786
24787         * modules/gethrxtime (Depends-on): Add gettime.
24788
24789 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24790
24791         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
24792         or gettimeofday; no longer needed.
24793
24794 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24795
24796         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
24797         time business.
24798         (gethrxtime) [! (HAVE_NANOUPTIME
24799         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
24800         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
24801         our own approximation.
24802
24803 2005-11-08  Eric Blake  <ebb9@byu.net>
24804
24805         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
24806
24807 2005-11-08  Eric Blake  <ebb9@byu.net>
24808
24809         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
24810
24811 2005-11-04  Bruno Haible  <bruno@clisp.org>
24812
24813         * gnulib-tool: Implement --update mode.
24814
24815 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
24816
24817         Fix porting problem reported by Theodoros V. Kalamatianos.
24818         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
24819         Don't assume that futimes failing means we must fail.
24820
24821 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
24822
24823         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
24824         variables to suggest the intended function of the PATH_MAX check.
24825
24826 2005-10-30  Kean Johnston  <jkj@sco.com>
24827
24828         Trivial changes to support SCO systems.
24829         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
24830         as PATH_MAX.
24831         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
24832         where __ptr is null when no I/O is pending.
24833
24834 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24835
24836         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
24837         leave errno alone.  Problem reported by Dmitry V. Levin.
24838
24839 2005-10-28  Simon Josefsson  <jas@extundo.com>
24840
24841         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
24842         Test more.
24843
24844         * tests/test-gc-md2.c, tests/test-md2.c: New files.
24845
24846         * modules/md2, modules/md2-tests: New files.
24847
24848 2005-10-28  Simon Josefsson  <jas@extundo.com>
24849
24850         * m4/inet_ntop.m4: More tests.
24851
24852         * m4/gc-md2.m4, md2.m4: New file.
24853
24854 2005-10-28  Simon Josefsson  <jas@extundo.com>
24855
24856         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
24857         "restrict" keywords, as per POSIX.  Protect the function
24858         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
24859         Don't use K&R prototypes.  Check the sprintf return values.
24860         Re-define EAFNOSUPPORT if not present.  Indent.
24861
24862         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
24863         suggested by Bruno Haible <bruno@clisp.org>.
24864
24865         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
24866
24867         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
24868
24869         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
24870         libgcrypt).
24871
24872         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
24873
24874         * lib/md2.h, lib/md2.c: New files.
24875
24876 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
24877
24878         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
24879         errno alone.  Problem reported by Frederic Jolliton.
24880
24881 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
24882
24883         * modules/verify (License): Change from GPL to LGPL.  This is a
24884         tiny module and there are apparently near-equivalents that are
24885         under the BSD license.
24886
24887 2005-10-24  Simon Josefsson  <jas@extundo.com>
24888
24889         * modules/sha1: Relicense to LGPL.
24890
24891 2005-10-24  Simon Josefsson  <jas@extundo.com>
24892
24893         * lib/md4.h: Shrink buffer size, now that we changed the type.
24894
24895 2005-10-23  Simon Josefsson  <jas@extundo.com>
24896
24897         * gnulib-tool (func_import): Fix --tests-base.
24898
24899 2005-10-22  Simon Josefsson  <jas@extundo.com>
24900
24901         * modules/arcfour (Depends-on): Need stdint.
24902
24903 2005-10-22  Simon Josefsson  <jas@extundo.com>
24904
24905         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
24906         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
24907
24908 2005-10-22  Simon Josefsson  <jas@extundo.com>
24909
24910         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
24911         suggested by Bruno Haible <bruno@clisp.org>.
24912
24913 2005-10-22  Simon Josefsson  <jas@extundo.com>
24914
24915         * lib/crc.h: Include stddef.h, for size_t.
24916
24917 2005-10-22  Simon Josefsson  <jas@extundo.com>
24918
24919         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
24920         arcfour_context struct (simplify test vector testing in GNU
24921         Shishi).
24922
24923 2005-10-21  Simon Josefsson  <jas@extundo.com>
24924
24925         * modules/des, modules/des-tests: New files.
24926
24927         * modules/gc-des, modules/gc-des-tests: New files.
24928
24929         * tests/test-des.c, tests/test-gc-des.c: New file.
24930
24931 2005-10-21  Simon Josefsson  <jas@extundo.com>
24932
24933         * modules/arctwo, modules/arctwo-tests: New files.
24934
24935         * tests/test-arctwo.c: New file.
24936
24937         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
24938
24939         * tests/test-gc-arctwo.c: New file.
24940
24941 2005-10-21  Simon Josefsson  <jas@extundo.com>
24942
24943         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
24944         Bruno Haible <bruno@clisp.org>.
24945
24946         * m4/gc-des.m4: New file.
24947
24948 2005-10-21  Simon Josefsson  <jas@extundo.com>
24949
24950         * m4/arctwo.m4: New file.
24951
24952         * m4/gc-arctwo.m4: New file.
24953
24954 2005-10-21  Simon Josefsson  <jas@extundo.com>
24955
24956         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
24957         block.
24958
24959 2005-10-21  Simon Josefsson  <jas@extundo.com>
24960
24961         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
24962         <bruno@clisp.org>.
24963
24964         * lib/hmac-sha1.c (hmac_sha1): Likewise.
24965
24966         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
24967         Bruno Haible <bruno@clisp.org>.
24968
24969         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
24970         <bruno@clisp.org>.
24971
24972 2005-10-21  Simon Josefsson  <jas@extundo.com>
24973
24974         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
24975
24976 2005-10-21  Simon Josefsson  <jas@extundo.com>
24977
24978         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
24979
24980 2005-10-21  Simon Josefsson  <jas@extundo.com>
24981
24982         * lib/des.h, lib/des.c: New files.
24983
24984         * lib/gc-gnulib.c: Support DES.c
24985
24986 2005-10-21  Simon Josefsson  <jas@extundo.com>
24987
24988         * lib/arctwo.h, lib/arctwo.c: New files.
24989
24990         * lib/gc-gnulib.c: Support ARCTWO.
24991
24992 2005-10-21  Simon Josefsson  <jas@extundo.com>
24993
24994         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
24995         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24996
24997 2005-10-21  Simon Josefsson  <jas@extundo.com>
24998
24999         * gnulib-tool (func_import, func_create_testdir): Define automake
25000         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
25001         Makefile.am snippet),
25002         suggested by Bruno Haible <bruno@clisp.org>.
25003
25004         * modules/gc (Makefile.am): Use it.
25005
25006 2005-10-21  Bruno Haible  <bruno@clisp.org>
25007
25008         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
25009         patch.
25010
25011 2005-10-19  Simon Josefsson  <jas@extundo.com>
25012
25013         * tests/test-gc-rijndael.c: New file.
25014
25015         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
25016
25017 2005-10-19  Simon Josefsson  <jas@extundo.com>
25018
25019         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
25020         interface too.
25021
25022 2005-10-19  Simon Josefsson  <jas@extundo.com>
25023
25024         * tests/test-gc-arcfour.c: New file.
25025
25026         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
25027
25028 2005-10-19  Simon Josefsson  <jas@extundo.com>
25029
25030         * modules/gc-md4, modules/gc-md4-tests: New file.
25031
25032         * tests/test-gc-md4.c: New file.
25033
25034 2005-10-19  Simon Josefsson  <jas@extundo.com>
25035
25036         * m4/gc-md4.m4: New file.
25037
25038 2005-10-19  Simon Josefsson  <jas@extundo.com>
25039
25040         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
25041         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
25042         <kasal@ucw.cz>.
25043
25044 2005-10-19  Simon Josefsson  <jas@extundo.com>
25045
25046         * m4/gc-arcfour.m4: New file.
25047
25048         * m4/gc-rijndael.m4: New file.
25049
25050 2005-10-19  Simon Josefsson  <jas@extundo.com>
25051
25052         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
25053
25054 2005-10-19  Simon Josefsson  <jas@extundo.com>
25055
25056         * lib/gc-gnulib.c: Support ARCFOUR.
25057
25058 2005-10-19  Simon Josefsson  <jas@extundo.com>
25059
25060         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
25061         support.
25062
25063         * lib/gc.h: Add ECB enum type.
25064
25065         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
25066
25067 2005-10-18  Simon Josefsson  <jas@extundo.com>
25068
25069         * tests/test-md5.c: New file.
25070
25071         * modules/md5-tests: New file.
25072
25073 2005-10-18  Simon Josefsson  <jas@extundo.com>
25074
25075         * tests/test-md4.c: New file.
25076
25077         * modules/md4, modules/md4-tests: New files.
25078
25079 2005-10-18  Simon Josefsson  <jas@extundo.com>
25080
25081         * m4/md4.m4: New file.
25082
25083 2005-10-18  Simon Josefsson  <jas@extundo.com>
25084
25085         * lib/md4.h, lib/md4.c: New files, based on md5.?.
25086
25087 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
25088
25089         * gnulib-tool (func_create_testdir): Omit the second check whether
25090         BUILT_SOURCES in nonempty.
25091
25092 2005-10-17  Simon Josefsson  <jas@extundo.com>
25093
25094         * tests/test-rijndael.c: New file.
25095
25096 2005-10-17  Simon Josefsson  <jas@extundo.com>
25097
25098         * modules/sha1: Depend on stdint instead of md5.
25099
25100         * modules/md5: Depend on stdint, remove uint32_t.
25101
25102 2005-10-17  Simon Josefsson  <jas@extundo.com>
25103
25104         * modules/gc-sha1-tests: New file.
25105
25106         * tests/test-gc-sha1.c: New file.
25107
25108 2005-10-17  Simon Josefsson  <jas@extundo.com>
25109
25110         * m4/md5.m4: Remove call to uint32_t.m4.
25111
25112 2005-10-17  Simon Josefsson  <jas@extundo.com>
25113
25114         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
25115
25116         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
25117         md5.h.
25118
25119         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
25120
25121         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
25122
25123 2005-10-17  Simon Josefsson  <jas@extundo.com>
25124
25125         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
25126
25127 2005-10-17  Simon Josefsson  <jas@extundo.com>
25128
25129         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
25130
25131 2005-10-17  Simon Josefsson  <jas@extundo.com>
25132
25133         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
25134
25135         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
25136
25137 2005-10-17  Bruno Haible  <bruno@clisp.org>
25138
25139         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
25140         that it can also be used in a test.
25141
25142 2005-10-16  Bruno Haible  <bruno@clisp.org>
25143
25144         * gnulib-tool (func_emit_tests_Makefile_am): Also define
25145         TESTS_ENVIRONMENT, so that individual tests can augment it.
25146
25147         * gnulib-tool (func_create_testdir): Use an intermediate target for
25148         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
25149         macros, like $(ALLOCA_H), which cannot be passed through the command
25150         line.
25151
25152 2005-10-15  Simon Josefsson  <jas@extundo.com>
25153
25154         * modules/rijndael-tests: New file.
25155
25156         * modules/rijndael: New file.
25157
25158 2005-10-15  Simon Josefsson  <jas@extundo.com>
25159
25160         * m4/rijndael.m4: New file.
25161
25162 2005-10-15  Simon Josefsson  <jas@extundo.com>
25163
25164         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
25165
25166         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
25167
25168 2005-10-14  Simon Josefsson  <jas@extundo.com>
25169
25170         * tests/test-arcfour.c: New file.
25171
25172         * modules/arcfour, modules/arcfour-tests: New files.
25173
25174 2005-10-14  Simon Josefsson  <jas@extundo.com>
25175
25176         * m4/arcfour.m4: New file.
25177
25178 2005-10-14  Simon Josefsson  <jas@extundo.com>
25179
25180         * lib/arcfour.h, lib/arcfour.c: New files.
25181
25182 2005-10-14  Roland McGrath  <roland@redhat.com>
25183
25184         Import from libc.  [BZ #1331]
25185         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
25186         macro argument.
25187         Reported by Matej Vela <vela@debian.org>.
25188
25189 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25190
25191         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
25192         include <wchar.h>; no longer needed.
25193
25194 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25195
25196         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
25197
25198 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
25199         and  Ulrich Drepper  <drepper@redhat.com>
25200
25201         Import from libc.
25202         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
25203         instead of inline stream orientation test and two separate
25204         function calls.  Pay no attention to USE_IN_LIBIO.
25205
25206 2005-10-13  Simon Josefsson  <jas@extundo.com>
25207
25208         * modules/gc-hmac-md5-tests: New file.
25209
25210         * tests/test-gc-hmac-sha1.c: New file.
25211
25212         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
25213
25214         * modules/gc-hmac-md5-tests: New file.
25215
25216         * tests/test-gc-md5.c: New file.
25217
25218         * modules/gc-md5-tests: New file.
25219
25220 2005-10-13  Simon Josefsson  <jas@extundo.com>
25221
25222         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
25223         Move memory allocation outside of loop.
25224
25225 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
25226
25227         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
25228         intermediate directory is in a read-only file system.  Problem
25229         reported by Eric Blake.
25230
25231 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
25232
25233         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
25234
25235 2005-10-12  Simon Josefsson  <jas@extundo.com>
25236
25237         * tests/test-hmac-sha1.c: New file.
25238
25239         * modules/hmac-sha1-tests: New file.
25240
25241         * modules/hmac-sha1: New file.
25242
25243 2005-10-12  Simon Josefsson  <jas@extundo.com>
25244
25245         * modules/gc-sha1: New file.
25246
25247 2005-10-12  Simon Josefsson  <jas@extundo.com>
25248
25249         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
25250
25251         * tests/test-gc-pbkdf2-sha1.c: New file.
25252
25253 2005-10-12  Simon Josefsson  <jas@extundo.com>
25254
25255         * modules/gc-md5, modules/gc-hmac-md5: New files.
25256
25257         * modules/gc (Files): Remove md5, memxor and hmac files.
25258
25259 2005-10-12  Simon Josefsson  <jas@extundo.com>
25260
25261         * m4/gc-pbkdf2-sha1.m4: New file.
25262
25263         * m4/gc-hmac-sha1.m4: New file.
25264
25265         * m4/gc-sha1: New file.
25266
25267         * m4/hmac-sha1.m4: New file.
25268
25269 2005-10-12  Simon Josefsson  <jas@extundo.com>
25270
25271         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
25272
25273         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
25274
25275 2005-10-12  Simon Josefsson  <jas@extundo.com>
25276
25277         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
25278         suggested by Bruno Haible <bruno@clisp.org>.
25279
25280 2005-10-12  Simon Josefsson  <jas@extundo.com>
25281
25282         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
25283
25284 2005-10-12  Simon Josefsson  <jas@extundo.com>
25285
25286         * lib/gc-pbkdf2-sha1.c: New file.
25287
25288         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
25289
25290 2005-10-12  Simon Josefsson  <jas@extundo.com>
25291
25292         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
25293
25294         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
25295
25296 2005-10-12  Simon Josefsson  <jas@extundo.com>
25297
25298         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
25299         GC_USE_HMAC_MD5, respectively.
25300
25301         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
25302         (gc_md5): Fix typo.
25303
25304         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
25305
25306         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
25307
25308         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
25309
25310 2005-10-12  Bruno Haible  <bruno@clisp.org>
25311
25312         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
25313         Reported by Stepan Kasal <kasal@ucw.cz>.
25314
25315 2005-10-11  Simon Josefsson  <jas@extundo.com>
25316
25317         * tests/test-crc.c: New file.
25318
25319         * modules/crc, modules/crc-tests: New files.
25320
25321 2005-10-11  Simon Josefsson  <jas@extundo.com>
25322
25323         * m4/crc.m4: New file.
25324
25325 2005-10-11  Simon Josefsson  <jas@extundo.com>
25326
25327         * lib/gc.h: Add gc_hash and gc_hash_buffer.
25328
25329         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
25330
25331         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
25332
25333 2005-10-11  Simon Josefsson  <jas@extundo.com>
25334
25335         * lib/crc.h, lib/crc.c: New files.
25336
25337         * lib/gc.h (gc_hash_buffer): Add doc.
25338
25339 2005-10-11  Bruno Haible  <bruno@clisp.org>
25340
25341         * modules/c-strcasestr: New file.
25342         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
25343
25344 2005-10-11  Bruno Haible  <bruno@clisp.org>
25345
25346         * modules/c-strcase: New file.
25347         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
25348
25349 2005-10-11  Bruno Haible  <bruno@clisp.org>
25350
25351         * lib/strcasecmp.c: Include limits.h.
25352         (strcasecmp): Avoid integer overflow on exotic platforms.
25353         * lib/strncasecmp.c: Include limits.h.
25354         (strncasecmp): Avoid integer overflow on exotic platforms.
25355         Reported by Paul Eggert.
25356
25357 2005-10-11  Bruno Haible  <bruno@clisp.org>
25358
25359         * lib/c-strcasestr.h: New file, from GNU gettext.
25360         * lib/c-strcasestr.c: New file, from GNU gettext.
25361
25362 2005-10-11  Bruno Haible  <bruno@clisp.org>
25363
25364         * lib/c-strcase.h: New file, from GNU gettext.
25365         * lib/c-strcasecmp.c: New file, from GNU gettext.
25366         * lib/c-strncasecmp.c: New file, from GNU gettext.
25367
25368 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
25369
25370         * modules/mempcpy (License): GPL -> LGPL.
25371         * modules/strchrnul (License): Likewise.
25372         * modules/sysexits (License): Likewise.
25373
25374 2005-10-08  Simon Josefsson  <jas@extundo.com>
25375
25376         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
25377
25378 2005-10-07  Simon Josefsson  <jas@extundo.com>
25379
25380         * m4/memxor.m4: Remove gl_C_RESTRICT call.
25381
25382 2005-10-06  Simon Josefsson  <jas@extundo.com>
25383
25384         * tests/test-hmac-md5.c: New file.
25385
25386         * modules/hmac-md5-tests: New file.
25387
25388         * modules/hmac-md5: New file.
25389
25390 2005-10-06  Simon Josefsson  <jas@extundo.com>
25391
25392         * m4/hmac-md5.m4: New file.
25393
25394         * m4/memxor.m4: Require gl_C_RESTRICT.
25395
25396 2005-10-06  Simon Josefsson  <jas@extundo.com>
25397
25398         * lib/memxor.c (memxor): Avoid casts and warnings.
25399
25400 2005-10-06  Simon Josefsson  <jas@extundo.com>
25401
25402         * lib/hmac-md5.c: New file.
25403
25404         * lib/hmac.h: New file.
25405
25406 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
25407
25408         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
25409         promotes to int, not unsigned int, to catch the AIX 5.3
25410         compiler bug.
25411
25412 2005-10-05  Simon Josefsson  <jas@extundo.com>
25413
25414         * modules/memxor: New file.
25415
25416         * modules/iconv (Files): Move config.rpath to havelib, it is used
25417         there.
25418
25419         * modules/havelib (Files): Add config.rpath.
25420
25421 2005-10-05  Simon Josefsson  <jas@extundo.com>
25422
25423         * m4/memxor.m4: New file.
25424
25425 2005-10-05  Simon Josefsson  <jas@extundo.com>
25426
25427         * lib/memxor.c (memxor): Fix compiler error.
25428
25429         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
25430         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
25431
25432         * lib/memxor.h, lib/memxor.c: New files.
25433
25434         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
25435         we assume all systems have it, suggested by Jim Meyering
25436         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
25437         any systems lack sys/socket.h; mingw32 is known to lack it, but we
25438         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
25439         same reasons.
25440
25441 2005-10-05  Simon Josefsson  <jas@extundo.com>
25442
25443         * config/srclist.txt: Add glibc bug 1423 for md5.h.
25444
25445 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
25446
25447         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
25448         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
25449         needed, since the source code now assumes these .h files.
25450
25451 2005-10-05  Derek Price  <derek@ximbiot.com>
25452
25453         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
25454
25455 2005-10-05  Bruno Haible  <bruno@clisp.org>
25456
25457         * modules/stdint (License): Change to LGPL.
25458
25459 2005-10-04  Simon Josefsson  <jas@extundo.com>
25460
25461         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
25462         D. Baushke" <mdb@gnu.org>.
25463
25464 2005-10-04  Bruno Haible  <bruno@clisp.org>
25465
25466         * lib/verify.h (verify_true): Provide alternative definition for C++.
25467
25468 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
25469
25470         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
25471         (SSIZE_MAX): New macro, if not already defined.
25472         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
25473         than 2 GiB.
25474
25475 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25476
25477         Sync from coreutils.
25478         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
25479         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
25480         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
25481         ULLONG_MAX doesn't work with 2.7.2.1.
25482
25483 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25484
25485         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
25486         From Ben Pfaff.
25487
25488         * modules/exclude (Depends-on): Depend on verify.
25489         * modules/strtoimax (Depends-on): Likewise.
25490         * modules/utimecmp (Depends-on): Likewise.
25491
25492 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
25493
25494         * lib/exclude.c: Include verify.h.
25495         (verify): Remove.  All callers changed to use verify.h's version.
25496         * lib/strtoimax.c: Likewise.
25497         * lib/utimecmp.c: Likewis.e
25498
25499         Sync from coreutils.
25500         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
25501         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
25502         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
25503         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
25504         bother returning ENOSYS if settimeofday or stime fails; just let
25505         them return whatever errno they want to return.
25506         * lib/utimens.c: Include unistd.h, for dup2.
25507         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
25508         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
25509
25510 2005-10-02  Jim Meyering  <jim@meyering.net>
25511
25512         Sync from coreutils.
25513         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
25514         from glibc-2.2.5 that fails for read-only files.
25515
25516 2005-10-02  Jim Meyering  <jim@meyering.net>
25517
25518         Sync from coreutils.
25519         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
25520         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
25521         `#if HAVE_CONFIG_H'.
25522         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
25523         Remove AT_FDCWD test.
25524         Do not consume the fd unless successful.
25525         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
25526         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
25527         block, so that we don't even try to compile it if settimeofday is
25528         available.  This works around a compilation failure on OSF1 V5.1,
25529         due to stime requiring a `long int*' while tv_sec is `int'.
25530
25531 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
25532
25533         Sync from coreutils.
25534         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
25535         against `yes', rather than just testing for nonempty.
25536
25537 2005-10-01  Simon Josefsson  <jas@extundo.com>
25538
25539         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
25540         and Darwin.
25541
25542         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
25543         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
25544         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
25545         freeaddrinfo and gai_strerror are declared by the POSIX headers.
25546         Check if struct addrinfo is declared.
25547
25548 2005-10-01  Simon Josefsson  <jas@extundo.com>
25549
25550         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
25551         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
25552         AI_* and EAI_* definitions.  Protect function declarations.
25553
25554 2005-10-01  Jim Meyering  <jim@meyering.net>
25555
25556         Sync from coreutils.
25557
25558         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
25559         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
25560         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
25561         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25562         in the inet and nsl libraries.  Required on Solaris 5.7.
25563
25564 2005-10-01  Jim Meyering  <jim@meyering.net>
25565
25566         Sync from coreutils.
25567         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
25568         in the inet and nsl libraries.  Required on Solaris 5.7.
25569
25570 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
25571
25572         * lib/getdelim.c (getdelim): Remove unused variables.
25573
25574 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
25575
25576         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
25577         so that the code works even with ancient cpp.  Portability problem
25578         with GCC 2.7.2.1 reported by Thomas M.Ott.
25579
25580 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
25581
25582         * modules/regex (Depends-on): Add strcase.
25583
25584         * modules/gethostname (Licence): Change from GPL to LGPL, since
25585         gethostname.c is a trivial implementation of a standard library
25586         function.
25587         * modules/poll (License): Change from GPL to LGPL, since it's
25588         derived from LGPL code.
25589
25590 2005-09-27  Jim Meyering  <jim@meyering.net>
25591
25592         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
25593         HAVE_CONFIG_H.
25594
25595         * lib/intprops.h (signed_type_or_expr__): Define.
25596         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
25597         for unsigned types.
25598
25599 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25600
25601         * lib/verify.h (verify_expr): Remove, replacing with:
25602         (verify_true): New macro that returns true instead of void.
25603         (verify_type__): Remove.
25604         (verify): Use verify_true rather than verify_type__.
25605
25606 2005-09-26  Bruno Haible  <bruno@clisp.org>
25607
25608         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
25609         is necessary.
25610         (lib_SOURCES): Remove mbchar.c.
25611         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
25612         (Files): Add m4/mbrtowc.m4.
25613         * modules/mbiter: Likewise.
25614         * modules/mbuiter: Likewise.
25615
25616 2005-09-26  Bruno Haible  <bruno@clisp.org>
25617
25618         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
25619         compile mbchar.c if they are not both present.
25620         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
25621         * m4/mbiter.m4 (gl_MBITER): Likewise.
25622         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
25623         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
25624         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
25625
25626 2005-09-25  Jim Meyering  <jim@meyering.net>
25627
25628         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
25629         also uses socklen_t.
25630
25631 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
25632
25633         * lib/utimens.c (ENOSYS): Define if not already defined.
25634         (futimens): Support having a null PATH if the file descriptor
25635         is nonnegative.
25636
25637         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
25638         Remove.
25639         (__attribute): Define to empty unless GCC 3.1 or later.
25640         This works around a core dump on OpenBSD 3.4, which has GCC
25641         2.95.3, which dumps core when given __attribute__(()).  It also
25642         simplifies other tests, since we really don't want to bother with
25643         worrying about which ancient version of GCC supported what.
25644         Original problem reported by Yoann Vandoorselaere, with part of
25645         the fix suggested by Derek Price.
25646
25647 2005-09-24  Jim Meyering  <jim@meyering.net>
25648
25649         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
25650         so we can once again use a positive bitfield width of 1 -- now we
25651         don't have to explain why we were using a bitfield width of 2.
25652
25653 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25654
25655         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
25656         and similarly for the other external symbols.  Problem reported
25657         by James Gallager.
25658
25659         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
25660         bug reported by Jim Meyering.
25661
25662         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
25663         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
25664         not needed, since socklen is a prerequisite module.
25665
25666 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
25667
25668         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
25669         Problem reported by Eric Blake.
25670         (getaddrinfo): Initialize se so that it's not garbage.
25671         Redo internal storage allocation so that it doesn't make unportable
25672         assumptions about alignment.
25673         Fix a memory leak.
25674
25675         * lib/utimens.c (futimens): Use futimesat if available.
25676         Prefer it to futimes since it doesn't have the futimes bug.
25677
25678         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
25679         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
25680         Instead, declare a function that returns a pointer to an array,
25681         and use verify_type__ to declare the size of the array.
25682         Problem and germ of a solution reported by Bruno Haible.
25683         (verify_type__): Use 2, not 1, for bitfield size, to avoid
25684         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
25685
25686 2005-09-23  Jim Meyering  <jim@meyering.net>
25687
25688         Sync from coreutils.
25689         Correct build failure (socklen_t not defined) on at least
25690         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
25691         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
25692
25693 2005-09-23  Jim Meyering  <jim@meyering.net>
25694
25695         * modules/getaddrinfo (Depends-on): Add socklen.
25696
25697 2005-09-23  Bruno Haible  <bruno@clisp.org>
25698
25699         * tests/test-verify.c: New file.
25700
25701 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25702
25703         Sync from coreutils.
25704
25705         * modules/argmatch (Depends-on): Add verify.
25706         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
25707         unistd-safer.
25708         * modules/save-cwd (Depends-on): Likewise.
25709
25710         * modules/openat (Files): Add lib/openat-die.c.
25711         (Depends-on): Remove error, exitfail.
25712         Add dirname.
25713
25714         * modules/verify: New file.
25715         * MODULES.html.sh (Diagnostics <assert.h>): New section,
25716         with "verify" module.
25717
25718 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25719
25720         Sync from coreutils.
25721
25722         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
25723         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
25724         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
25725         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
25726         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
25727         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
25728         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
25729         Don't bother checking for string.h, stdlib.h, unistd.h.
25730         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
25731         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
25732         module's job.
25733         * m4/jm-macros.m4 (gl_MACROS): Likewise.
25734         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
25735
25736         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
25737         (gl_GETDATE): Use it.
25738
25739         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
25740
25741 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25742
25743         Sync from coreutils.
25744
25745         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
25746         stat-time.h.
25747         * lib/argmatch.h: Include verify.h
25748         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
25749         (ARGMATCH_ASSERT): Remove; unused.
25750         * lib/canonicalize.c: Assume STDC_HEADERS.
25751         * lib/exclude.c: Include "strcase.h".
25752         * lib/regex_internal.h [!defined _LIBC]: Likewise.
25753         * lib/getusershell.c: Include stdio--.h rather than stdio.h
25754         and stdio-safer.h.
25755         (getusershell): Call fopen, not fopen_safer.
25756         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
25757         Do not include unistd-safer.h.
25758         (save_cwd): Don't call fd_safer; no longer needed
25759         now that we include fcntl--.h.
25760
25761         * lib/getdate.y (relative_time): New type.
25762         (RELATIVE_TIME_0): New constant.
25763         (parser_control): Use relative_time instead of doing it ourselves.
25764         (%union): Add new relative_time rel member.
25765         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
25766         Now typeless.
25767         (relunit, relunit_snumber): Now of type rel.
25768         (zone, rel, relunit, get_date): Adjust to above changes.
25769
25770         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
25771         Do not include unistd-safer.h.
25772         (getloadavg): Don't call fd_safer; no longer needed
25773         now that we include fcntl--.h.
25774
25775         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
25776         (make_dir_parents): Treat ENOSYS like EEXIST.
25777
25778         Improve quality of diagnostics on restore_cwd failure.
25779         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
25780         (make_dir_parents): Last arg is now int * (for errno), not bool *.
25781         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
25782         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
25783         each time through the loop.  Do not diagnose restore_cwd failure;
25784         that is the caller's job (and perhaps the caller does not care).
25785
25786         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
25787         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
25788         If the file already exists but is not a directory, don't bother
25789         to try to make its parents.
25790         Close potential file descriptor leak if we can't chdir("/") (!).
25791         Don't always return true if chdir($PWD) fails; return true only
25792         if the requested action was done successfully (except for the
25793         chdir($PWD)).
25794         Don't log final directory unless we actually made it.
25795         Refactor to avoid duplicate code to fix up permissions.
25796         Don't attempt to fix up parent permissions if chdir($PWD) fails.
25797
25798         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
25799         to make it a bit faster and (I hope) clearer.
25800         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
25801         Fix bug in formats like %2N.
25802
25803         * lib/verify.h: New file.
25804
25805 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
25806
25807         Sync from coreutils.
25808         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
25809
25810 2005-09-22  Jim Meyering  <jim@meyering.net>
25811
25812         Sync from coreutils.
25813
25814         * m4/lstat.m4 (gl_FUNC_LSTAT):
25815         Use AC_LIBSOURCES to require lstat.c and lstat.h.
25816         Remove obsolete comment.
25817         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
25818         * m4/xstrtod.m4: Likewise.
25819
25820         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
25821
25822 2005-09-22  Jim Meyering  <jim@meyering.net>
25823
25824         Sync from coreutils.
25825
25826         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
25827
25828         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
25829         the .tm_year member, since otherwise gcc-4.0 would now warn about
25830         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
25831
25832         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
25833         order to avoid an unsuppressible warning from gcc on 64-bit systems.
25834
25835         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
25836         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
25837         when run in a time zone for which daylight savings time is in effect
25838         for the starting date.
25839
25840         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
25841         stop us from restricting permissions of just-created absolute-named
25842         directories.
25843         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
25844         to restore initial working directory.
25845         * lib/mkdir-p.c (make_dir_parents): New parameter:
25846         different_working_dir, to tell caller if/when we change the working
25847         directory and are unable to return to the initial one.
25848         * lib/mkdir-p.h (make_dir_parents): Update prototype.
25849         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
25850         `return false'.  This fixes a bug introduced on 2004-07-30.
25851
25852         * lib/openat.c (fdopendir): Be sure to close the supplied
25853         file descriptor before returning.  This makes our replacement
25854         implementation a little closer to Solaris's, where fdopendir
25855         ties the file descriptor to the returned DIR* pointer.
25856         * lib/openat.c (unlinkat): New function.
25857         * lib/openat.h (unlinkat): Add prototype.
25858         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
25859         (openat_restore_fail): Rename from openat_restore_die.
25860         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
25861
25862         Provide an alternative to exiting immediately upon save_cwd or
25863         restore_cwd failure.  Now, an application can arrange e.g.,
25864         to perform a longjump in that case.
25865         * lib/openat.c: Include dirname.h.
25866         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
25867         (rpl_openat, fdopendir, fstatat): Call openat_save_die
25868         and openat_restore_die rather than calling error directly.
25869         Don't include "error.h" or "exitfail.h"; they're no longer needed.
25870
25871         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
25872         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
25873         define.
25874
25875         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
25876         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
25877                             int utc, int nanoseconds);
25878         Background:
25879         date should not have to allocate a megabyte of virtual memory to
25880         handle a format argument like +%1048575T.  When implemented with
25881         strftime, it must allocate such a buffer, use strftime to fill it
25882         in, print it, then free it.
25883         With fprintftime, it simply prints everything and exits.
25884         With no need for memory allocation, that's one fewer way to fail.
25885         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
25886         optional field width, not before, so we accept %9:z, not %:9z.
25887         (my_strftime): Be sure to use L_('x') for literals.
25888
25889         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
25890         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
25891         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
25892         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
25893         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
25894         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
25895         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
25896         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
25897         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
25898         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
25899         * lib/xgethostname.c, lib/xreadlink.c:
25900         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
25901
25902         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
25903         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
25904         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
25905         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
25906         and don't include <sys/file.h>).
25907
25908 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
25909
25910         Sync from coreutils.
25911
25912         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
25913         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
25914         [!LDAV_DONE]: Avoid unused variable warning.
25915
25916 2005-09-21  Bruno Haible  <bruno@clisp.org>
25917
25918         * lib/unicodeio.h (unicode_to_mb): New declaration.
25919
25920 2005-09-20  Derek Price  <derek@ximbiot.com>
25921
25922         * lib/getaddrinfo.c: Don't include <netdb.h> included from
25923         getaddrinfo.h.
25924
25925 2005-09-20  Bruno Haible  <bruno@clisp.org>
25926
25927         * gnulib-tool: Remove trailing slashes from the values specified for
25928         --source-base, --m4-base, --tests-base, --aux-dir.
25929         Suggested by Simon Josefsson <jas@extundo.com>.
25930
25931 2005-09-20  Bruno Haible  <bruno@clisp.org>
25932
25933         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
25934         func_modules_to_filelist, func_import, func_create_testdir): Make all
25935         sorting results locale-independent, so that gnulib-cache.m4 doesn't
25936         change when gnulib-tool is invoked in a different locale.
25937
25938 2005-09-19  Simon Josefsson  <jas@extundo.com>
25939
25940         * m4/socklen.m4: Fix typo.
25941
25942 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25943
25944         Use a consistent style for including <config.h>.
25945         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
25946         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
25947         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
25948         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
25949         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
25950         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
25951         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
25952         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
25953         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
25954         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
25955         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
25956         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
25957         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
25958         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
25959         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
25960         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
25961         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
25962         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
25963         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
25964         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
25965         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
25966         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
25967         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
25968         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
25969         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
25970         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
25971         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
25972         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
25973         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
25974         lib/xstrtoumax.c, lib/yesno.c:
25975         Standardize inclusion of config.h.
25976         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
25977         lib/inttostr.h:  Removed inclusion of config.h from header files.
25978         * lib/inttostr.c:  Adjusted in-tree users.
25979         * lib/timespec.h: Remove superfluous warning to include config.h.
25980         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
25981         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
25982         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
25983         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
25984         config.h with HAVE_CONFIG_H.
25985
25986 2005-09-19  Jim Meyering  <jim@meyering.net>
25987
25988         * modules/pathmax (License): Change to LGPL.
25989
25990 2005-09-19  Derek Price  <derek@ximbiot.com>
25991
25992         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
25993
25994 2005-09-19  Bruno Haible  <bruno@clisp.org>
25995
25996         * gnulib-tool (import): Provide default for --tests-base.
25997
25998 2005-09-19  Bruno Haible  <bruno@clisp.org>
25999
26000         * doc/quote.texi: New file, extracted from gnulib.texi.
26001         * doc/ctime.texi: New file, extracted from gnulib.texi.
26002         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
26003         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
26004         * doc/gnulib.texi: Include them.
26005
26006 2005-09-18  Bruno Haible  <bruno@clisp.org>
26007
26008         Portability fix.
26009         * gnulib-tool (func_readlink): New function.
26010         (func_ln_if_changed): Use it.
26011
26012 2005-09-18  Bruno Haible  <bruno@clisp.org>
26013
26014         * gnulib-tool: Support --with-tests also with --import.
26015         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
26016         (func_import): Use variables $testsbase and $inctests. Emit a
26017         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
26018         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
26019         SUBDIRS += $testsdir.
26020         (func_create_testdir): Update.
26021
26022 2005-09-18  Bruno Haible  <bruno@clisp.org>
26023
26024         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
26025         instead of $dry_run.
26026         (func_cp_if_changed, func_mv_if_changed): Remove functions.
26027         (func_ln_if_changed): Don't handle dry-run here.
26028         (func_import): In dry-run mode, detect more precisely which actions
26029         would be performed, and don't use "...ing" verbs.
26030
26031 2005-09-18  Bruno Haible  <bruno@clisp.org>
26032
26033         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
26034         (func_import): Use join on two temporary files instead of three nested
26035         loops, in order to determine which files are new or old.
26036
26037 2005-09-18  Bruno Haible  <bruno@clisp.org>
26038
26039         * gnulib-tool (func_import): Comment out code that spits out the
26040         new files with --dry-run.
26041
26042 2005-09-18  Bruno Haible  <bruno@clisp.org>
26043
26044         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
26045
26046 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26047
26048         * lib/stat-time.h: New file.
26049         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
26050         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
26051         in a different way.
26052         (timespec_cmp): New function.
26053         * lib/utimecmp.c: Include stat-time.h.
26054         (SYSCALL_RESOLUTION): Depend on whether various struct stat
26055         members exist, not on the obsolescent ST_MTIM_NSEC.
26056         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
26057
26058 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26059
26060         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
26061
26062 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26063
26064         * MODULES.html.sh (File system functions): Add stat-time.
26065         * modules/stat-time: New file.
26066         * modules/timespec (Files): Remove m4/st_mtim.m4; this
26067         is now done in a different way, by the stat-time module.
26068         * modules/utimecmp (Depends-on): Add stat-time.
26069
26070 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26071
26072         * m4/st_mtim.m4: Remove.  Superseded by...
26073         * m4/stat-time.m4: New file.
26074         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
26075         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
26076
26077 2005-09-15  Derek Price  <derek@ximbiot.com>
26078
26079         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
26080
26081 2005-09-15  Derek Price  <derek@ximbiot.com>
26082
26083         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
26084         * lib/regex_internal.c: Ditto, using this...
26085         (__GNUC_PREREQ): ...new macro.
26086         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
26087         using...
26088         (__GNUC_PREREQ): ...this new macro.
26089
26090         * lib/strstr.h: Include string.h. Define strstr as a macro here.
26091
26092 2005-09-15  Derek Price  <derek@ximbiot.com>
26093             Paul Eggert  <eggert@cs.ucla.edu>
26094
26095         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
26096         changes, consolidating in...
26097         * lib/regex_internal.h: ...this file.
26098
26099 2005-09-13  Jim Meyering  <jim@meyering.net>
26100
26101         * lib/canon-host.c: Filter through gnu indent and reword comments
26102         slightly.
26103         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
26104
26105 2005-09-13  Derek Price  <derek@ximbiot.com>
26106
26107         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
26108         failure.
26109         Reported by Jim Meyering  <jim@meyering.net>.
26110
26111 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
26112
26113         * lib/base64.c: Typo.
26114         (base64_encode): Put b64str in initialized data section.
26115
26116 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
26117
26118         Merge glibc and coreutils changes into gnulib, plus a few
26119         extra fixes.
26120         * lib/md5.c: Use #error rather than a string.
26121         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
26122         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
26123         (__attribute__): Define to empty for non recent-GCC.
26124         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
26125         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
26126         Renamed from their non-__ counterparts, with new macros replacing
26127         them if not _LIBC.  Add __THROW attribute.
26128         (rol): Remove.
26129         (struct md5_ctx): Align buffer if using GCC.
26130         * lib/sha1.h (struct sha1_ctx): Likewise.
26131         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
26132         The old name was backwards.
26133         (NOTSWAP): Remove; not used.
26134         (rol): New macro, moved here from md5.h.
26135         (sha1_process_block): Remove a FIXME that doesn't make sense.
26136
26137 2005-09-12  Derek Price  <derek@ximbiot.com>
26138
26139         Return usable errors from canon-host.
26140         * lib/canon-host.h: New file.
26141         * lib/canon-host.c (canon_host): Wrap...
26142         (canon_host_r): ...this new function, which now relies exclusively on
26143         getaddrinfo.
26144         (ch_strerror): New function.
26145         (last_cherror): New global.
26146         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
26147         interface.
26148         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
26149         void *.
26150         (freeaddrinfo): Free ai->ai_canonname when set.
26151
26152 2005-09-12  Derek Price  <derek@ximbiot.com>
26153
26154         Make canon-host require getaddrinfo.
26155         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
26156         AC_LIBSOURCE canon-host.h.  Call...
26157         (gl_PREREQ_CANON_HOST): ...this new function, which requires
26158         gl_GETADDRINFO.
26159         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
26160
26161 2005-09-12  Derek Price  <derek@ximbiot.com>
26162
26163         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
26164         LGPL.
26165         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
26166
26167 2005-09-12  Derek Price  <derek@ximbiot.com>
26168
26169         * lib/gai_strerror.c: Include config.h when available.  Include
26170         getaddrinfo.h before other headers to test interface.
26171         Reported by Larry Jones <lawrence.jones@ugs.com>.
26172
26173 2005-09-12  Derek Price  <derek@ximbiot.com>
26174             Paul Eggert  <eggert@cs.ucla.edu>
26175
26176         * modules/glob (Files): Add glob-libc.h.
26177
26178 2005-09-12  Derek Price  <derek@ximbiot.com>
26179             Paul Eggert  <eggert@cs.ucla.edu>
26180
26181         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
26182         glob_.h, glob-libc.h.
26183         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
26184
26185 2005-09-12  Derek Price  <derek@ximbiot.com>
26186             Paul Eggert  <eggert@cs.ucla.edu>
26187
26188         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
26189         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
26190         protecting things that should be done only in gnulib contexts.
26191         * lib/glob_.h: New file, containing only the glob things needed for
26192         gnulib.
26193         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
26194         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
26195         (glob, globfree, glob_pattern_p): Now defined simply in terms of
26196         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
26197         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
26198         and to respect the namespace rules better.
26199
26200 2005-09-08  Simon Josefsson  <jas@extundo.com>
26201
26202         * modules/socklen: New file.
26203
26204 2005-09-08  Simon Josefsson  <jas@extundo.com>
26205
26206         * m4/socklen.m4: New file.
26207
26208 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26209
26210         * modules/utimens (Files): Add m4/utimbuf.m4, since
26211         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
26212         Reported by Sergey Poznyakoff.
26213
26214 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26215
26216         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
26217         definitions, since that's the preferred style in glibc.
26218         Fix a minor spacing issue, and update copyright notice to match
26219         glibc's.
26220
26221 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26222
26223         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
26224
26225 2005-09-06  Simon Josefsson  <jas@extundo.com>
26226
26227         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
26228         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
26229
26230 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
26231
26232         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
26233         warning.
26234
26235 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
26236
26237         * config/srclist.txt: Add glibc bug 1302.
26238
26239 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
26240
26241         Change bitset word type from unsigned int to unsigned long int,
26242         as this has better performance on typical 64-bit hosts.
26243         Port bitset code to hosts with unusual word sizes.
26244         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
26245         (build_collating_symbol):
26246         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
26247         argument is a bitset.  This is merely a style issue, but it makes
26248         it clearer that an entire array is expected.
26249         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
26250         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
26251         Port to the case where bitset_word is not the same as unsigned int.
26252         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
26253         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
26254         Likewise.
26255         * lib/regexec.c (check_dst_limits_calc_pos_1,
26256         check_subexp_matching_top):
26257         (build_trtable, group_nodes_into_DFAstates):
26258         Likewise.
26259         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
26260         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
26261         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
26262         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
26263         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
26264         * lib/regcomp.c (optimize_subexps, lower_subexp):
26265         Work even if bitset_word has holes in its bitwise representation.
26266         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
26267         * lib/regexec.c (check_dst_limits_calc_pos_1,
26268         check_subexp_matching_top):
26269         Likewise.
26270         * lib/regex_internal.c (re_string_reconstruct):
26271         Don't assume UCHAR_MAX == 255.
26272         * lib/regex_internal.h (bitset_set_all): Likewise.
26273         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
26274         All uses changed.
26275         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
26276         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
26277         All uses changed.
26278         (BITSET_WORD_MAX): New macro.
26279         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
26280         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
26281         (bitset_empty, bitset_copy):
26282         Prefer sizeof (bitset) to multiplying it out ourselves.
26283         (bitset_not_merge): Remove; unused.
26284         (bitset_contain): Return bool, not unsigned int with one bit on.
26285         All callers changed.
26286         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
26287         alignment than re_node_set; do this by defining a new internal
26288         type struct dests_alloc and using it to allocate memory.
26289
26290 2005-09-05  Bruno Haible  <bruno@clisp.org>
26291
26292         * gnulib-tool (func_import): Fix comparison in handling of symbolic
26293         links.
26294
26295 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
26296
26297         * modules/size_max (Makefile.am): Add size_max.h
26298
26299 2005-09-04  Derek Price  <derek@ximbiot.com>
26300
26301         * gnulib-tool (func_import): Fix reversed $symbolic logic.
26302
26303 2005-09-03  Simon Josefsson  <jas@extundo.com>
26304
26305         * gnulib-tool: Fix typo.
26306
26307 2005-09-03  Simon Josefsson  <jas@extundo.com>
26308
26309         * config/srclist.txt: Add glibc bug 1293.
26310
26311 2005-09-03  Derek Price  <derek@ximbiot.com>
26312
26313         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
26314         From Larry Jones <lawrence.jones@ugs.com>.
26315
26316 2005-09-02  Simon Josefsson  <jas@extundo.com>
26317
26318         * modules/socklen: New file.
26319
26320 2005-09-02  Simon Josefsson  <jas@extundo.com>
26321
26322         * modules/havelib: New module.
26323
26324         * modules/gettext, modules/iconv, modules/lock, modules/readline:
26325         Use havelib.
26326
26327 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
26328
26329         Check for arithmetic overflow when calculating sizes, to prevent
26330         some buffer-overflow issues.  These patches are conservative, in the
26331         sense that when I couldn't determine whether an overflow was possible,
26332         I inserted a run-time check.
26333         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
26334         macros.
26335         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
26336         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
26337         (re_xnrealloc, re_x2nrealloc): New inline functions.
26338         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
26339         parse_bracket_exp):
26340         (build_equiv_class, build_charclass): Check for arithmetic overflow
26341         in size expression calculations.
26342         * lib/regex_internal.c (re_string_realloc_buffers):
26343         (build_wcs_upper_buffer, re_node_set_add_intersect):
26344         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
26345         (re_dfa_add_node, register_state): Likewise.
26346         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
26347         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
26348         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
26349         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
26350
26351 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
26352
26353         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
26354         m4/ulonglong.m4.  Problem reported by Martin Lambers.
26355
26356 2005-09-02  Bruno Haible  <bruno@clisp.org>
26357
26358         Support for lib vs. lib64 distinction on biarch platforms.
26359         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
26360         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
26361         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
26362
26363 2005-09-02  Bruno Haible  <bruno@clisp.org>
26364
26365         * gnulib-tool (import): In the other first-use case, provide defaults
26366         as well.
26367
26368 2005-09-02  Bruno Haible  <bruno@clisp.org>
26369
26370         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
26371         patches not yet found in the latest gettext release.
26372
26373 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26374
26375         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
26376         to avoid a collision with bits/local_lim.h in glibc.
26377         All uses changed.  Problem reported by Dmitry V. Levin in
26378         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
26379
26380         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
26381         bugs in int versus size_t comparisons.
26382         (re_string_context_at): Fix bug where the code assumed that
26383         Idx is signed.
26384
26385         Use bool where appropriate.
26386         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
26387         All callers changed.
26388         (calc_eclosure_iter): Likewise, for ROOT arg.
26389         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
26390         (build_charclass_op): Likewise, for NON_MATCH arg.
26391         * lib/regex_internal.c (re_string_allocate, re_string_construct):
26392         (re_string_construct_common): Likewise, for ICASE arg.
26393         * lib/regexec.c (re_search_2_stub, re_search_stub):
26394         Likewise, for RET_LEN arg.
26395         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
26396         (set_regs): Likewise, for FL_BACKTRACK arg.
26397         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
26398         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
26399         (calc_eclosure_iter, parse_bracket_exp):
26400         Use bool for internal variables that are booleans.
26401         * lib/regexec.c (re_search_internal, check_matching,
26402         proceed_next_node):
26403         (set_regs, build_sifted_states, sift_states_bkref):
26404         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
26405         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
26406         (find_collation_sequence_value):
26407         Likewise.
26408         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
26409         (re_node_set_compare):
26410         Return bool, not int. All callers changed.
26411         * lib/regexec.c (check_halt_node_context, check_dst_limits):
26412         (build_trtable, check_node_accept): Likewise.
26413         * lib/regex_internal.h: Include stdbool.h.
26414
26415         Fix bugs uncovered when converting to bool.
26416         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
26417         failure instead of charging ahead blindly.
26418         * lib/regex_internal.c (register_state): Likewise.
26419         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
26420         for freeing internal storage.
26421         (group_nodes_into_DFA_states): Use unsigned int, not int, for
26422         bitset pieces used as boolean, to avoid undefined behavior
26423         on hosts that do int overflow checking.
26424
26425 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26426
26427         * config/srclist.txt: Add glibc bugs 1285-1287.
26428
26429 2005-09-01  Jim Meyering  <jim@meyering.net>
26430
26431         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
26432         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
26433         Require gl_STAT_MACROS, too.
26434
26435 2005-09-01  Bruno Haible  <bruno@clisp.org>
26436
26437         * gnulib-tool (import): In the first-use case, provide defaults.
26438
26439 2005-09-01  Bruno Haible  <bruno@clisp.org>
26440
26441         * gnulib-tool (func_import): Remove the .tmp files.
26442
26443 2005-09-01  Bruno Haible  <bruno@clisp.org>
26444
26445         * gnulib-tool (func_import): Fix handling of symbolic links.
26446
26447 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26448
26449         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
26450         old glibc regex code mishandles strings longer than 2**31 bytes.
26451         This patch fixes this when the regex code is used in gnulib
26452         (i.e., outside glibc).
26453
26454         This patch should not affect the use of the regex code inside
26455         glibc.  No doubt this problem also needs to be handled for glibc
26456         as well, but the result will be an incompatible change to the
26457         glibc ABI, and the old ABI will have to be supported too.  That
26458         can be the the subject for another patch.
26459
26460         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
26461         governing whether the rest of this patch is active.  By default,
26462         the macro is disabled and the patch has no effect.
26463         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
26464         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
26465         (struct re_pattern_buffer, re_search, re_search_2, re_match):
26466         (re_match_2, re_set_registers): Use the new types.
26467         * lib/regex_internal.h (Idx, re_hashval_t): New types.
26468         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
26469         New macros.
26470         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
26471         (re_string_context_at, bin_tree_t, re_dfastate_t):
26472         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
26473         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
26474         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
26475         (re_string_char_size_at, re_string_wchar_at):
26476         (re_string_elem_size_at):
26477         Use the new types and macros to port to 64-bit hosts.
26478         Use unsigned types for internal values, so that the code
26479         mostly works even for arrays larger than SSIZE_MAX.
26480         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
26481         (search_duplicated_node, calc_eclosure_iter, fetch_number):
26482         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
26483         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
26484         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
26485         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
26486         (calc_inveclosure, parse_dup_op, build_range_exp):
26487         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
26488         (fetch_number, create_token_tree, mark_opt_subexp):
26489         Likewise.
26490         * lib/regex_internal.c (re_string_construct_common,
26491         create_ci_newstate):
26492         (create_cd_newstate, re_string_allocate, re_string_construct):
26493         (re_string_realloc_buffers, build_wcs_upper_buffer):
26494         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
26495         (re_string_reconstruct, re_string_peek_byte_case):
26496         (re_string_fetch_byte_case, re_string_context_at):
26497         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
26498         (re_node_set_init_copy, re_node_set_add_intersect):
26499         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
26500         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
26501         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
26502         (re_acquire_state, re_acquire_state_context, register_state):
26503         Likewise.
26504         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
26505         search_cur_bkref_entry):
26506         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
26507         (re_search_internal, re_search_2_stub, re_search_stub)
26508         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
26509         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
26510         (update_cur_sifted_state, check_dst_limits):
26511         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26512         (check_subexp_limits, sift_states_bkref, merge_state_array):
26513         (check_subexp_matching_top, get_subexp, get_subexp_sub):
26514         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
26515         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
26516         (expand_bkref_cache, check_node_accept_bytes):
26517         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
26518         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
26519         (acquire_init_state_context, check_halt_node_context):
26520         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
26521         (sift_states_backward, clean_state_log_if_needed):
26522         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
26523         (find_recover_state, transit_state_sb, transit_state_mb):
26524         (transit_state_bkref, build_trtable, match_ctx_clean):
26525         Likewise.
26526         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
26527         to work around an assumption that REG_MISSING is negative.
26528
26529         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
26530         (seek_collating_symbol_entry) [defined _LIBC]:
26531         (lookup_collation_sequence_value) [defined _LIBC]:
26532         (build_range_exp, build_collating_symbol) [defined _LIBC]:
26533         Use prototypes rather than old-style function definitions.
26534         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
26535         (transit_state_sb) [0]:
26536         (find_collation_sequence_value) [defined _LIBC]: Likewise.
26537
26538         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
26539         rm_eo.
26540
26541         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
26542         (optimize_subexps, lower_subexp):
26543         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
26544         since the signed shift might overflow.  Use 1u<<31 instead.
26545         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
26546         Likewise.
26547         * lib/regexec.c (check_dst_limits_calc_pos_1,
26548         check_subexp_matching_top): Likewise.
26549
26550         * lib/regcomp.c (optimize_subexps, lower_subexp):
26551         Use CHAR_BIT rather than 8, for clarity.
26552         * lib/regexec.c (check_dst_limits_calc_pos_1):
26553         (check_subexp_matching_top): Likewise.
26554         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
26555         have to worry about portability issues when shifting it left.
26556         Remove no-longer-needed test for table_size > 0.
26557         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
26558         in a word, as the resulting behavior is undefined.
26559         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
26560         in one case, a <= should have been an <, and in another case the
26561         whole test was missing.
26562         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
26563         the standard name CHAR_BIT.
26564         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
26565         this is not true on one's complement and signed-magnitude hosts.
26566
26567         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
26568         next_last_offset.
26569         (struct re_dfa_t): Remove unused member states_alloc.
26570         * lib/regcomp.c (init_dfa): Don't initialize unused members.
26571
26572 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26573
26574         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
26575         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
26576         and large-file glibc and in 32-bit large-file Solaris.
26577
26578 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26579
26580         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
26581         lengths fit in regoff_t; this isn't true if regoff_t is the same
26582         width as size_t.
26583         * lib/regex.c (re_search_internal): 5th arg is LAST_START
26584         (= START + RANGE) instead of RANGE.  This avoids overflow
26585         problems when regoff_t is the same width as size_t.
26586         All callers changed.
26587         (re_search_2_stub): Check for overflow when adding the
26588         sizes of the two strings.
26589         (re_search_stub): Check for overflow when adding START
26590         to RANGE; if it occurs, substitute the extreme value.
26591
26592 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26593
26594         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
26595
26596 2005-08-31  Jim Meyering  <jim@meyering.net>
26597
26598         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
26599         a pointer-to-const.
26600         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
26601         (register_state): Likewise.
26602         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
26603         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
26604         (group_nodes_into_DFAstates): Likewise.
26605
26606 2005-08-31  Jim Meyering  <jim@meyering.net>
26607
26608         * check-module: Add a FIXME comment.
26609
26610 2005-08-31  Eric Blake  <ebb9@byu.net>
26611
26612         * modules/unistd-safer (Files): Add unistd--.h.
26613         * modules/stdio-safer (Files): Add stdio--.h.
26614
26615 2005-08-31  Derek Price  <derek@ximbiot.com>
26616
26617         * lib/getdelim.c (getdelim): Return EOF on EOF.
26618         Reported by Larry Jones <lawrence.jones@ugs.com>.
26619
26620 2005-08-31  Bruno Haible  <bruno@clisp.org>
26621
26622         Avoid unnecessary diffs in the generated lib/Makefile.am.
26623         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
26624         the generated files.
26625         (func_import): Don't set cmd.
26626
26627 2005-08-31  Bruno Haible  <bruno@clisp.org>
26628
26629         * lib/strstr.c: Include <stddef.h>, for NULL.
26630         * lib/strcasestr.c: Likewise.
26631         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
26632
26633 2005-08-31  Bruno Haible  <bruno@clisp.org>
26634
26635         * gnulib-tool: New option --macro-prefix.
26636         (func_import): Use macro_prefix.
26637         (import): Handle option --macro-prefix.
26638
26639 2005-08-31  Bruno Haible  <bruno@clisp.org>
26640
26641         * gnulib-tool (import): Rename most ac_* variables to cached_*.
26642         Also use new variables cached_lgpl, cached_libtool.
26643
26644 2005-08-31  Bruno Haible  <bruno@clisp.org>
26645
26646         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
26647         always instantiating them.
26648
26649 2005-08-31  Bruno Haible  <bruno@clisp.org>
26650
26651         * gnulib-tool (func_import): Read the previous cached settings
26652         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
26653         earlier added by gnulib but are now dropped. Warn when a gnulib file
26654         overwrites a non-gnulib file.
26655
26656 2005-08-31  Bruno Haible  <bruno@clisp.org>
26657
26658         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
26659         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
26660         projects that don't keep autogenerated files in CVS. Put into
26661         actioncmd only the specified modules, not the transitive closure.
26662
26663 2005-08-31  Bruno Haible  <bruno@clisp.org>
26664
26665         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
26666         Create directories that shall be filled.
26667         (import): Don't look for gl_* macros in configure.ac. Recurse across
26668         all directories containing a gnulib-cache.m4 files, if meaningful.
26669
26670 2005-08-31  Bruno Haible  <bruno@clisp.org>
26671
26672         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
26673         (import): Set seen_libtool when we see gl_LIBTOOL.
26674
26675 2005-08-31  Bruno Haible  <bruno@clisp.org>
26676
26677         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
26678         declaration macro definitions from generated gnulib.m4.
26679
26680 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
26681
26682         * lib/iconvme.h: Add prototype for iconv_alloc.
26683
26684 2005-08-29  Simon Josefsson  <jas@extundo.com>
26685
26686         * lib/iconvme.c: Fix errno.
26687
26688 2005-08-29  Bruno Haible  <bruno@clisp.org>
26689
26690         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
26691         that it works when the directory contains spaces.
26692
26693 2005-08-29  Bruno Haible  <bruno@clisp.org>
26694
26695         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
26696
26697 2005-08-29  Bruno Haible  <bruno@clisp.org>
26698
26699         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
26700         Emit more advice.
26701
26702 2005-08-29  Bruno Haible  <bruno@clisp.org>
26703         and Stepan Kasal  <kasal@ucw.cz>
26704
26705         * check-module: If more parameters are given, check each of them
26706         separately; add more exceptions, as noted by Jim Meyering.
26707         (check_module): New procedure.
26708         (%exempt_header): Now contains all exceptions.
26709
26710 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
26711
26712         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
26713
26714 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
26715
26716         * lib/iconvme.c: Split iconv_string into iconv_alloc.
26717
26718 2005-08-28  Bruno Haible  <bruno@clisp.org>
26719
26720         * m4/gnulib-tool.m4: New file.
26721
26722 2005-08-27  Jim Meyering  <jim@meyering.net>
26723
26724         * modules/unistd-safer (Files): Add pipe-safer.c.
26725         * modules/fcntl-safer (Files): Add creat-safer.c.
26726
26727 2005-08-27  Jim Meyering  <jim@meyering.net>
26728
26729         * m4/stdlib-safer.m4: New file.  From coreutils.
26730         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
26731         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
26732         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
26733         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
26734         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
26735
26736 2005-08-27  Jim Meyering  <jim@meyering.net>
26737
26738         * lib/fopen-safer.c: Merge minor changes from coreutils.
26739         * lib/dup-safer.c: Likewise.
26740         * lib/fd-safer.c: Likewise.
26741
26742         Merge from coreutils.
26743         * lib/stdio--.h: New file.
26744         * lib/stdlib--.h: New file.
26745         * lib/mkstemp-safer.c: New file.
26746
26747         GNU tar needs these.
26748         * lib/pipe-safer.c: New file.
26749         * lib/creat-safer.c: New file.
26750         * lib/fcntl--.h (creat): Define to creat_safer.
26751         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
26752         * lib/unistd--.h (pipe): Define to pipe_safer.
26753         * lib/unistd-safer.h: Declare pipe_safer.
26754
26755 2005-08-26  Simon Josefsson  <jas@extundo.com>
26756
26757         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
26758         Haible <bruno@clisp.org>.
26759
26760 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
26761
26762         * lib/regex_internal.h: Remove all references to
26763         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
26764         or better.
26765         (bitset_not, bitset_merge, bitset_not_merge):
26766         (bitset_mask, re_string_allocate, re_string_construct):
26767         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
26768         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
26769         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
26770         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
26771         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
26772         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
26773         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
26774         (re_acquire_state_context):
26775         Remove unnecessary forward decls.
26776         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
26777         Put __attribute at function definition,
26778         now that the function decl has been removed.
26779         * lib/regex_internal.c (re_string_peek_byte_case):
26780         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
26781         Likewise.
26782
26783 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
26784
26785         * m4/regex.m4: Add AC_PREREQ(2.50).
26786         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
26787
26788 2005-08-25  Simon Josefsson  <jas@extundo.com>
26789
26790         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
26791         __fsetlocking.
26792
26793 2005-08-25  Simon Josefsson  <jas@extundo.com>
26794
26795         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
26796         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
26797         GLIBC specific code.
26798
26799 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26800
26801         Make regex safe for g++.  This fixes one real bug (an "err"
26802         that should have been "*err").  g++ problem reported by
26803         Sam Steingold.
26804         * lib/regex_internal.h (re_calloc): New macro, consistent with
26805         re_malloc etc.  All callers of calloc changed to use re_calloc.
26806         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
26807         not int.  All callers changed.
26808         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
26809         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
26810         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
26811         (find_recover_state): Change "err" to "*err"; this fixes what
26812         appears to be a real bug.
26813         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
26814         versus int.
26815
26816 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26817
26818         * modules/regex (Depends-on): Add malloc, since the code
26819         assumes that !malloc(0) means failure.
26820
26821 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26822
26823         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
26824
26825         alloca modernization/simplification for regex.
26826         * lib/regex.c: Remove portability cruft for alloca.  This no longer
26827         needs to be at the start of the file, and can be moved into
26828         regex_internal.h and simplified.
26829         * lib/regex_internal.h: Include <alloca.h>.
26830         (__libc_use_alloca) [!defined _LIBC]: New macro.
26831         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
26832         now works outside glibc.
26833
26834 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26835
26836         * config/srclist.txt: Add glibc bugs 1241, 1245.
26837
26838 2005-08-25  Jim Meyering  <jim@meyering.net>
26839
26840         * lib/open-safer.c: Include <config.h>.
26841         Otherwise, we'd lose LARGEFILE support in any file using
26842         e.g. "fcntl--.h"
26843
26844 2005-08-25  Bruno Haible  <bruno@clisp.org>
26845
26846         * m4/minmax.m4: Require autoconf 2.52.
26847         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
26848         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
26849         alternatives of translit over the alphabet.
26850         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
26851
26852 2005-08-24  Simon Josefsson  <jas@extundo.com>
26853
26854         * tests/test-getpass.c: New file.
26855
26856 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26857
26858         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
26859         for GNU regex features.
26860
26861 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26862
26863         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
26864         * lib/regex.h (regerror): Likewise.
26865
26866         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
26867         requires this.  (The code never needed it.)
26868
26869         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
26870         All uses of recently-renamed identifiers changed to use the new,
26871         POSIX-compliant names.  The code will build and run just fine
26872         without these changes, but it's better to eat our own dog food
26873         and use the standard-conforming names.
26874
26875         * lib/regex.h: Fix a multitude of POSIX name space violations.
26876         These changes have an effect only for programs that define
26877         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
26878         do not change anything for programs compiled in the normal way.
26879         Also, there is no effect on the ABI.
26880
26881         (_REGEX_SOURCE): New macro.
26882         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
26883         defined and _GNU_SOURCE is not; this fixes a name space violation.
26884
26885         Rename the following macros to obey POSIX requirements.
26886         The old names are still visible as macros if _REGEX_SOURCE is defined.
26887         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
26888         RE_BACKSLASH_ESCAPE_IN_LISTS.
26889         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
26890         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
26891         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
26892         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
26893         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
26894         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
26895         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
26896         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
26897         (REG_INTERVALS): renamed from RE_INTERVALS.
26898         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
26899         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
26900         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
26901         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
26902         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
26903         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
26904         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
26905         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
26906         RE_UNMATCHED_RIGHT_PAREN_ORD.
26907         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
26908         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
26909         (REG_DEBUG): renamed from RE_DEBUG.
26910         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
26911         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
26912         unusual, since we can't clash with the POSIX REG_ICASE.
26913         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
26914         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
26915         (REG_NO_SUB): renamed from RE_NO_SUB.
26916         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
26917         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
26918         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
26919         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
26920         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
26921         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
26922         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
26923         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
26924         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
26925         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
26926         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
26927         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
26928         RE_SYNTAX_POSIX_MINIMAL_BASIC.
26929         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
26930         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
26931         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
26932         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
26933         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
26934         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
26935         (REG_FIXED): Renamed from REGS_FIXED.
26936         (REG_NREGS): Renamed from RE_NREGS.
26937
26938         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
26939         of other REG_* macros, since POSIX says the user is allowed to
26940         #undef these macros selectively.
26941
26942         (reg_errcode_t): Update comment stating what other tables need
26943         to be consistent.
26944
26945         Rename the following enum values to obey POSIX requirements.
26946         The old names are still visible as macros.
26947         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
26948         is not defined, since GNU is supposed to be a superset of POSIX as
26949         much as possible, and since we want reg_errcode_t to be a signed
26950         type for implementation consistency.
26951         (_REG_NOERROR): Renamed from REG_NOERROR.
26952         (_REG_NOMATCH): Renamed from REG_NOMATCH.
26953         (_REG_BADPAT): Renamed from REG_BADPAT.
26954         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
26955         (_REG_ECTYPE): Renamed from REG_ECTYPE.
26956         (_REG_EESCAPE): Renamed from REG_EESCAPE.
26957         (_REG_ESUBREG): Renamed from REG_ESUBREG.
26958         (_REG_EBRACK): Renamed from REG_EBRACK.
26959         (_REG_EPAREN): Renamed from REG_EPAREN.
26960         (_REG_EBRACE): Renamed from REG_EBRACE.
26961         (_REG_BADBR): Renamed from REG_BADBR.
26962         (_REG_ERANGE): Renamed from REG_ERANGE.
26963         (_REG_ESPACE): Renamed from REG_ESPACE.
26964         (_REG_BADRPT): Renamed from REG_BADRPT.
26965         (_REG_EEND): Renamed from REG_EEND.
26966         (_REG_ESIZE): Renamed from REG_ESIZE.
26967         (_REG_ERPAREN): Renamed from REG_ERPAREN.
26968         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
26969         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
26970         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
26971         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
26972
26973         (_REG_RE_NAME, _REG_RM_NAME): New macros.
26974         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
26975         changed.  But support the old name if the new one is not defined
26976         and if _REGEX_SOURCE.
26977
26978         Change the following member names in struct re_pattern_buffer.
26979         The old names are still supported if !_REGEX_SOURCE.
26980         The new names are always supported, regardless of _REGEX_SOURCE.
26981         (re_buffer): Renamed from buffer.
26982         (re_allocated): Renamed from allocated.
26983         (re_used): Renamed from used.
26984         (re_syntax): Renamed from syntax.
26985         (re_fastmap): Renamed from fastmap.
26986         (re_translate): Renamed from translate.
26987         (re_can_be_null): Renamed from can_be_null.
26988         (re_regs_allocated): Renamed from regs_allocated.
26989         (re_fastmap_accurate): Renamed from fastmap_accurate.
26990         (re_no_sub): Renamed from no_sub.
26991         (re_not_bol): Renamed from not_bol.
26992         (re_not_eol): Renamed from not_eol.
26993         (re_newline_anchor): Renamed from newline_anchor.
26994
26995         Change the following member names in struct re_registers.
26996         The old names are still supported if !_REGEX_SOURCE.
26997         The new names are always supported, regardless of _REGEX_SOURCE.
26998         (rm_num_regs): Renamed from num_regs.
26999         (rm_start): Renamed from start.
27000         (rm_end): Renamed from end.
27001
27002         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
27003         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
27004         Prepend __ to parameter names.
27005
27006         Undo yesterday's changes.
27007
27008 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27009
27010         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
27011         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
27012         lib/regex.c.
27013
27014 2005-08-24  Jim Meyering  <jim@meyering.net>
27015
27016         Sync from coreutils.
27017         * m4/fcntl-safer.m4: New file.
27018
27019         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
27020         and object files for this module.
27021
27022 2005-08-24  Jim Meyering  <jim@meyering.net>
27023
27024         Sync from coreutils.
27025         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
27026
27027 2005-08-24  Jim Meyering  <jim@meyering.net>
27028
27029         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
27030         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
27031
27032 2005-08-24  Jim Meyering  <jim@meyering.net>
27033
27034         * modules/fcntl-safer: New module.
27035         * modules/fts (Depends-on): Add fcntl-safer.
27036         * MODULES.html.sh (File descriptor based Input/Output):
27037         Add fcntl-safer.
27038
27039 2005-08-24  Bruno Haible  <bruno@clisp.org>
27040
27041         Support for unit test modules.
27042         * modules/README: Mention tests modules.
27043         * modules/TEMPLATE-TESTS: New file.
27044         * gnulib-tool: New options --extract-tests-module, --with-tests and
27045         --tests-base (unused for the moment).
27046         (testsbase, inctests): New variables.
27047         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
27048         (func_verify_module): Exclude TEMPLATE-TESTS.
27049         (func_verify_nontests_module, func_verify_tests_module): New functions.
27050         (func_get_dependencies): Add implicit dependency for tests modules.
27051         (func_get_tests_module): New function.
27052         (func_modules_transitive_closure): When --with-tests was specified,
27053         include the unit tests as well, unless explicitly avoided.
27054         (func_emit_lib_Makefile_am): Ignore the tests modules here.
27055         (func_emit_tests_Makefile_am): New function.
27056         (func_create_testdir): When --with-tests was specified, emit a
27057         tests/ directory.
27058         * MODULES.html.sh (Future developments): Update.
27059
27060 2005-08-24  Bruno Haible  <bruno@clisp.org>
27061
27062         * modules/tls-tests: New file.
27063         * tests/test-tls.c: New file, from GNU gettext.
27064
27065 2005-08-24  Bruno Haible  <bruno@clisp.org>
27066
27067         * modules/lock-tests: New file.
27068         * tests/test-lock.c: New file, from GNU gettext.
27069
27070 2005-08-24  Bruno Haible  <bruno@clisp.org>
27071
27072         * lib/lock.h: Add multiple inclusion guard.
27073         * lib/tls.h: Add multiple inclusion guard.
27074
27075 2005-08-24  Bruno Haible  <bruno@clisp.org>
27076
27077         * gnulib-tool: Add support for the --aux-dir option to
27078         --create-testdir, --create-megatestdir, --test, --megatest.
27079         (func_create_testdir, func_create_megatestdir): Optionally emit a
27080         AC_CONFIG_AUX_DIR directive.
27081         (create-testdir, create-megatestdir, test, megatest): Provide a
27082         default value for $auxdir.
27083
27084 2005-08-24  Bruno Haible  <bruno@clisp.org>
27085
27086         * gnulib-tool (import): Use compound statement instead of subshell
27087         where possible.
27088
27089 2005-08-24  Bruno Haible  <bruno@clisp.org>
27090
27091         * gnulib-tool (import): Change --aux-dir default to "build-aux".
27092
27093 2005-08-24  Bruno Haible  <bruno@clisp.org>
27094
27095         * gnulib-tool (func_version): Update.
27096
27097 2005-08-24  Bruno Haible  <bruno@clisp.org>
27098
27099         * gnulib-tool (func_import, func_create_testdir,
27100         func_create_megatestdir): Quote all autoconf macro arguments.
27101
27102 2005-08-24  Bruno Haible  <bruno@clisp.org>
27103
27104         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
27105         option --force, because --force causes the aclocal.m4 of each
27106         subdirectory to be newer than the corresponding config.h.in.
27107
27108 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27109
27110         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
27111         All contents moved to gl_REGEX.
27112         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
27113         assume that it does.
27114
27115 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27116
27117         * lib/regex.h (REG_NOSYS)
27118         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
27119         Define, since POSIX requires it as of 2001.
27120         (_REG_ENOSYS)
27121         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
27122         New private symbol, used to keep the enum signed in all cases.
27123         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
27124         Youngman in
27125         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
27126
27127         * lib/regex_internal.c (re_string_skip_chars, register_state):
27128         (calc_state_hash):
27129         Remove forward decls; no longer needed now that we use prototypes.
27130         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
27131         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
27132         (clean_state_log_if_needed): Likewise.
27133
27134 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27135
27136         * config/srclist.txt: Add glibc bugs 1231-1233.
27137
27138 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27139
27140         Fix problems reported by Sam Steingold in
27141         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
27142         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
27143         assumed that reg_errcode_t is a signed type, which is not
27144         necessarily true if _XOPEN_SOURCE is not defined.
27145         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
27146         since some compilers warn about it otherwise.
27147
27148 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27149
27150         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
27151         (init_word_char, create_initial_state, duplicate_node_closure):
27152         (fetch_token, peek_token_bracket, build_range_exp):
27153         (build_collating_symbol): Remove forward decls; no longer needed
27154         now that we use prototypes.
27155
27156         * lib/regcomp.c:
27157         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
27158         (re_compile_fastmap_iter, regcomp, regerror, regfree):
27159         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
27160         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
27161         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
27162         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
27163         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
27164         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
27165         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
27166         (build_range_exp, build_collating_symbol, parse_bracket_exp):
27167         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
27168         (build_charclass, build_charclass_op, fetch_number, create_tree):
27169         (create_token_tree, mark_opt_subexp, duplicate_tree):
27170         Use prototypes rather than old-style definitions.
27171
27172         * lib/regex_internal.c:
27173         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
27174         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
27175         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
27176         (re_string_reconstruct, re_string_peek_byte_case):
27177         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
27178         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
27179         (re_node_set_init_copy, re_node_set_add_intersect):
27180         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
27181         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
27182         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
27183         (re_acquire_state, re_acquire_state_context, register_state):
27184         (create_ci_newstate, create_cd_newstate, free_state):
27185         Likewise.
27186         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
27187         re_search_2):
27188         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
27189         (re_search_internal, prune_impossible_nodes):
27190         (acquire_init_state_context, check_matching, static):
27191         (check_halt_node_context, check_halt_state_context, proceed_next_node):
27192         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
27193         (update_regs, sift_states_backward, build_sifted_states):
27194         (clean_state_log_if_needed, merge_state_array):
27195         (update_cur_sifted_state, add_epsilon_src_nodes):
27196         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
27197         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
27198         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
27199         (find_recover_state, check_subexp_matching_top, transit_state_mb):
27200         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
27201         (check_arrival, check_arrival_add_next_nodes):
27202         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
27203         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
27204         (check_node_accept_bytes, check_node_accept, extend_buffers):
27205         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
27206         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
27207         (sift_ctx_init):
27208         Likewise.
27209
27210         * lib/regex_internal.h:
27211         (re_string_allocate, re_string_construct, re_string_reconstruct):
27212         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
27213         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
27214         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
27215         (re_string_context_at, re_string_peek_byte_case):
27216         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
27217         is defined, since we now use prototypes always.
27218
27219         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
27220         C89 or better.  All uses removed.
27221
27222 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27223
27224         * config/srclist.txt: Add glibc bugs 1220-1227.
27225
27226 2005-08-20  Jim Meyering  <jim@meyering.net>
27227
27228         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
27229         of unused local, dfa.
27230
27231 2005-08-20  Bruno Haible  <bruno@clisp.org>
27232
27233         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
27234
27235 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27236
27237         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
27238         (re_node_set_insert_last, re_dfa_add_node):
27239         Rename local variables to avoid GCC shadowing warnings.
27240
27241 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27242
27243         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
27244         [defined lint]: Suppress bogus uninitialized-variable warnings.
27245
27246         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
27247         and let the caller return REG_ESPACE if out of space.  This
27248         removes an uninitialied-variable warning with GCC 4.0.1, and also
27249         avoids taking the address of a local variable.  All callers
27250         changed.
27251
27252 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27253
27254         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
27255         $LIBCSRC/posix/regexec.c.
27256         Add glibc bug 1217 for regcomp.c.
27257
27258 2005-08-19  Jim Meyering  <jim@meyering.net>
27259
27260         * lib/regexec.c (proceed_next_node): Redo local variables to
27261         avoid GCC shadowing warnings.
27262
27263 2005-08-18  Bruno Haible  <bruno@clisp.org>
27264
27265         * lib/strstr.c (strstr): Fix return value in multibyte case.
27266         * lib/strcasestr.c (strcasestr): Likewise.
27267
27268 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27269
27270         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
27271
27272 2005-08-17  Jim Meyering  <jim@meyering.net>
27273
27274         Make the %s format (seconds since the epoch) work for a negative
27275         number and when used with a zero-padded field width, e.g. %015s.
27276
27277         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
27278         label so that it precedes the code to set `digits'.  Otherwise,
27279         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
27280         print `00-22'.  Now, it prints `-0022', as it should.
27281
27282 2005-08-17  Bruno Haible  <bruno@clisp.org>
27283
27284         * modules/strstr (Files): Add m4/mbrtowc.m4.
27285         (Depends-on): Add mbuiter.
27286
27287 2005-08-17  Bruno Haible  <bruno@clisp.org>
27288
27289         * modules/strcasestr: New file.
27290         * MODULES.html.sh (String handling, based on ANSI C 89): Add
27291         strcasestr.
27292
27293 2005-08-17  Bruno Haible  <bruno@clisp.org>
27294
27295         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
27296
27297 2005-08-17  Bruno Haible  <bruno@clisp.org>
27298
27299         * modules/mbuiter: New file.
27300         * MODULES.html.sh (Extended multibyte and wide character utilities):
27301         Add mbuiter.
27302
27303 2005-08-17  Bruno Haible  <bruno@clisp.org>
27304
27305         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
27306         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
27307
27308 2005-08-17  Bruno Haible  <bruno@clisp.org>
27309
27310         * m4/strcasestr.m4: New file.
27311
27312 2005-08-17  Bruno Haible  <bruno@clisp.org>
27313
27314         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
27315         * lib/strstr.c: Completely rewritten, with multibyte locale support.
27316
27317 2005-08-17  Bruno Haible  <bruno@clisp.org>
27318
27319         * lib/strcasestr.h: New file.
27320         * lib/strcasestr.c: New file.
27321
27322 2005-08-17  Bruno Haible  <bruno@clisp.org>
27323
27324         * lib/strcasecmp.c: Use mbuiter.h.
27325
27326 2005-08-17  Bruno Haible  <bruno@clisp.org>
27327
27328         * lib/mbuiter.h: New file.
27329
27330 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27331
27332         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
27333         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
27334         and gl_GETOPT are both invoked via different paths (as happens
27335         with GNU tar CVS because it uses both argp and getopt), the former
27336         wins.
27337
27338 2005-08-16  Bruno Haible  <bruno@clisp.org>
27339
27340         * modules/tls: New file.
27341         * MODULES.html.sh (Multithreading): Add tls.
27342
27343 2005-08-16  Bruno Haible  <bruno@clisp.org>
27344
27345         * modules/strnlen1: New file.
27346         * MODULES.html.sh (String handling): Add strnlen1.
27347
27348 2005-08-16  Bruno Haible  <bruno@clisp.org>
27349
27350         * modules/strcase (Files): Add m4/mbrtowc.m4.
27351         (Depends-on): Add strnlen1, mbchar.
27352
27353 2005-08-16  Bruno Haible  <bruno@clisp.org>
27354
27355         * modules/mbiter: New file.
27356         * MODULES.html.sh (Extended multibyte and wide character utilities):
27357         Add mbiter.
27358
27359 2005-08-16  Bruno Haible  <bruno@clisp.org>
27360
27361         * modules/mbfile: New file.
27362         * MODULES.html.sh (Extended multibyte and wide character utilities):
27363         Add mbfile.
27364
27365 2005-08-16  Bruno Haible  <bruno@clisp.org>
27366
27367         * modules/mbchar: New file.
27368         * MODULES.html.sh (Extended multibyte and wide character utilities):
27369         New section.
27370
27371 2005-08-16  Bruno Haible  <bruno@clisp.org>
27372
27373         * m4/tls.m4: New file, from GNU gettext.
27374
27375 2005-08-16  Bruno Haible  <bruno@clisp.org>
27376
27377         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
27378         always.
27379         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
27380
27381 2005-08-16  Bruno Haible  <bruno@clisp.org>
27382
27383         * m4/mbiter.m4: New file.
27384
27385 2005-08-16  Bruno Haible  <bruno@clisp.org>
27386
27387         * m4/mbfile.m4: New file.
27388
27389 2005-08-16  Bruno Haible  <bruno@clisp.org>
27390
27391         * m4/mbchar.m4: New file.
27392
27393 2005-08-16  Bruno Haible  <bruno@clisp.org>
27394
27395         * lib/tls.h: New file, from GNU gettext.
27396         * lib/tls.c: New file, from GNU gettext.
27397
27398 2005-08-16  Bruno Haible  <bruno@clisp.org>
27399
27400         * lib/strnlen1.h: New file.
27401         * lib/strnlen1.c: New file.
27402
27403 2005-08-16  Bruno Haible  <bruno@clisp.org>
27404
27405         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
27406         (mbi_init): Update.
27407         (mbi_avail, mbi_advance): Let the iteration end before the terminating
27408         NUL byte, not after it.
27409
27410 2005-08-16  Bruno Haible  <bruno@clisp.org>
27411
27412         * lib/strcase.h (strcasecmp): Add note in comments.
27413         * lib/strncasecmp.c: Use code from strcasecmp.c.
27414         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
27415         (strcasecmp): Work correctly in multibyte locales.
27416
27417 2005-08-16  Bruno Haible  <bruno@clisp.org>
27418
27419         * lib/mbiter.h: New file.
27420
27421 2005-08-16  Bruno Haible  <bruno@clisp.org>
27422
27423         * lib/mbfile.h: New file.
27424
27425 2005-08-16  Bruno Haible  <bruno@clisp.org>
27426
27427         * lib/mbchar.h: New file.
27428         * lib/mbchar.c: New file.
27429
27430 2005-08-16  Bruno Haible  <bruno@clisp.org>
27431
27432         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
27433         the valid ones. Makes the comparison operations transitive:
27434         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
27435         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
27436
27437 2005-08-15  Simon Josefsson  <jas@extundo.com>
27438
27439         * modules/ssize_t (License): Change to 'unlimited'.
27440
27441         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
27442
27443 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27444
27445         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
27446         Add comments for each pending glibc patch.
27447
27448 2005-08-15  Bruno Haible  <bruno@clisp.org>
27449
27450         * lib/regex.h (__restrict_arr): Don't define to __restrict if
27451         __cplusplus is defined.
27452
27453 2005-08-14  Jim Meyering  <jim@meyering.net>
27454
27455         Sync from coreutils.
27456
27457         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
27458         Use the hash-table-based cycle-detection code not just when
27459         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
27460         Reported by James Youngman in
27461         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
27462         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
27463         FTS_TIGHT_CYCLE_CHECK.
27464         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
27465         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
27466         once again.
27467         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
27468         * lib/fts.c (fd_safer): Remove decl.
27469         Include fcntl--.h rather than unistd-safer.h
27470         (fts_safe_changedir): Don't call fd_safer; no longer needed
27471         now that we include fcntl--.h.
27472
27473 2005-08-12  Simon Josefsson  <jas@extundo.com>
27474
27475         * modules/getndelim2: Use ssize_t module.
27476         * modules/getnline: Likewise.
27477         * modules/safe-read: Likewise.
27478         * modules/xreadlink: Likewise.
27479
27480         * modules/ssize_t: New file.
27481
27482 2005-08-12  Simon Josefsson  <jas@extundo.com>
27483
27484         * m4/readline.m4: Look for termcap, curses or ncurses if required.
27485
27486 2005-08-12  Simon Josefsson  <jas@extundo.com>
27487
27488         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
27489         ssize_t.
27490
27491 2005-08-12  Simon Josefsson  <jas@extundo.com>
27492
27493         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
27494         readline, getdelim and check_version.
27495         (Support for systems lacking ISO C 99: Sizes of integer types):
27496         Add size_max.
27497
27498 2005-08-12  Bruno Haible  <bruno@clisp.org>
27499
27500         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
27501
27502 2005-08-11  Simon Josefsson  <jas@extundo.com>
27503
27504         * modules/readline: New file.
27505
27506         * modules/strnlen (Files): Add strnlen.h.
27507
27508 2005-08-11  Simon Josefsson  <jas@extundo.com>
27509
27510         * m4/readline.m4: New file.
27511
27512 2005-08-11  Simon Josefsson  <jas@extundo.com>
27513
27514         * lib/readline.h, readline.c: New file.
27515
27516 2005-08-11  Simon Josefsson  <jas@extundo.com>
27517
27518         * doc/gnulib.texi (Initial import, Finishing touches): Mention
27519         gl_AVOID.
27520
27521 2005-08-11  Bruno Haible  <bruno@clisp.org>
27522
27523         * lib/strnlen.h (strnlen): Change parameter name to match comment.
27524
27525 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
27526
27527         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
27528
27529 2005-08-10  Simon Josefsson  <jas@extundo.com>
27530
27531         * tests/test-iconvme.c: New file.
27532
27533 2005-08-10  Simon Josefsson  <jas@extundo.com>
27534
27535         * m4/strnlen.m4: New file.
27536
27537         * m4/strndup.m4: Don't check for strnlen declaration, done in
27538         strnlen.m4.
27539
27540 2005-08-10  Simon Josefsson  <jas@extundo.com>
27541
27542         * lib/strndup.c: Use strnlen.h.
27543
27544         * lib/strnlen.h: New file.
27545
27546 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
27547
27548         * README: Typos.
27549
27550 2005-08-02  Simon Josefsson  <jas@extundo.com>
27551
27552         * modules/readline: New file.
27553
27554 2005-08-02  Simon Josefsson  <jas@extundo.com>
27555
27556         * modules/getdelim: New file.
27557
27558         * modules/getline: Rewrite, don't use getndelim2.
27559
27560 2005-08-02  Simon Josefsson  <jas@extundo.com>
27561
27562         * m4/getline.m4: Separate out getdelim stuff into separate module.
27563
27564         * m4/getdelim.m4: New file.
27565
27566 2005-08-02  Simon Josefsson  <jas@extundo.com>
27567
27568         * lib/getline.h, getline.c: Rewrite.
27569
27570         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
27571
27572 2005-07-31  Bruno Haible  <bruno@clisp.org>
27573
27574         * lib/lock.h (gl_lock_initializer): New macro.
27575         (gl_lock_define_initialized): Use it.
27576         (gl_rwlock_initializer): New macro.
27577         (gl_rwlock_define_initialized): Use it.
27578         (gl_recursive_lock_initializer): New macro.
27579         (gl_recursive_lock_define_initialized): Use it.
27580
27581 2005-07-30  Karl Berry  <karl@gnu.org>
27582
27583         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
27584         Report from Ben Pfaff, regarding getopt.
27585
27586 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27587
27588         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
27589         normal way.
27590         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
27591         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
27592         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
27593         (gl_GETOPT): Use the new macros.  Most of the implementation
27594         is moved to the new macros.  This is for programs like Emacs
27595         that don't want all the functionality of gl_GETOPT.
27596
27597 2005-07-26  Bruno Haible  <bruno@clisp.org>
27598
27599         * m4/lock.m4: Update from GNU gettext.
27600
27601 2005-07-26  Bruno Haible  <bruno@clisp.org>
27602
27603         * lib/lock.h: Update from GNU gettext.
27604         * lib/lock.c: Update from GNU gettext.
27605
27606 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
27607
27608         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
27609         obsolescent AC_TRY_RUN.  Include the default includes files, for
27610         'exit'.
27611
27612 2005-07-24  Bruno Haible  <bruno@clisp.org>
27613
27614         * modules/visibility: New file.
27615         * MODULES.html.sh (Misc): Add visibility.
27616
27617 2005-07-24  Bruno Haible  <bruno@clisp.org>
27618
27619         * m4/visibility.m4: New file.
27620
27621 2005-07-24  Bruno Haible  <bruno@clisp.org>
27622
27623         * doc/visibility.texi: New file.
27624
27625 2005-07-22  Bruno Haible  <bruno@clisp.org>
27626
27627         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
27628         $(ALLOCA_H), redundant through BUILT_SOURCES.
27629         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
27630         redundant through BUILT_SOURCES.
27631         * modules/byteswap (Makefile.am): Remove explicit dependency on
27632         $(BYTESWAP_H), redundant through BUILT_SOURCES.
27633         * modules/fnmatch (Makefile.am): Remove explicit dependency on
27634         $(FNMATCH_H), redundant through BUILT_SOURCES.
27635         * modules/getopt (Makefile.am): Remove explicit dependency on
27636         $(GETOPT_H), redundant through BUILT_SOURCES.
27637         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
27638         redundant through BUILT_SOURCES.
27639         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
27640         redundant through BUILT_SOURCES.
27641         * modules/stdbool (Makefile.am): Remove explicit dependency on
27642         $(STDBOOL_H), redundant through BUILT_SOURCES.
27643         * modules/stdint (Makefile.am): Remove explicit dependency on
27644         $(STDINT_H), redundant through BUILT_SOURCES.
27645         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
27646         Remove explicit dependency on $(SYSEXITS_H).
27647         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
27648
27649 2005-07-18  Simon Josefsson  <jas@extundo.com>
27650
27651         * lib/check-version.c (check_version): Accept identical versions too.
27652
27653 2005-07-18  Bruno Haible  <bruno@clisp.org>
27654
27655         * modules/lock: New file.
27656         * MODULES.html.sh (Multithreading): New section.
27657
27658 2005-07-18  Bruno Haible  <bruno@clisp.org>
27659
27660         * m4/lock.m4: New file, from GNU gettext.
27661
27662 2005-07-18  Bruno Haible  <bruno@clisp.org>
27663
27664         * lib/lock.h: New file, from GNU gettext.
27665         * lib/lock.c: New file, from GNU gettext.
27666
27667 2005-07-18  Bruno Haible  <bruno@clisp.org>
27668
27669         * lib/lock.h (gl_once_t): New type.
27670         (gl_once_define, gl_once): New macros.
27671         * lib/lock.c (fresh_once): New variable.
27672         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
27673         functions.
27674
27675 2005-07-16  Simon Josefsson  <jas@extundo.com>
27676
27677         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
27678         workaround, suggested by Bruno.
27679
27680 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27681
27682         * modules/xalloc (Depends-on): Add xalloc-die.
27683         * modules/xvasprintf (Depends-on): Add xalloc-die.
27684
27685 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27686
27687         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
27688         with a minor change.
27689
27690 2005-07-15  Bruno Haible  <bruno@clisp.org>
27691
27692         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
27693         When using lib/poll.c, define poll as rpl_poll.
27694
27695 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
27696
27697         * modules/argp (Depends-on): Remove unlocked-io.
27698
27699 2005-07-14  Derek Price  <derek@ximbiot.com>
27700
27701         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
27702         for glob symlink bug.
27703
27704 2005-07-14  Bruno Haible  <bruno@clisp.org>
27705
27706         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
27707         Instead, test for *_unlocked function declarations directly.
27708
27709 2005-07-11  Simon Josefsson  <jas@extundo.com>
27710
27711         * modules/size_max: New file.
27712
27713         * modules/xsize: Depend on size_max module for size_max.m4.
27714
27715 2005-07-11  Simon Josefsson  <jas@extundo.com>
27716
27717         * lib/size_max.h: New file.
27718
27719 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
27720
27721         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
27722         copyright symbol and the year.
27723         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
27724         (version_etc_va): Use parameterized copyright notice.
27725         Reword to conform to the current GNU coding standards.
27726
27727 2005-07-11  Karl Berry  <karl@gnu.org>
27728
27729         * doc/gnulib.texi (Quoting): new node.
27730         (Initial import): more info, from Patrice.
27731
27732 2005-07-11  Bruno Haible  <bruno@clisp.org>
27733
27734         * gnulib-tool (func_usage): Document option --avoid.
27735         (Command line options): Handle --avoid.
27736         (func_acceptable): New function.
27737         (func_modules_transitive_closure): Use it.
27738
27739 2005-07-11  Bruno Haible  <bruno@clisp.org>
27740
27741         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
27742         Reported by Jim Meyering.
27743
27744 2005-07-10  Bruno Haible  <bruno@clisp.org>
27745
27746         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
27747         Needed when size_t is smaller than 'unsigned int'.
27748         Reported by Paul Eggert.
27749
27750 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27751
27752         * modules/argp (Depends-on): Add unlocked-io
27753
27754 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27755
27756         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
27757         block of defines.
27758
27759 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
27760
27761         * config/srclist.txt: Comment out regcomp.c, since we have a porting
27762         fix now.
27763
27764 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
27765         and Paul Eggert  <eggert@cs.ucla.edu>
27766
27767         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
27768         in wint_t, not wchar_t.  Remove now-unnecessary cast.
27769
27770 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27771
27772         * modules/regex (Files): Add lib/regex_internal.c,
27773         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
27774         (Depends-on): Add extensions.
27775         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
27776
27777 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27778
27779         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
27780         pathconf.
27781         * m4/same.m4 (gl_SAME): Likewise.
27782         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
27783
27784         * m4/regex.m4: Adjust to new libc regex implementation.
27785         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
27786         all the .c and .h parts of (the new) regex.
27787         Quote the m4 stuff better.
27788         Check for RE_ICASE bug of old gnulib.
27789         Check for REG_STARTEND of recent libc.
27790         Rename local variables from jm_* to gl_*.
27791         Quote operand of "test -f".
27792         Say "recent enough" version of libc, not "version 2".
27793         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
27794         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
27795         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
27796         Remove check for btowc, isascii.
27797         Require AM_LANGINFO_CODESET.
27798
27799 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27800
27801         * lib/regex.c, regex.h: Sync from libc.
27802         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
27803         * lib/regexec.c:
27804         New files, synced from libc, except that regex_internal.h
27805         currently has a small porting fix.
27806
27807 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
27808
27809         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
27810         regex_internal.c, regexec.c.
27811         Add regex_internal.h too, but as a comment, since the libc version
27812         is currently broken in gnulib mode.
27813
27814 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
27815
27816         Support programs like Emacs that use gnulib but not gettext.
27817         * MODULES.html.sh (Internationalization functions): Add gettext-h.
27818         * modules/gettext-h: New file.
27819         * modules/gettext (Files): Remove lib/gettext.h.
27820         (Depends-on): Add gettext-h.
27821         (Makefile.am): Remove lib_SOURCES.
27822         * modules/argmatch, modules/c-stack, modules/closeout:
27823         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
27824         * modules/execute, modules/file-type, modules/getaddrinfo:
27825         * modules/getopt, modules/human, modules/javacomp:
27826         * modules/javaexec, modules/mkdir-p, modules/obstack:
27827         * modules/openat, modules/pagealign_alloc, modules/pipe:
27828         * modules/quotearg, modules/regex, modules/rpmatch:
27829         * modules/unicodeio, modules/userspec, modules/version-etc:
27830         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
27831         * modules/xsetenv:
27832         Depend on gettext-h, not gettext.
27833
27834 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
27835
27836         * gnulib-tool (func_import): Add support for 'public domain' license.
27837         * modules/alloca, modules/atexit, modules/memmove:
27838         Now public domain, not GPL.
27839         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
27840         * modules/realloc, modules/strerror, modules/strtod:
27841         Now LGPL, not GPL.
27842
27843 2005-07-05  Bruno Haible  <bruno@clisp.org>
27844
27845         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
27846         autoconf CVS. Needed for mingw.
27847
27848 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27849
27850         Remove the dependency of the strftime module on the tzset module.
27851         * modules/strftime (Depends-on): Remove dependency on tzset.
27852
27853 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27854
27855         Remove the dependency of the strftime module on the tzset module.
27856         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
27857         gl_FUNC_TZSET_CLOBBER.
27858
27859 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
27860
27861         Remove the dependency of the strftime module on the tzset module.
27862         * lib/strftime.c (my_strftime)
27863         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
27864         Copy the input structure, to work around some of the bug with
27865         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
27866         Solaris releases, you should also use the tzset module, but we won't
27867         require it as a dependency any more since we don't want LGPLed code
27868         to depend on GPLed code.
27869
27870 2005-07-02  Jim Meyering  <jim@meyering.net>
27871
27872         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
27873         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
27874         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
27875         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
27876
27877 2005-07-02  Jim Meyering  <jim@meyering.net>
27878
27879         * lib/backupfile.c (backup_args): Change a `0' to NULL.
27880
27881 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
27882
27883         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
27884         declares only 'struct timespec;' (!).
27885
27886 2005-07-01  Jim Meyering  <jim@meyering.net>
27887
27888         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
27889         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
27890         * lib/save-cwd.c, tempname.c:
27891         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
27892         and don't include <sys/file.h>).
27893
27894 2005-06-29  Jim Meyering  <jim@meyering.net>
27895
27896         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
27897         type name.  Use the variable name instead.
27898         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
27899         Likewise.
27900
27901 2005-06-28  Simon Josefsson  <jas@extundo.com>
27902
27903         * modules/check-version (Files): Add check-version.m4.
27904
27905 2005-06-28  Simon Josefsson  <jas@extundo.com>
27906
27907         * m4/check-version.m4: New file, suggested by Jim Meyering
27908         <jim@meyering.net>.
27909
27910 2005-06-28  Simon Josefsson  <jas@extundo.com>
27911
27912         * lib/check-version.h, lib/check-version.c: New files.
27913
27914 2005-06-28  Simon Josefsson  <jas@extundo.com>
27915
27916         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
27917         collision with global variable.  Better indentation.  Don't
27918         increment buffer pointer beyond buffer end.  Based on comments
27919         from Paul Eggert <eggert@cs.ucla.edu>.
27920
27921         * lib/base64.h: Indent.
27922
27923 2005-06-28  Simon Josefsson  <jas@extundo.com>
27924
27925         * doc/gnulib.texi (Library version handling): New section.
27926
27927 2005-06-28  Jim Meyering  <jim@meyering.net>
27928
27929         * check-module (find_included_lib_files): Hard-code another
27930         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
27931         but modules/fts-lgpl (correctly) does not list those files.
27932
27933         * modules/canonicalize (Files): Add lib/pathmax.h.
27934
27935 2005-06-25  Simon Josefsson  <jas@extundo.com>
27936
27937         * modules/check-version: New file.
27938
27939 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
27940
27941         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
27942         initializer of struct addrinfo, as an indication that we don't
27943         care how many members the structure has.
27944
27945 2005-06-24  Derek Price  <derek@ximbiot.com>
27946         and Bruno Haible  <bruno@clisp.org>
27947
27948         Remove stat module & update lstat.
27949         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
27950         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
27951         * m4/stat.m4: Remove this file.
27952
27953 2005-06-24  Derek Price  <derek@ximbiot.com>
27954         and Bruno Haible  <bruno@clisp.org>
27955
27956         Remove stat module & update lstat.
27957         * lib/stat.c: Remove this file...
27958         (slash_aware_lstat): ...moving this content and its support...
27959         * lib/lstat.c (rpl_lstat): ...into here.
27960         * lib/lstat.h: New file.
27961
27962 2005-06-24  Derek Price  <derek@ximbiot.com>
27963         and Bruno Haible  <bruno@clisp.org>
27964
27965         Remove stat module & update lstat.
27966         * config/srclist.txt (libc sources): Remove stat.
27967
27968 2005-06-24  Derek Price  <derek@ximbiot.com>
27969         and Bruno Haible  <bruno@clisp.org>
27970
27971         Remove stat module & update lstat.
27972         * MODULES.html.sh (stat): Remove.
27973         * MODULES.html: Regenerated.
27974         * modules/lstat (Description): Correct function name.
27975         (Files): Add "lstat.h".
27976         (Depends-on): Remove stat, add xalloc, stat-macros.
27977         * modules/stat: Remove this file.
27978         (Include): Add "lstat.h", remove <sys/stat.h>.
27979
27980 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
27981
27982         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
27983         (ranged_convert): Don't save conversion in a temporary struct.
27984         This causes a warning with GCC 4.0.0, and anyway in the typical
27985         case it's not worth the extra 100 bytes or so of code.
27986         (ranged_convert, __mktime_internal): When calling a function via a
27987         pointer P, use P () rather than (*P) (), as we now assume C89 or
27988         better.
27989
27990 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27991
27992         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
27993         "who -r" failed to give output.  Problem reported by Tim Waugh.
27994
27995         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
27996         (xcalloc): Use it to avoid needless tests.
27997         Problem reported by Jim Meyering.
27998
27999 2005-06-20  Derek Price  <derek@ximbiot.com>
28000
28001         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
28002         unnecessary for Autoconfs > 2.59c.
28003
28004 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28005
28006         * lib/argp.h (__option_is_short): Check upper limit of
28007         __key. Isprint() requires its argument to have the value
28008         of an unsigned char or EOF.
28009
28010 2005-06-16  Jim Meyering  <jim@meyering.net>
28011
28012         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
28013         when either N or S is zero.
28014
28015 2005-06-16  Derek Price  <derek@ximbiot.com>
28016
28017         * m4/bison.m4: Declare YACC & YFLAGS precious.
28018
28019 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
28020
28021         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
28022         multibyte string or pattern, fall back on unibyte matching.
28023         Problem reported by James Youngman.
28024
28025 2005-06-08  Bruno Haible  <bruno@clisp.org>
28026
28027         * modules/csharpcomp: New file.
28028         * MODULES.html.sh (C#): Add csharpcomp.
28029
28030 2005-06-08  Bruno Haible  <bruno@clisp.org>
28031
28032         * m4/csharpcomp.m4: New file, from GNU gettext.
28033
28034 2005-06-08  Bruno Haible  <bruno@clisp.org>
28035
28036         * lib/csharpcomp.h: New file, from GNU gettext.
28037         * lib/csharpcomp.c: New file, from GNU gettext.
28038         * lib/csharpcomp.sh.in: New file, from GNU gettext.
28039
28040 2005-06-08  Bruno Haible  <bruno@clisp.org>
28041
28042         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
28043         warning on mingw.
28044
28045 2005-06-07  Derek Price  <derek@ximbiot.com>
28046
28047         Sync from CVS.
28048         * lib/glob_.h: Indent nested #ifdef.
28049
28050 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28051
28052         Sync from coreutils.
28053         Use "file name" when talking about file names, instead of "filename"
28054         or "path", as per the GNU coding standards.
28055         * lib/mkdir-p.c: Renamed from makepath.c.
28056         (make_dir_parents): Renamed from make_path.  All callers changed.
28057         * lib/mkdir-p.h: Likewise.  All includers changed.
28058         * lib/filenamecat.c: Renamed from path-concat.c.
28059         (file_name_concat): Renamed from path_concat.  All callers changed.
28060         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
28061         * lib/filenamecat.h: Likewise.  All includers changed.
28062         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
28063         in comments or local variable names.
28064         * lib/basename.c: Likewise.
28065         * lib/canonicalize.c, canonicalize.h: Likewise.
28066         * lib/dirname.c, dirname.h: Likewise.
28067         * lib/euidaccess.c: Likewise.
28068         * lib/exclude.c: Likewise
28069         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
28070         * lib/fsusage.c, fsuage.h: Likewise.
28071         * lib/fts.c, fts_.h: Likewise.
28072         * lib/getcwd.c: Likewise.
28073         * lib/getloadavg.c: Likewise.
28074         * lib/mkstemp.c: Likewise.
28075         * lib/mountlist.c, mountlist.h: Likewise.
28076         * lib/openat.c, openat.h: Likewise.
28077         * lib/readlink-stub.c: Likewise.
28078         * lib/readutmp.c, readutmp.h: Likewise.
28079         * lib/rename.c: Likewise.
28080         * lib/rmdir.c: Likewise.
28081         * lib/same.c: Likewise.
28082         * lib/savedir.c: Likewise.
28083         * lib/stripslash.c: Likewise.
28084         * lib/tempname.c: Likewise.
28085         * lib/xreadlink.c: Likewise.
28086         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
28087         All uses changed.
28088         * lib/exclude.h: Likewise.
28089
28090         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
28091         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28092         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
28093         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28094         * lib/pathmax.h: Include <limits.h> unconditionally, since other
28095         files have been getting away with it for years (MORE/BSD 4.3
28096         is extinct now).
28097         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
28098         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28099
28100         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
28101         Define to 256, not 255, as per modern POSIX.
28102
28103 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28104
28105         Sync from coreutils.
28106         Use "file name" when talking about file names, instead of "filename"
28107         or "path", as per the GNU coding standards.
28108         * MODULES.html.sh: mkdir-p renamed from makepath.
28109         filenamecat renamed from path-concat.
28110         * modules/filenamecat: Renamed from modules/path-concat.
28111         (Files): filenamecat.h and filenamecat.c renamed from
28112         path-concat.h and path-concat.c.
28113         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
28114         (Include): filenamecat.h, not path-concat.h.
28115         * modules/mkdir-p: Renamed from modules/makepath.
28116         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
28117         makepath.c.
28118         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
28119         (Include): mkdir-p.h, not makepath.h.
28120
28121 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28122
28123         Sync from coreutils.
28124         * m4/mkdir-p.m4: Renamed from makepath.m4.
28125         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
28126         Rename files from makepath.c to mkdir-p.c, and from
28127         makepath.h to mkdir-p.h.
28128         * m4/filenamecat.m4: Renamed from path-concat.m4.
28129         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
28130         Rename files from path-concat.c to filenamecat.c,
28131         and from path-concat.h to filenamecat.h.
28132         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
28133         "file name" in local variables or comments.
28134         * m4/rename.m4: Likewise.
28135
28136 2005-06-01  Bruno Haible  <bruno@clisp.org>
28137
28138         * modules/csharpexec: New file.
28139         * MODULES.html.sh (C#): New section.
28140
28141 2005-06-01  Bruno Haible  <bruno@clisp.org>
28142
28143         * m4/csharp.m4: New file, from GNU gettext.
28144         * m4/csharpexec.m4: New file, from GNU gettext.
28145
28146 2005-06-01  Bruno Haible  <bruno@clisp.org>
28147
28148         * lib/csharpexec.h: New file, from GNU gettext.
28149         * lib/csharpexec.c: New file, from GNU gettext.
28150         * lib/csharpexec.sh.in: New file, from GNU gettext.
28151
28152 2005-05-31  Derek Price  <derek@ximbiot.com>
28153             Paul Eggert  <eggert@cs.ucla.edu>
28154
28155         Sync from cvs.
28156         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
28157
28158 2005-05-31  Derek Price  <derek@ximbiot.com>
28159             Paul Eggert  <eggert@cs.ucla.edu>
28160
28161         Sync from cvs.
28162         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
28163
28164 2005-05-29  Derek Price  <derek@ximbiot.com>
28165
28166         * config/srclist.txt (glob_.h, glob.c): Add these files.
28167
28168 2005-05-29  Derek Price  <derek@ximbiot.com>
28169
28170         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
28171         * modules/glob: New file.
28172         * modules/getlogin_r: Add link to POSIX spec in description.
28173
28174 2005-05-29  Derek Price  <derek@ximbiot.com>
28175             Paul Eggert  <eggert@cs.ucla.edu>
28176
28177         * m4/glob.m4: New file.
28178
28179 2005-05-29  Derek Price  <derek@ximbiot.com>
28180             Paul Eggert  <eggert@cs.ucla.edu>
28181
28182         * lib/glob_.h, lib/glob.c: New files.
28183
28184 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28185
28186         * modules/fts (Files): Remove m4/inttypes-pri.m4.
28187         * modules/fts-lgpl (Depends-on): Remove gettext.
28188
28189 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28190
28191         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
28192         and don't require gt_INTTYPES_PRI.
28193
28194 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
28195
28196         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
28197
28198         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
28199         the configuration hassle isn't worth it.
28200         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
28201         (LONGEST_MODIFIER, PRIuMAX): Remove.
28202
28203 2005-05-27  Bruno Haible  <bruno@clisp.org>
28204
28205         * lib/getlogin_r.h: Remove second include of <stddef.h>.
28206
28207 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
28208
28209         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
28210         _POSIX_PTHREAD_SEMANTICS for Solaris.
28211
28212 2005-05-25  Derek Price  <derek@ximbiot.com>
28213
28214         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
28215
28216 2005-05-25  Derek Price  <derek@ximbiot.com>
28217             Paul Eggert  <eggert@cs.ucla.edu>
28218
28219         * modules/getlogin_r, m4/getlogin_r.m4: New files.
28220         * lib/getlogin_r.c, getlogin_r.h: New files.
28221
28222 2005-05-25  Bruno Haible  <bruno@clisp.org>
28223             Derek Price  <derek@ximbiot.com>
28224
28225         * lib/getlogin_r.h: Simplify API documentation.
28226
28227 2005-05-23  Derek Price  <derek@ximbiot.com>
28228
28229         * modules/minmax (Files): Add m4/minmax.m4.
28230         (configure.ac): Add gl_MINMAX.
28231
28232 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
28233
28234         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
28235         so that unistd-safer.h (GPL'ed code) need not be included.
28236
28237 2005-05-22  Bruno Haible  <bruno@clisp.org>
28238
28239         * m4/minmax.m4: New file.
28240         Based on a patch by Derek Price <derek@ximbiot.com>.
28241
28242 2005-05-22  Bruno Haible  <bruno@clisp.org>
28243
28244         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
28245         (INT64_MIN): Fix definition.
28246         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
28247
28248         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
28249         NEED_SIGNED_INT_TYPES.
28250
28251         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
28252         HAVE_SYSTEM_INTTYPES.
28253
28254 2005-05-22  Bruno Haible  <bruno@clisp.org>
28255
28256         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
28257         Also include <sys/param.h> if it defines MIN, MAX.
28258         Based on a patch by Derek Price <derek@ximbiot.com>.
28259
28260 2005-05-21  Jim Meyering  <jim@meyering.net>
28261
28262         * modules/fts (Files): Add m4/inttypes-pri.m4.
28263         (Depends-on): Add lstat and remove gettext.  Alphabetize.
28264
28265 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28266
28267         New fts module.
28268         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
28269         (setup_dir, free_dir): New functions.
28270         (enter_dir, leave_dir): Define trivial
28271         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
28272         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
28273         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
28274         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
28275         Move to fts-cycle.c.
28276         (fts_open): Use setup_dir.
28277         (fts_close): Use free_dir.
28278         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
28279         This adds a label and some gotos, but the alternatives were messier.
28280         Check for memory allocation failure when entering a dir.
28281         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
28282         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
28283         (FTS): New member fts_cycle, that is a union that contains the
28284         old active_dir_ht and cycle_state.  All uses changed to mention
28285         fts_cycle.ht and fts_cycle.state.
28286         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
28287         fts.c, with the following changes:
28288         (setup_dir, free_dir): New functions.
28289         (enter_dir): Now returns bool.  Return true if successful, false
28290         if memory exhausted.  All callers changed.
28291         Do not bother partly cleaning up on
28292         memory allocation failure; that is free_dir's job.
28293         However, free ad if hash_insert fails, to avoid memory leak.
28294         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
28295         fts->fts_options to see which union member to use.
28296
28297 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28298
28299         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
28300         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
28301
28302 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28303
28304         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
28305
28306 2005-05-20  Jim Meyering  <jim@meyering.net>
28307
28308         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
28309         Now a macro, to pacify GCC.
28310
28311 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
28312
28313         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
28314         of -1.
28315
28316 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
28317
28318         * lib/chown.c (rpl_chown): Return -1 on failure.
28319
28320 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28321
28322         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
28323         Don't check for stddef.h.
28324         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
28325         don't use its results.
28326         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
28327         since we include them unconditionally.  Don't require
28328         AM_STDBOOL_H, since stdbool is a prerequisite.
28329         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
28330         since we assume C89 or better.
28331         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
28332         as we don't use their results.
28333         Don't check for fchdir, memmove, memset, strrchr, as we use
28334         them unconditionally.
28335         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
28336         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
28337
28338 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28339
28340         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
28341         Include <stddef.h> unconditionally, since we assume C89 now.
28342         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
28343         * lib/fts.c: Include fts_.h first, to check interface.
28344         Do not include intprops.h; no longer needed.
28345         Include cycle-check.h and hash.h, since fts_.h no longer does.
28346         Remove unnecessary casts of closedir to void.
28347         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
28348         decide whether to decrement nlinks.
28349         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
28350         (FTS): Use struct hash_table * instead of Hash_table, so that
28351         we no longer need to include hash.h here.
28352
28353 2005-05-18  Jim Meyering  <jim@meyering.net>
28354
28355         * modules/dirfd (License): Change to LGPL.  Most of the code
28356         is already in the public domain.
28357
28358 2005-05-18  Jim Meyering  <jim@meyering.net>
28359
28360         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
28361         Reported by Yoann Vandoorselaere.
28362
28363 2005-05-17  Jim Meyering  <jim@meyering.net>
28364
28365         * m4/fts.m4: New file, from coreutils.
28366
28367 2005-05-17  Jim Meyering  <jim@meyering.net>
28368
28369         * lib/fts.c, lib/fts_.h: New files, from coreutils.
28370
28371 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28372
28373         Sync from coreutils.
28374         * m4/unlinkdir.m4: New file.
28375
28376 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28377
28378         Sync from coreutils.
28379         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
28380         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
28381         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
28382         White space changes only.
28383         * lib/makepath.c (make_path): Port to hosts where leading "//" is
28384         special.
28385         * lib/yesno.c: Include getline.h, not ctype.h.
28386         (yesno): Don't remove leading white space; POSIX doesn't allow it.
28387         Use getline to remove arbitrary restriction on response length.
28388
28389 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28390
28391         * config/srclist-update: Spell out "Street" in FSF postal
28392         mail address; this is the style the FSF seems to prefer.
28393
28394         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
28395         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
28396         this updates FSF postal mail address.
28397
28398         Sync from coreutils.
28399         * modules/unlinkdir: New file.
28400         * modules/yesno (Depends-on): Add getline.
28401         * MODULES.html.sh (File system functions): Add unlinkdir.
28402
28403 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28404
28405         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
28406         lib/strsep.h:
28407         Change the initial comment to refer to GPL, not LGPL.
28408         gnulib-tool will change it to LGPL as needed.
28409
28410         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
28411         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
28412         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
28413         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
28414         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
28415         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
28416         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
28417         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
28418         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
28419         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
28420         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
28421         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
28422         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
28423         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
28424         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
28425         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
28426         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
28427         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
28428         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
28429         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
28430         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
28431         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
28432         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
28433         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
28434         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
28435         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
28436         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
28437         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
28438         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
28439         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
28440         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
28441         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
28442         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
28443         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
28444         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
28445         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
28446         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
28447         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
28448         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
28449         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
28450         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
28451         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
28452         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
28453         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
28454         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
28455         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
28456         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
28457         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
28458         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
28459         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
28460         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
28461         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
28462         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
28463         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
28464         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
28465         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
28466         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
28467         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
28468         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
28469         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
28470         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
28471         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
28472         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
28473         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
28474         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
28475         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
28476         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
28477         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
28478         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
28479         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
28480         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
28481         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
28482         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
28483         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
28484         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
28485         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
28486         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
28487         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
28488         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
28489         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
28490         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
28491         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
28492         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
28493         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
28494         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
28495         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
28496         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
28497         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
28498         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
28499         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
28500         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
28501         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
28502         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
28503         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
28504         lib/yesno.c, lib/yesno.h:
28505         Update FSF postal mail address.
28506
28507 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
28508
28509         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
28510         tests/test-memmem.c, tests/test-stpncpy.c:
28511         Update FSF postal mail address.
28512
28513 2005-05-13  Bruno Haible  <bruno@clisp.org>
28514
28515         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
28516         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
28517         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
28518         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
28519         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
28520         Add support for 64-bit integers in the MSVC compiler.
28521
28522 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28523
28524         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
28525
28526 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
28527
28528         * gnulib-tool (func_import): Sort and uniquify recommended includes.
28529
28530 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
28531
28532         * doc/getdate.texi (General date syntax): Don't say that date
28533         date --iso-8601=ns generates acceptable dates; it doesn't yet.
28534         Problem reported by Nic Ferrier.
28535
28536 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28537
28538         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
28539         specified in ai_socktype. Fix invalid ai_protocol
28540         check. ai_protocol is usually set to 0 or depending on
28541         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
28542         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
28543         ai_socktype / ai_protocol in the returned addrinfo structure.
28544
28545 2005-05-10  Simon Josefsson  <jas@extundo.com>
28546
28547         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
28548         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28549
28550 2005-05-10  Karl Berry  <karl@gnu.org>
28551
28552         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
28553         (from http://www.gnu.org/licenses).
28554         * doc/COPYING.LIB: also rename to COPYING.LESSER.
28555         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
28556         fdl.texi suffices.
28557
28558 2005-05-10  Karl Berry  <karl@gnu.org>
28559
28560         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
28561         (COPYING.DOC): remove.
28562
28563         * config/srclist-update: new FSF address.
28564
28565 2005-05-10  Derek Price  <derek@ximbiot.com>
28566
28567         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
28568         possible.
28569
28570 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28571             Bruno Haible  <bruno@clisp.org>
28572
28573         * modules/inet_ntop: New file.
28574         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28575         inet_ntop.
28576
28577 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28578             Bruno Haible  <bruno@clisp.org>
28579
28580         * m4/inet_ntop.m4: New file.
28581
28582 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28583             Bruno Haible  <bruno@clisp.org>
28584
28585         * lib/inet_ntop.h: New file.
28586         * lib/inet_ntop.c: New file, from glibc with modifications.
28587
28588 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
28589
28590         * modules/time_r (License): Change to LGPL.
28591         * modules/extensions (License): Change to LGPL.  Actually,
28592         the license is more permissive than that, but currently gnulib-tool
28593         doesn't know how to handle more-permissive licenses.
28594
28595         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
28596         Problem reported by Dave Love.
28597
28598 2005-05-08  Jim Meyering  <jim@meyering.net>
28599
28600         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
28601         blank.
28602
28603 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
28604
28605         * modules/argmatch (Depends-on): Add stdbool.
28606         * modules/backupfile (Depends-on): Likewise.
28607         * modules/chdir-long (Depends-on): Likewise.
28608         * modules/closeout (Depends-on): Likewise.
28609         * modules/cycle-check (Depends-on): Likewise.
28610         * modules/dirname (Depends-on): Likewise.
28611         * modules/fnmatch (Depends-on): Likewise.
28612         * modules/fsusage (Depends-on): Likewise.
28613         * modules/fwriteerror (Depends-on): Likewise.
28614         * modules/getcwd (Depends-on): Likewise.
28615         * modules/getloadavg (Depends-on): Likewise.
28616         * modules/hard-locale (Depends-on): Likewise.
28617         * modules/makepath (Depends-on): Likewise.
28618         * modules/mountlist (Depends-on): Likewise.
28619         * modules/nanosleep (Depends-on): Likewise.
28620         * modules/posixtm (Depends-on): Likewise.
28621         * modules/quotearg (Depends-on): Likewise.
28622         * modules/readtokens (Depends-on): Likewise.
28623         * modules/readtokens0 (Depends-on): Likewise.
28624         * modules/readutmp (Depends-on): Likewise.
28625         * modules/save-cwd (Depends-on): Likewise.
28626         * modules/strftime (Depends-on): Likewise.
28627         * modules/userspec (Depends-on): Likewise.
28628         * modules/utimecmp (Depends-on): Likewise.
28629         * modules/xgetcwd (Depends-on): Likewise.
28630         * modules/xnanosleep (Depends-on): Likewise.
28631         * modules/xstrtod (Depends-on): Likewise.
28632         * modules/yesno (Depends-on): Likewise.
28633
28634 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
28635
28636         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
28637         needless checks.
28638
28639 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28640
28641         Merge from coreutils.  Among other things,
28642         add bulletproofing for cases where stdin, stdout, or stderr are closed.
28643         * lib/fd-safer.c: New file.
28644         * lib/fcntl-safer.h, open-safer.c: Remove.
28645         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
28646         * lib/dup-safer.c: Include unistd-safer.h first.
28647         Don't include errno.h.
28648         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
28649         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
28650         * lib/file-type.c: Rely on file-type.h change.
28651         * lib/getloadavg.c: Include unistd-safer.h.
28652         (getloadavg): Use safer open.
28653         * lib/getusershell.c: Include "stdio-safer.h".
28654         (getusershell): Use safer fopen.
28655         * lib/long-options.c (long_options): Use NULL rather than 0.
28656         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
28657         'free'.
28658         * lib/modechange.c: Likewise.
28659         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
28660         (MODE_DONE): New constant.
28661         (struct mode_change): Remove 'next' member.
28662         (make_node_op_equals): New function; like the old one of the
28663         same name, except it allocates an array.
28664         (mode_compile, mode_create_from_ref): Use it.
28665         (mode_compile): Allocate result as an array, not a linked list.
28666         Parse octal string ourself, so that we catch mistakes like "+0".
28667         (mode_adjust): Arg is an array, not a linked list.
28668         * lib/modechange.c: Include stat-macros.h, xalloc.h.
28669         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
28670         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
28671         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
28672         Remove.  This is now stat-macros.h's job.
28673         (talloc): Remove.  All callers replaced by xalloc, so that
28674         our invokers don't have to worry about reporting memory failures.
28675         (make_node_op_equals): Remove.
28676         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
28677         New constants.
28678         (struct mode_change): Moved here from modechange.h.
28679         (mode_append_entry): Remove.
28680         (mode_compile): Remove MASKED_OPS arg, since it encouraged
28681         apps to have incorrect behavior.  Use simpler algorithm for head
28682         and tail.  Don't futz with umask; that's now the job of mode_adjust.
28683         Detect more invalid usages rather than having somewhat-random behavior.
28684         Don't insert an "a=" action, as that leads to incorrect behavior.
28685         (mode_compile, mode_create_from_ref): Return NULL on error instead
28686         of an enum, since now there's only one way to have an error.  All
28687         callers changed.
28688         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
28689         at the correct time.  Simplify calculation of "+u" and its ilk.
28690         Don't mishandle "+X".
28691         (mode_free): Remove "register" and localize decls.
28692         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
28693         (struct mode_change): Move to modechange.c; callers don't
28694         need to see this stuff.
28695         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
28696         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
28697         (mode_change, mode_adjust): Reflect the new signatures noted above.
28698         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
28699         that might redefine system include files.
28700         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
28701         (my_usleep): Use NULL rather than (void *) 0.
28702         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
28703         Use siginterrupt to specify that system calls should be interrupted.
28704         (rpl_nanosleep): Move initialization of suspended closer to call of
28705         my_usleep.
28706         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
28707         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
28708         (desirable_utmp_entry): New function.
28709         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
28710         using x2nrealloc, to simplify logic.
28711         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
28712         size calculation.  Do not assume utmp file is a regular file.
28713         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
28714         (READ_UTMP_CHECK_PIDS): New constant.
28715         * lib/save-cwd.c: Include unistd-safer.h.
28716         (save_cwd): Use fd_safer.
28717         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
28718         [!_LIBC] Include "stat-macros.h" instead.
28719         * lib/unistd-safer.h (fd_safer): New decl.
28720
28721 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28722
28723         * modules/getloadavg (Depends-on): Add unistd-safer.
28724         * modules/getusershell (Depends-on): Add stdio-safer.
28725         * modules/lstat (Depends-on): Remove xalloc.
28726         * modules/mkstemp (Depends-on): Add stat-macros.
28727         * modules/modechange (Depends-on): Remove xstrtol.
28728         Add stat-macros, xalloc.
28729         * modules/save-cwd (Depends-on): Add unistd-safer.
28730         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
28731         * modules/unistd-safer (Files): Add lib/fd-safer.c
28732         (Makefile.am): Remove lib_SOURCES.
28733
28734         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
28735         Remove fcntl-safer; unistd-safer supersedes it.
28736
28737 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28738
28739         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
28740         AC_HEADER_STAT.
28741         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
28742         (gl_PREREQ_CHOWN): Remove.
28743         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
28744         it.  Don't require AC_HEADER_STAT.
28745         (gl_PREREQ_LSTAT): Remove.
28746         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
28747         Don't require AC_HEADER_STAT.
28748         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
28749         (gl_PREREQ_RMDIR): Remove.
28750         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
28751         mention stat-macros.h or AC_HEADER_STAT, since we'll make
28752         the stat-macros module a prerequisite.
28753         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
28754         * m4/filemode.m4 (gl_FILEMODE): Likewise.
28755         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
28756         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
28757         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
28758         variable names.
28759         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
28760         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
28761         variable prefixes.
28762         * m4/fcntl-safer.m4: Remove.
28763         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
28764         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
28765         Invoke gl_PREREQ_FD_SAFER.
28766         (gl_PREREQ_FD_SAFER): New macro.
28767         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
28768         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
28769         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
28770         Remove duplicate call to AC_LIBOBJ(readutmp).
28771         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
28772
28773         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
28774         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
28775
28776 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
28777
28778         * MODULES.html.sh (Misc): Add byteswap.
28779
28780 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28781
28782         * modules/getcwd (Depends-on): Add extensions.
28783         * modules/openat (Depends-on): Likewise.
28784
28785 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28786
28787         * modules/byteswap: New file.
28788
28789 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28790
28791         * m4/byteswap.m4: New file.
28792
28793 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
28794
28795         * lib/byteswap_.h: New file.
28796
28797 2005-04-25  Karl Berry  <karl@gnu.org>
28798
28799         * m4/gettext.m4: Update from GNU gettext 0.14.4.
28800
28801 2005-04-25  Albert Chin  <china@thewrittenword.com>
28802
28803         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
28804         Toolkit C bug.
28805
28806 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
28807
28808         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
28809         (func_ln_if_changed) Remove forcibly for no error message
28810         in case file does not exist.
28811
28812 2005-04-19  Simon Josefsson  <jas@extundo.com>
28813
28814         * gnulib-tool (Options): Make --symlink mean --symbolic.
28815
28816 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
28817
28818         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
28819
28820 2005-04-16  Simon Josefsson  <jas@extundo.com>
28821
28822         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
28823
28824 2005-04-15  Simon Josefsson  <jas@extundo.com>
28825
28826         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
28827
28828 2005-04-15  Simon Josefsson  <jas@extundo.com>
28829
28830         * gnulib-tool: Rename --symlink to --symbolic.
28831
28832 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
28833
28834         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
28835         symbolic links to files instead of copying/moving.  Add --aux-dir,
28836         specifying directory relative --dir where auxiliary build tools
28837         are placed.
28838
28839 2005-04-14  Bruno Haible  <bruno@clisp.org>
28840
28841         * modules/allocsa (License): Change to LGPL.
28842         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
28843
28844 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
28845
28846         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
28847         that "UTC +1 second" continues to work.  Problem reported
28848         by Dmitry V. Levin.
28849         (relunit_snumber): New rule.
28850         (relunit): Use it.
28851
28852 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
28853
28854         * lib/getdate.y (universal_time_zone_table): New constant.
28855         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
28856         universal_time_zone_table.
28857         (lookup_zone): Prefer universal_time_zone_table to
28858         local_time_zone_table, so that "GMT" time stamps are allowed in
28859         London during the summer.  Problem reported by Ian Abbott.
28860
28861 2005-04-12  Jim Meyering  <jim@meyering.net>
28862
28863         * lib/human.c (humblock): Set *options even when returning due to
28864         xstrtoumax conversion failure.  Thanks to a used-uninitialized
28865         warning from gcc-4.
28866
28867 2005-04-09  Jim Meyering  <jim@meyering.net>
28868
28869         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
28870         -Wuninitialized: initialize tm0.tm_year.
28871
28872 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
28873
28874         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
28875         count, since there's no maximum.  All uses changed.
28876         Add member dsts_seen.
28877         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
28878         not being INT_MAX.
28879         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
28880         Use pc_rels_seen to decide whther a date is absolute.
28881
28882         * lib/getdate.y (number): Don't overwrite year.
28883         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
28884         check.
28885
28886 2005-04-02  Simon Josefsson  <jas@extundo.com>
28887
28888         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
28889         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
28890
28891 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
28892
28893         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
28894         where no absolute path name can be longer than PATH_MAX.
28895
28896 2005-03-27  Jim Meyering  <jim@meyering.net>
28897
28898         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
28899
28900 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
28901
28902         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
28903         "one's complement" -> "ones' complement" in comment, as per Knuth.
28904         "value of type" -> "type or expression" in comment.
28905         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
28906
28907 2005-03-26  Jim Meyering  <jim@meyering.net>
28908
28909         Comment nits.
28910         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
28911         Correct typos: s/or/of/.
28912
28913 2005-03-26  Jim Meyering  <jim@meyering.net>
28914
28915         * modules/check-include-files: Move to ../ and rename to...
28916         * check-module: ...this.
28917
28918 2005-03-25  Jim Meyering  <jim@meyering.net>
28919
28920         * modules/xvasprintf (Files): Add xalloc.h.
28921
28922 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
28923
28924         * modules/gettext (Files): config/config.rpath ->
28925         build-aux/config.rpath
28926         * modules/iconv (Files): Likewise.
28927         Problem reported by Oskar Liljeblad.
28928
28929 2005-03-23  Jim Meyering  <jim@meyering.net>
28930
28931         * modules/check-include-files: New script to check for
28932         missing dependencies, multiple includes, etc.
28933
28934         * modules/c-strtold (Depends-on): Add xalloc.
28935         * modules/c-strtod (Depends-on): Add xalloc.
28936         * modules/hash (Depends-on): Add xalloc.
28937         (Files): Remove lib/xalloc.h.
28938
28939         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
28940         * modules/userspec (Files): Add lib/inttostr.h.
28941
28942 2005-03-23  Jim Meyering  <jim@meyering.net>
28943
28944         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
28945
28946 2005-03-22  Jim Meyering  <jim@meyering.net>
28947
28948         * modules/stat-macros: New module.
28949         * modules/canonicalize, modules/euidaccess, modules/file-type,
28950         * modules/filemode, modules/lchown, modules/makepath,
28951         * modules/rmdir, modules/stat: Depend on new stat-macros module
28952         rather than listing lib/stat-macros.h manually.
28953         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
28954
28955 2005-03-22  Jim Meyering  <jim@meyering.net>
28956
28957         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
28958
28959 2005-03-22  Bruno Haible  <bruno@clisp.org>
28960
28961         * config/srclist.txt: Replace target directory 'config' with
28962         'build-aux'.
28963         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
28964         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
28965         ../build-aux/.
28966
28967 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
28968
28969         * modules/chdir-long (Depends-on): Add mempcpy.
28970
28971         * modules/acl, modules/backupfile, modules/c-strtod,
28972         modules/c-strtold, modules/canon-host, modules/canonicalize,
28973         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
28974         modules/exclude, modules/exitfail, modules/file-type,
28975         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
28976         modules/getdate, modules/getline, modules/getpagesize,
28977         modules/getpass, modules/getugroups, modules/group-member,
28978         modules/hard-locale, modules/hash, modules/human, modules/idcache,
28979         modules/inttostr, modules/long-options, modules/makepath,
28980         modules/md5, modules/memcasecmp, modules/memcoll,
28981         modules/modechange, modules/mountlist, modules/path-concat,
28982         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
28983         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
28984         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
28985         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
28986         modules/strftime, modules/strndup, modules/strverscmp,
28987         modules/timespec, modules/unlocked-io, modules/userspec,
28988         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
28989         modules/yesno:
28990         Remove lib_SOURCES line from Makefile.am section, as this is now
28991         done automatically by the corresponding Autoconf macro.
28992
28993 2005-03-21  Jim Meyering  <jim@meyering.net>
28994
28995         Changes imported from coreutils.
28996
28997         * lib/cycle-check.c: Don't include xalloc.h.
28998
28999         * lib/path-concat.c: Don't include assert.h.
29000         (path_concat): Remove assertion that would have triggered
29001         for ABASE starting with more than one slash.
29002         Reported by Andreas Schwab.
29003
29004         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
29005         properly when ABASE is an absolute file name.
29006         Correct the description of this function.
29007         Include <assert.h>.
29008         Add an assertion and a test driver.
29009         This fixes a bug introduced on 2004-07-02.
29010         Andreas Schwab reported the resulting failure of cp --parents:
29011         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
29012
29013 2005-03-21  Jim Meyering  <jim@meyering.net>
29014
29015         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
29016         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
29017
29018 2005-03-21  Jim Meyering  <jim@meyering.net>
29019         and  Paul Eggert  <eggert@cs.ucla.edu>
29020
29021         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
29022         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
29023         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
29024         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
29025         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
29026         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
29027         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
29028         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
29029         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
29030         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
29031         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
29032         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
29033         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
29034         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
29035         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
29036         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
29037         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
29038         for these modules.
29039
29040 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
29041
29042         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
29043         (which shouldn't happen), generate nothing instead of returning 0
29044         immediately, so that nstrftime (NULL, ...) doesn't return 0.
29045
29046 2005-03-16  Bruno Haible  <bruno@clisp.org>
29047
29048         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
29049         HAVE_LONGLONG_64BIT.
29050
29051 2005-03-16  Bruno Haible  <bruno@clisp.org>
29052
29053         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
29054         HAVE_LONGLONG_64BIT.
29055
29056 2005-03-16  Bruno Haible  <bruno@clisp.org>
29057
29058         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
29059         HAVE_LONGLONG_64BIT.
29060
29061 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29062
29063         * lib/strftime.c (my_strftime): Prepend space to format so that we can
29064         reliably distinguish strftime failure from empty output on POSIX
29065         hosts.
29066
29067 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29068
29069         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
29070         (iconv_string): Don't guess a size-zero buffer, as that might cause
29071         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
29072         result would be 'too large', where 'too large' is (heuristically)
29073         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
29074         overflow concerns.  This will prevent some unwanted malloc failures
29075         when the inputs are very large.
29076
29077 2005-03-15  Karl Berry  <karl@gnu.org>
29078
29079         * config/srclist.txt (config.rpath): from gettext.
29080         * config/config.rpath: update.
29081
29082 2005-03-15  Bruno Haible  <bruno@clisp.org>
29083
29084         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
29085         to 'negate'.
29086
29087         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
29088         variable.
29089
29090         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
29091         results.
29092
29093 2005-03-14  Simon Josefsson  <jas@extundo.com>
29094
29095         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
29096         <fx@gnu.org>.
29097
29098 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
29099
29100         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
29101         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
29102         intprops.h.
29103         * lib/strtol.c: Likewise.
29104
29105 2005-03-14  Jim Meyering  <jim@meyering.net>
29106
29107         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
29108         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
29109         to be nonzero so that we (and caller) can detect the difference
29110         between a valid zero-length expansion and an error return, even
29111         when the underlying strftime fails before writing anything into
29112         that location.
29113
29114 2005-03-14  Bruno Haible  <bruno@clisp.org>
29115
29116         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
29117         Update from GNU gettext 0.14.3.
29118
29119 2005-03-10  Jim Meyering  <jim@meyering.net>
29120
29121         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
29122
29123 2005-03-10  Jim Meyering  <jim@meyering.net>
29124
29125         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
29126         so that this module works on systems without fchdir.
29127
29128 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
29129
29130         Factor int-properties macros into a single file, except for
29131         glibc-related files.
29132         * lib/intprops.h: New file.
29133         * lib/getloadavg.c: Include it instead of limits.h.
29134         (INT_STRLEN_BOUND): Remove.
29135         * lib/human.c: Include intprops.h.
29136         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
29137         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
29138         302/1000.
29139         * lib/inttostr.h: Include intprops.h instead of limits.h.
29140         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
29141         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
29142         for consistency with intprops.h.
29143         (time_t_is_integer, twos_complement_arithmetic): Use them.
29144         * lib/sig2str.h: Include <signal.h>, intprops.h.
29145         (INT_STRLEN_BOUND): Remove.
29146         * lib/strftime.c (TYPE_SIGNED): Remove.
29147         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
29148         * lib/strtol.c: Adjust comments to match intprops.h.
29149         * lib/userspec.c: Include intprops.h.
29150         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
29151         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
29152         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
29153         instead of rolling our own expressions.
29154         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
29155
29156         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
29157         instead of int.
29158         (my_strftime): Do not mishandle years close to INT_MAX, by doing
29159         the right thing even if adding 1900 would overflow.  Similarly
29160         for tm_mon + 1 and tm_yday + 1.
29161         Make %Y always equivalent to %C%y, and similarly for %G and %g.
29162         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
29163         (DO_SIGNED_NUMBER): New macro.
29164         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
29165
29166 2005-03-07  Bruno Haible  <bruno@clisp.org>
29167
29168         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
29169
29170 2005-03-07  Bruno Haible  <bruno@clisp.org>
29171
29172         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
29173
29174 2005-03-04  Derek R. Price  <derek@ximbiot.com>
29175
29176         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
29177         (func_import): Only replace files via --import when they have actually
29178         changed.
29179
29180 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29181
29182         * m4/mmap-anon.m4: New file.
29183         * m4/pagealign_alloc.m4: New file.
29184
29185 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29186             Bruno Haible  <bruno@clisp.org>
29187
29188         * modules/pagealign_alloc: New file.
29189         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
29190
29191 2005-03-03  Derek R. Price  <derek@ximbiot.com>
29192             Bruno Haible  <bruno@clisp.org>
29193
29194         * lib/pagealign_alloc.h: New file.
29195         * lib/pagealign_alloc.c: New file.
29196
29197 2005-03-03  Bruno Haible  <bruno@clisp.org>
29198
29199         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
29200         Use an all-permissive copyright notice, recommended by RMS.
29201
29202 2005-03-02  Bruno Haible  <bruno@clisp.org>
29203
29204         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
29205         of AIX, the replacement has to be done only after <string.h> is
29206         included, therefore not in config.h. stpncpy.h does the replacement,
29207         and stpncpy.c uses it.
29208
29209 2005-03-02  Bruno Haible  <bruno@clisp.org>
29210
29211         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
29212         stpncpy.c uses it.
29213
29214 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29215
29216         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
29217         The workaround isn't strictly needed for POSIX conformance, and
29218         it's too much of a pain to configure and maintain.  We'll ask
29219         people to fix their kernels instead.
29220         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
29221         (NANOSLEEP_BUG_WORKAROUND): Remove.
29222         (xnanosleep): Remove the workaround.
29223
29224 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29225
29226         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
29227         Reported by Derek Price.
29228         (Include): Add "timespec.h".
29229
29230         * modules/xnanosleep (Depends-on): Remove gethrxtime.
29231
29232 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29233
29234         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
29235         to detect nanosleep bug.
29236
29237 2005-03-01  Bruno Haible  <bruno@clisp.org>
29238
29239         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
29240
29241 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
29242
29243         * modules/gethrxtime: New file.
29244         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
29245         (Depends-on): Add gethrxtime.
29246         (configure.ac): Add gl_XNANOSLEEP.
29247         (Makefile.am): Remove lib_SOURCES line.
29248
29249 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
29250
29251         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
29252         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
29253
29254 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
29255
29256         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
29257         * lib/timespec.h (gettime): Return void, since it always
29258         succeeds now.  All uses changed.
29259         * lib/gettime.c (gettime) Likewise.
29260         [HAVE_NANOTIME]: Prefer nanotime.
29261         Assume gettimeofday succeeds, as POSIX requires.
29262         Assime time () succeeds, since other code already does.
29263         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
29264         (timespec_subtract): Remove.
29265         (NANOSLEEP_BUG_WORKAROUND): New constant.
29266         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
29267         things considerably.  Use it only on GNU/Linux hosts, since the
29268         workaround shouldn't be needed elsewhere.
29269
29270 2005-02-24  Bruno Haible  <bruno@clisp.org>
29271
29272         * modules/gettext (Files): Add m4/glibc2.m4.
29273
29274 2005-02-24  Bruno Haible  <bruno@clisp.org>
29275
29276         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
29277         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
29278         * m4/progtest.m4:
29279         Update from GNU gettext 0.14.2.
29280         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
29281
29282 2005-02-24  Bruno Haible  <bruno@clisp.org>
29283
29284         * lib/localcharset.c: Update from GNU gettext 0.14.2.
29285         * lib/config.charset: Update from GNU gettext 0.14.2.
29286
29287 2005-02-24  Bruno Haible  <bruno@clisp.org>
29288
29289         * lib/gettext.h: Update from GNU gettext 0.14.2.
29290
29291 2005-02-23  Simon Josefsson  <jas@extundo.com>
29292
29293         * m4/iconvme.m4: New file.
29294
29295 2005-02-23  Jim Meyering  <jim@meyering.net>
29296
29297         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
29298         change.
29299         Thanks to Bruno Haible for catching it.
29300
29301 2005-02-22  Simon Josefsson  <jas@extundo.com>
29302
29303         * modules/iconvme: New file.
29304
29305         * MODULES.html.sh: Add iconvme.
29306
29307 2005-02-22  Simon Josefsson  <jas@extundo.com>
29308
29309         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
29310
29311 2005-02-22  Simon Josefsson  <jas@extundo.com>
29312
29313         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
29314
29315 2005-02-22  Jim Meyering  <jim@meyering.net>
29316
29317         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
29318         s/ifndef/ifdef/.
29319
29320 2005-02-20  Neil Conway  <neilc@samurai.com>
29321
29322         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
29323         returned by OSX/Darwin if the specified buffer is not large
29324         enough for the hostname.
29325
29326 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29327
29328         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
29329         pass it to _help, otherwise the latter coredumps trying to
29330         dereference state.root_argp.
29331
29332 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29333
29334         * modules/chdir-long (Depends-on): Add memrchr.
29335         * modules/memrchr (Files): Add lib/memrchr.h.
29336         (Include): "memrchr.h".
29337
29338 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29339
29340         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
29341
29342 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
29343
29344         * lib/memrchr.h: New file.
29345         * lib/chdir-long.c: Include it.
29346         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
29347         Don't bother including stddef.h.
29348
29349 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
29350
29351         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
29352         inclusion.
29353         Include <sys/types.h>, for dev_t.
29354         (ME_DUMMY, ME_REMOTE): Move from here....
29355         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
29356         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
29357         Dmitry V. Levin.
29358         Include mountlist.h first, to test the interface.
29359
29360 2005-01-29  Bruno Haible  <bruno@clisp.org>
29361
29362         * lib/progname.c (program_name): Initialize.
29363         Needed when linking statically on MacOS X.
29364
29365 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
29366
29367         Sync from coreutils.
29368         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
29369         (Depends-on): Add c-strtod.
29370         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
29371
29372 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
29373
29374         Sync from coreutils.
29375         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
29376
29377         Remove files that are specific to coreutils.
29378         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
29379
29380 2005-01-28  Bruno Haible  <bruno@clisp.org>
29381
29382         * modules/javacomp: New file.
29383         * MODULES.html.sh (Java): Add javacomp.
29384
29385 2005-01-28  Bruno Haible  <bruno@clisp.org>
29386
29387         * m4/javacomp.m4: New file, from GNU gettext.
29388
29389 2005-01-28  Bruno Haible  <bruno@clisp.org>
29390
29391         * lib/javacomp.sh.in: New file, from GNU gettext.
29392         * lib/javacomp.h: New file, from GNU gettext.
29393         * lib/javacomp.c: New file, from GNU gettext.
29394
29395 2005-01-26  Simon Josefsson  <jas@extundo.com>
29396
29397         * lib/gai_strerror.c: Use GPL in header.
29398
29399 2005-01-26  Bruno Haible  <bruno@clisp.org>
29400
29401         * modules/javaexec: New file.
29402         * MODULES.html.sh (Java): Add javaexec.
29403
29404 2005-01-26  Bruno Haible  <bruno@clisp.org>
29405
29406         * m4/javaexec.m4: New file, from GNU gettext.
29407
29408 2005-01-26  Bruno Haible  <bruno@clisp.org>
29409
29410         * lib/javaexec.sh.in: New file, from GNU gettext.
29411         * lib/javaexec.h: New file, from GNU gettext.
29412         * lib/javaexec.c: New file, from GNU gettext.
29413
29414 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29415
29416         * modules/lchown (Depends-on): Remove lchown.h
29417
29418 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29419
29420         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
29421         must be defined if the header file was not found, in order
29422         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
29423
29424 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29425
29426         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
29427         initializers for struct pentry_state.
29428         (__argp_error): Check return value of __asprintf
29429         (__argp_failure): Translate error message
29430
29431         * lib/argp-parse.c: Removed braces around the expansion of N_()
29432
29433 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
29434
29435         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
29436         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
29437         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
29438         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
29439         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
29440         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
29441         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
29442         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
29443         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
29444         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
29445         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
29446         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
29447         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
29448         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
29449         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
29450         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
29451         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
29452         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
29453         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
29454         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
29455         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
29456         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
29457         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
29458         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
29459         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
29460         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
29461         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
29462         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
29463         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
29464         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
29465         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
29466         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
29467         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
29468         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
29469         xstrtol.m4, xstrtoumax.m4, yesno.m4:
29470         Use an all-permissive copyright notice, recommended by RMS.
29471
29472 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
29473
29474         * modules/chdir-long (Depends-on): Remove mempcpy.
29475
29476 2005-01-21  Jim Meyering  <jim@meyering.net>
29477
29478         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
29479         same value as for Solaris 9.
29480
29481         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
29482         component length.  This included changing the parameter to be
29483         of type `char *' rather than `char const *'.
29484         * lib/chdir-long.h (chdir_long): Update prototype.
29485
29486         * lib/openat.c (fdopendir, fstatat): New functions.
29487         * lib/openat.h: Include headers required for use of DIR and struct
29488         stat.
29489         [AT_SYMLINK_NOFOLLOW]: Define.
29490         (fdopendir, fstatat): Add prototypes.
29491
29492 2005-01-21  Bruno Haible  <bruno@clisp.org>
29493
29494         * modules/classpath: New file.
29495         * MODULES.html.sh (Java): Add classpath.
29496
29497 2005-01-21  Bruno Haible  <bruno@clisp.org>
29498
29499         * lib/classpath.h: New file, from GNU gettext.
29500         * lib/classpath.c: New file, from GNU gettext.
29501
29502 2005-01-20  Simon Josefsson  <jas@extundo.com>
29503
29504         * modules/version-etc-fsf: New file.
29505
29506 2005-01-20  Simon Josefsson  <jas@extundo.com>
29507
29508         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
29509         * lib/version-etc.c: Remove version_etc_copyright.
29510         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
29511         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
29512
29513 2005-01-20  Simon Josefsson  <jas@extundo.com>
29514
29515         * lib/base64.h (isbase64): Add.
29516
29517         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
29518         using a unsigned prototype, don't inline.
29519         (base64_decode): Use it.
29520
29521 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29522
29523         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
29524         it.
29525
29526 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29527
29528         * lib/save-cwd.c (save_cwd): Remove code to support the case
29529         where fchdir is missing or flaky.
29530
29531 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
29532
29533         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
29534
29535 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
29536
29537         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
29538         AC_LIBSOURCES now does this.
29539         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
29540         with new ullong_max module.
29541
29542 2005-01-19  Bruno Haible  <bruno@clisp.org>
29543
29544         * modules/sh-quote: New file.
29545         * MODULES.html.sh (Executing programs): Add sh-quote.
29546
29547 2005-01-19  Bruno Haible  <bruno@clisp.org>
29548
29549         * lib/sh-quote.h: New file, from GNU gettext.
29550         * lib/sh-quote.c: New file, from GNU gettext.
29551
29552 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29553
29554         Merge from coreutils.
29555         * m4/ullong_max.m4: New file.
29556         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
29557         (gl_MACROS): Assume localeconv exists.
29558
29559 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29560
29561         Merge changes from coreutils, as described below in several
29562         changelogs dated today.
29563
29564         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
29565         (O_DIRECTORY): Remove; not needed here, since "." must be
29566         a directory.  All uses removed.
29567         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
29568         universal on Suns, and we also need to test for IRIX.
29569         Revamp code to use 'if' rather than '#if'.
29570         Avoid unnecessary comparison of cwd->desc to 0.
29571
29572         * lib/utimens.c (futimens): Robustify the previous patch, by checking
29573         for known valid error numbers rather than observed invalid ones.
29574
29575 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
29576
29577         * modules/ullong_max: New file.
29578
29579         * modules/chdir-long, modules/openat: New files.
29580         * modules/save-cwd (Depends-on): Depend on chdir-long.
29581         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
29582
29583 2005-01-18  Jim Meyering  <jim@meyering.net>
29584
29585         Merge from coreutils.
29586         * m4/chdir-long.m4, m4/openat.m4: New files.
29587         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
29588         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
29589         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
29590         is sane and DOES follow symlinks.  Besides, testing 20 different
29591         systems found no broken chown implementations.
29592         Prompted by a change in rsync's copy of this macro.
29593         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
29594
29595         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
29596
29597         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
29598         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
29599         NULL-means-set-to-current-time semantics.
29600         Remove temporary file immediately, rather than waiting
29601         for configure's at-exit trap code to do it.
29602
29603 2005-01-18  Jim Meyering  <jim@meyering.net>
29604
29605         * lib/version-etc.c (version_etc_copyright): Update copyright date.
29606
29607         * lib/utimens.c (futimens): Account for the fact that futimes
29608         can also fail with errno == ENOSYS or errno == ENOENT.
29609         Patch from Dmitry V. Levin.
29610
29611         Change the name of the robust chdir function from chdir to chdir_long.
29612         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
29613         (restore_cwd): Use chdir_long, not chdir.
29614         * lib/chdir-long.c: Renamed from chdir.c.
29615         * lib/chdir-long.h: Renamed from chdir.h.
29616         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
29617         Hurd.
29618
29619 2005-01-18  Bruno Haible  <bruno@clisp.org>
29620
29621         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
29622         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
29623         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
29624         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
29625         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
29626         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
29627         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
29628         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
29629         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
29630         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
29631         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
29632         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
29633         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
29634         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
29635         Use an all-permissive copyright notice, recommended by RMS.
29636
29637 2005-01-18  Bob Proulx  <bob@proulx.com>
29638
29639         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
29640         simplify offsetof() macro construct to avoid compile failure with
29641         native HP-UX 11.0 ANSI C compiler.
29642
29643 2005-01-17  Bruno Haible  <bruno@clisp.org>
29644
29645         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
29646         redundant because stpncpy.m4 takes care of it.
29647
29648 2005-01-17  Bruno Haible  <bruno@clisp.org>
29649
29650         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
29651
29652 2005-01-17  Bruno Haible  <bruno@clisp.org>
29653
29654         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
29655         used.
29656
29657 2005-01-17  Bruno Haible  <bruno@clisp.org>
29658
29659         * lib/fwriteerror.h (fwriteerror): Change specification to include
29660         fclose.
29661         * lib/fwriteerror.c: Include <stdbool.h>.
29662         (fwriteerror): At the end, close the file stream. Record whether
29663         stdout was already closed.
29664
29665 2005-01-17  Bruno Haible  <bruno@clisp.org>
29666
29667         * lib/execute.c (environ): Declare if needed.
29668         * lib/pipe.c (environ): Likewise.
29669         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
29670
29671 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29672
29673         * modules/argp: Depend on vsnprintf
29674
29675 2005-01-10  Jim Meyering  <jim@meyering.net>
29676
29677         * modules/closeout (Depends-on): Add atexit.
29678
29679 2005-01-06  Bruno Haible  <bruno@clisp.org>
29680
29681         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
29682
29683 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29684
29685         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
29686         definitions to be after all include files, to avoid collisions.
29687         Problem reported by Bob Proulx.
29688
29689 2005-01-04  Jim Meyering  <jim@meyering.net>
29690
29691         Changes imported from coreutils.
29692         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
29693         as the mkstemp template, use a temporary directory and an
29694         8.3-friendly template to avoid trouble on systems like DJGPP.
29695         Reported by Juan M. Guerrero via Stepan Kasal.
29696         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
29697         close. Remove the temporary directory right away, rather than waiting
29698         for configure's at-exit trap code to do it.
29699         Suggestion from Stepan Kasal.
29700
29701 2005-01-01  Simon Josefsson  <jas@extundo.com>
29702
29703         * gnulib-tool: Print #include directives when --import'ing.
29704
29705 2004-12-28  Simon Josefsson  <jas@extundo.com>
29706
29707         * tests/test-base64.c: Include required header files.  Remove
29708         unused variables.
29709
29710 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29711
29712         * modules/error (Depends-on): Remove gettext.
29713
29714 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29715
29716         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
29717         not needed.  This removes a dependency on the gettext module.
29718         [defined _LIBC]: Do not include <libintl.h>; not needed.
29719
29720 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
29721
29722         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
29723         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
29724
29725 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
29726
29727         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
29728         HAVE_DECL_STRTOLD.
29729
29730 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29731
29732         * modules/getdate (Depends-on): Remove alloca-opt.
29733
29734 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29735
29736         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
29737
29738 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29739
29740         * lib/argp-parse.c: Include <stddef.h>.
29741         (alignof, alignto): New macros.
29742         (parser_init): Don't assume that void * is aligned sufficiently
29743         for struct option.
29744
29745         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
29746         need to extend the stack.
29747         (YYINITDEPTH): New macro, so that the initial stack isn't overly
29748         large.
29749
29750 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29751
29752         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
29753
29754 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
29755
29756         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
29757         (2004-10-24) change.  Apparently this was a false alarm.
29758
29759         * modules/getdate: Depend on alloca-opt, not alloca.
29760
29761 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
29762
29763         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
29764         Remove now-obsolete comment about AIX.
29765         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
29766         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
29767         (YYMAXDEPTH): New macro.
29768
29769 2004-12-18  Simon Josefsson  <jas@extundo.com>
29770
29771         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
29772
29773 2004-12-18  Bruno Haible  <bruno@clisp.org>
29774
29775         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
29776
29777 2004-12-18  Bruno Haible  <bruno@clisp.org>
29778
29779         * lib/fatal-signal.c (fatal_signals): Make non-const.
29780         (init_fatal_signals): New function.
29781         (uninstall_handlers, install_handlers): Ignore signals that were set to
29782         SIG_IGN.
29783         (at_fatal_signal): Call init_fatal_signals.
29784         (init_fatal_signal_set): Likewise. Ignore signals that were set to
29785         SIG_IGN.
29786         Reported by Paul Eggert.
29787
29788 2004-12-18  Bruno Haible  <bruno@clisp.org>
29789
29790         * doc/alloca.texi: New file.
29791         * doc/alloca-opt.texi: New file.
29792
29793 2004-12-17  Jim Meyering  <jim@meyering.net>
29794
29795         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
29796         Otherwise, install-sh could exit with improper exit status when
29797         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
29798
29799 2004-12-16  Simon Josefsson  <jas@extundo.com>
29800
29801         * tests/test-base64.c: Add license.
29802
29803 2004-12-15  Stepan Kasal  <address@hidden>
29804
29805         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
29806
29807 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
29808
29809         * modules/getcwd (Files): Add m4/d-ino.m4.
29810         Suggested by Mark D. Baushke.
29811
29812 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
29813
29814         * lib/getdate.y (textint): New member "negative".
29815         (time_zone_hhmm): New function.
29816         Expect 14 shift-reduce conflicts, not 13.
29817         (o_colon_minutes): New rule.
29818         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
29819         (yylex): Set the "negative" member of signed numbers.
29820
29821 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
29822
29823         * doc/getdate.texi (Time of day items, Time zone items):
29824         Describe new formats +00:00, UTC+00:00.
29825
29826 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
29827
29828         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
29829         spurious "-l"s.  Problem reported by Stepan Kasal.
29830
29831 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
29832
29833         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
29834         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
29835
29836 2004-12-04  Simon Josefsson  <jas@extundo.com>
29837
29838         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
29839         Vandoorselaere <yoann@prelude-ids.org>.
29840
29841 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29842
29843         Changes imported from coreutils.
29844         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
29845         exist.
29846         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
29847
29848 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29849
29850         Changes imported from coreutils.
29851         * lib/hard-locale.c: Assume <locale.h> exists.
29852         Include "strdup.h".
29853         (GLIBC_VERSION): New macro.
29854         (hard_locale): Assume setlocale exists.
29855         Rewrite to avoid #ifdef.
29856         Use strdup rather than malloc + strcpy.
29857         * lib/human.c: Assume <locale.h> exists.
29858         (human_readable): Assume localeconv exists.
29859
29860 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
29861
29862         * modules/hard-locale (Depends-on): Add strdup.
29863
29864 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
29865
29866         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
29867         convert T2, not T.  (Imported from libc.)
29868
29869 2004-11-30  Simon Josefsson  <jas@extundo.com>
29870
29871         * modules/restrict (License): Change to LGPL.
29872
29873 2004-11-30  Simon Josefsson  <jas@extundo.com>
29874
29875         * m4/restrict.m4: Add copyright and copying conditions.
29876
29877 2004-11-30  Simon Josefsson  <jas@extundo.com>
29878
29879         * m4/base64.m4: New file.
29880
29881 2004-11-30  Simon Josefsson  <jas@extundo.com>
29882
29883         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
29884         base64.
29885
29886         * tests/test-base64.c: New file.
29887
29888         * modules/base64: New file.
29889
29890 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
29891
29892         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
29893         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
29894
29895         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
29896
29897 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
29898
29899         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
29900         (__getcwd.c): Don't restore errno; glibc doesn't.
29901         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
29902         first, falling back to our code only if its results look suspicious.
29903         Ensure that the resulting buffer is only as large as necessary.
29904
29905         * lib/readutmp.c: Include readutmp.h first.
29906         Include <errno.h>, since readutmp.h no longer does that.
29907         * lib/readutmp.h: Don't include <errno.h>,
29908         <sys/param.h>, <time.h>; not needed to establish interface.
29909         (errno): Remove decl.
29910         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
29911         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
29912         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
29913
29914 2004-11-28  Simon Josefsson  <jas@extundo.com>
29915
29916         * lib/base64.h, base64.c: New file.
29917
29918 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
29919
29920         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
29921
29922 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
29923
29924         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
29925         (Depends-on): Remove pathmax, same.  Add mempcpy.
29926         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
29927         (Makefile.am): Append getcwd.h to lib_SOURCES.
29928         (Include): Add getcwd.h.
29929         (Maintainer): Change from Jim Meyering to "all, glibc",
29930         since getdate now uses intended-for-glibc code.
29931         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
29932         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
29933
29934 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
29935
29936         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
29937         HP's ANSI C compiler.
29938         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
29939         Declaring int functions causes warnings on some modern systems and
29940         shouldn't be needed to compile on ancient ones.
29941         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
29942         defined.
29943
29944         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
29945         with the following changes.
29946         (__set_errno): Parenthesize properly.
29947         Include <stdbool.h>.
29948         (MIN, MAX, MATCHING_INO): New macros.
29949         (__getcwd): Define with prototype, not K&R form.
29950         Use heuristics to allocate default buffer on stack if possible.
29951         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
29952         behavior, and to avoid the PATH_MAX limit when computing
29953         ../../../../...
29954         Use MATCHING_INO to compare inode number to file.
29955         Check for arithmetic overflow in size calculations.
29956         Fix bug in reallocation of dot array that caused getcwd to fail
29957         on directories nested deeper than 75.
29958         Be more careful about saving errno on error.
29959         Do not use realloc; use only free+malloc, as this is a bit
29960         more flexible and avoids a needless copy operation.
29961         Do not inspect st_dev and st_ino for symbolic links; POSIX
29962         doesn't specify the latter.
29963         Check for closedir errors.
29964         Avoid needless casts.
29965         Use "#ifdef weak_alias" around weak_alias, to be like other
29966         glibc code.
29967         The following changes to getcwd.c have effect only when used in
29968         gnulib; they have no effect inside glibc proper.
29969         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
29970         as alloca isn't used.
29971         (alloca, __alloca): Likewise.
29972         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
29973         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
29974         unconditionally, as gnulib assumes C89 or better.
29975         Do not include <sys/param.h>.
29976         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
29977         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
29978         better.
29979         (NULL) [!defined NULL]: Remove; we assume C89 or better.
29980         Include <dirent.h> in a way that is compatible with modern Autoconf.
29981         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
29982         New macros, if not already defined.
29983         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
29984         Use "_LIBC", not "defined _LIBC", for consistency.
29985         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
29986         a mempcpy module.
29987         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
29988         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
29989         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
29990         credit only to Jim Meyering and adjust the copyright dates.
29991         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
29992         <stdlib.h>, <unistd.h>, "pathmax.h".
29993         Instead, include "xgetcwd.h" (first) and "getcwd.h".
29994         (INITIAL_BUFFER_SIZE): Remove.
29995         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
29996
29997 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
29998
29999         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
30000         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
30001         Use the _ONCE methods, for efficiency.
30002         Check for fcntl.h.  In test program, include <errno.h>
30003         and <fcntl.h> if available.  Remove old K&R cruft from
30004         test program.  Check for common errors in GNU/Linux,
30005         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
30006         don't do AC_LIBOBJ, as that's getcwd.m4's job.
30007         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
30008         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
30009         name accordingly.
30010         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
30011         accommodate new getcwd.c.
30012         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
30013         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
30014         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
30015         that's all we need now.
30016
30017 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30018
30019         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
30020         argp-parse.c depends on getopt internals, that means we should
30021         always use our getopt, to be on the safe side.
30022         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
30023         order not to spoil the result of an eventual previous invocation
30024         of gl_GETOPT_SUBSTITUTE.
30025
30026 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30027
30028         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
30029         redefinition warnings. To avoid them, include the defines
30030         in `#if !defined __need_getopt ... #endif'. The only place
30031         where __getopt_argv_const is used is in definitions
30032         of getopt_long and getopt_long_only below, which are as well
30033         protected by `#ifndef __need_getopt'.
30034         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
30035         __need_getopt after including <stdio.h> and <unistd.h> These
30036         headers might have defined it.
30037
30038 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30039
30040         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
30041
30042 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30043
30044         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
30045         (futimens): New function, which uses futimes if available.
30046         (futimens, utimens): Support timespec==NULL, with same semantics
30047         as utime and utimens.
30048         * lib/utimens.h (futimens): New decl.
30049
30050 2004-11-23  Jim Meyering  <jim@meyering.net>
30051
30052         * lib/getopt_.h: Remove trailing blanks.
30053
30054 2004-11-23  Jim Meyering  <jim@meyering.net>
30055
30056         * lib/__fpending.c: Add comment.
30057
30058 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
30059
30060         * modules/canonicalize (Depends-on): Add xreadlink.
30061         Problem reported by James Youngman.
30062
30063 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30064
30065         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
30066         New macros.
30067         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
30068         optopt): Use them instead of invoking ## directly; otherwise, the
30069         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
30070
30071 2004-11-19  Bruno Haible  <bruno@clisp.org>
30072
30073         * lib/strtok_r.c: Move comments from here...
30074         * lib/strtok_r.h: ... to here.
30075
30076 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30077
30078         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
30079         implementations that mishandle size_t overflow.
30080
30081 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30082
30083         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
30084         might fail.  Problem reported by Yoann Vandoorselaere.
30085         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
30086         implementations that mishandle size_t overflow.
30087
30088 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30089
30090         * modules/canon-host (Depends-on): Add strdup.
30091
30092 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30093
30094         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
30095
30096 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30097
30098         * lib/canon-host.c: Include "strdup.h".
30099         (canon_host): Use getaddrinfo if available, so that IPv6 works.
30100         Use strdup instead of malloc/strcpy to duplicate strings.
30101
30102         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
30103         (human_space_before_unit): New constant.
30104         * lib/human.c (human_readable): Support it.
30105
30106         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
30107         (xgetcwd): Set errno correctly when failing.
30108         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
30109         the failure is actually due to a PATH_MAX problem.
30110
30111         Further getopt changes to make it more likely that glibc will
30112         buy the changes back.
30113         * lib/getopt.c (POSIXLY_CORRECT): New constant.
30114         (getopt): Use it, so to preserve glibc semantic
30115         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
30116         when compiling for libc.
30117         * lib/getopt_.h (__getopt_argv_const): Bring it back.
30118         (getopt_long, getopt_long_only): Use it.
30119
30120         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
30121         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
30122         (getopt): Argv is now char * const *, as per standard.
30123         (_getopt_internal_r, _getopt_internal): Argv is now char **,
30124         not char *__getopt_argv_const *.
30125         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
30126         _getopt_long_only_r): Likewise.
30127         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
30128         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
30129         _getopt_long_r, _getopt_long_only_r): Likewise.
30130         * lib/getopt_.h (__getopt_argv_const): Remove.
30131         (getopt): Argv is now char * const *, as per standard.
30132
30133         * lib/getdate.y (tORDINAL): New token.
30134         (day, relunit): Allow it for relative times.
30135         (relative_time_table): Use tORDINAL for ordinals.
30136
30137 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30138
30139         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
30140         Document that "second" isn't allowed as an ordinal number.
30141
30142 2004-11-16  Jim Meyering  <jim@meyering.net>
30143
30144         * modules/closeout (Depends-on): Add fpending.
30145
30146 2004-11-15  Jim Meyering  <jim@meyering.net>
30147
30148         * lib/closeout.c: Include "__fpending.h" once again.
30149         Include <stdbool.h>.
30150         (close_stdout): Don't fail just because stdout was closed initially,
30151         since some programs don't write to stdout in the normal course of
30152         operation (other than --version and --help), and we don't want this
30153         function to make e.g. `touch file >&-' fail.
30154         But do fail if it was closed and someone has tried to write to it.
30155         E.g., `printf foo >&-' must fail.
30156
30157 2004-11-13  Jim Meyering  <jim@meyering.net>
30158
30159         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
30160
30161 2004-11-12  Simon Josefsson  <jas@extundo.com>
30162
30163         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
30164         small doc fix is still pending.
30165
30166 2004-11-11  Simon Josefsson  <jas@extundo.com>
30167
30168         * modules/strtok_r: New file.
30169
30170         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30171         strtok_r.
30172
30173 2004-11-11  Simon Josefsson  <jas@extundo.com>
30174
30175         * m4/strtok_r.m4: New file.
30176
30177         * m4/getopt.m4: Replace opterr.
30178
30179 2004-11-11  Simon Josefsson  <jas@extundo.com>
30180
30181         * lib/strtok_r.h, strtok_r.c: New file.
30182
30183 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
30184
30185         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
30186         of replacing opterr, getopt, etc.  This should handle the
30187         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
30188
30189 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
30190
30191         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
30192         we can stop lying to compilers about the constness of argv when we
30193         are compiled outside glibc.
30194         (getopt, getopt_long, getopt_long_only): Use it.
30195         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
30196         _getopt_internal, getopt): Likewise.
30197         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
30198         _getopt_long_only_r): Likewise.
30199         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
30200         _getopt_long_r, _getopt_long_only_r): Likewise.
30201
30202         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
30203         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
30204         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
30205         the other external symbols.
30206         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
30207         declaration, since the above renaming now works around collisions.
30208
30209 2004-11-11  Jim Meyering  <jim@meyering.net>
30210
30211         * lib/linebreak.c: Remove trailing blanks.
30212         * lib/alloca_.h: Likewise.
30213         * lib/acosl.c: Likewise.
30214         * lib/euidaccess.c: Likewise.
30215         * lib/allocsa.h: Likewise.
30216
30217 2004-11-10  Simon Josefsson  <jas@extundo.com>
30218
30219         * m4/getaddrinfo.m4: New file.
30220
30221 2004-11-10  Simon Josefsson  <jas@extundo.com>
30222
30223         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
30224
30225 2004-11-10  Simon Josefsson  <jas@extundo.com>
30226
30227         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30228         getaddrinfo.
30229
30230         * modules/getaddrinfo: New file.
30231
30232 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30233
30234         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
30235
30236 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30237
30238         * lib/mktime.c (SHR): New macro, which is a portable
30239         substitute for >> that should work even on Crays.
30240         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
30241         Problem reported by Mark D. Baushke in
30242         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
30243         * lib/getdate.y (SHR): Likewise.
30244         (tm_diff): Use it.
30245         * lib/strftime.c (SHR): Likewise.
30246         (tm_diff): Use it.
30247         * lib/quotearg.c (struct quoting_options): Use unsigned int for
30248         quote_these_too, so that right shifts are well defined.  All uses
30249         changed.
30250
30251 2004-11-10  Jim Meyering  <jim@meyering.net>
30252
30253         Ensure that no close failure goes unreported.
30254         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
30255         return early when it seems there's nothing to flush.
30256         Don't include __fpending.h.
30257
30258 2004-11-10  Jim Meyering  <jim@meyering.net>
30259
30260         * modules/closeout (Depends-on): Remove fpending.
30261
30262 2004-11-10  Jim Meyering  <jim@meyering.net>
30263
30264         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
30265
30266 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30267
30268         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
30269         gl_FUNC_STRFTIME.
30270         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
30271         and AC_REQUIRE when possible, to avoid duplicate checks.
30272         Check for <wchar.h>.
30273
30274 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30275
30276         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
30277
30278 2004-11-09  Bruno Haible  <bruno@clisp.org>
30279
30280         * m4/sockpfaf.m4: New file.
30281
30282 2004-11-05  Bruno Haible  <bruno@clisp.org>
30283
30284         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
30285         Reported by Mark D. Baushke <mdb@cvshome.org>.
30286
30287 2004-11-04  Bruno Haible  <bruno@clisp.org>
30288
30289         2004-09-11  Bruno Haible  <bruno@clisp.org>
30290                 * allocsa.valgrind: New file.
30291         2004-02-06  Bruno Haible  <bruno@clisp.org>
30292                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
30293                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
30294                 Reported by Christopher Seip <chris.seip@hp.com>.
30295
30296 2004-11-04  Bruno Haible  <bruno@clisp.org>
30297
30298         * modules/allocsa (Files): Add lib/allocsa.valgrind.
30299         (Makefile.am): Distribute it.
30300
30301 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
30302
30303         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
30304         with errno == ERANGE if the buffer is too small.
30305         Problem reported by Mark D. Baushke.
30306
30307 2004-11-03  Albert Chin  <china@thewrittenword.com>
30308             Paul Eggert  <eggert@cs.ucla.edu>
30309
30310         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
30311         equivalent, substitute $ac_type for equivalent type rather than
30312         blindly using uint32_t *always* which won't work if uint32_t is not
30313         available.  Define _UINT32_T to work around typedef of uint32_t if
30314         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
30315         2.5.1.
30316
30317 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30318
30319         * m4/jm-macros.m4: Sync from coreutils.
30320         (gl_MACROS): Check for mbrlen, for pathchk.
30321         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
30322
30323 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30324
30325         * lib/xreadlink.c (MAXSIZE): New macro.
30326         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
30327         size does not exceed MAXSIZE.  Avoid cast.
30328         As suggested by Mark D. Baushke in
30329         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
30330         if readlink fails with buffer size just under MAXSIZE, try again
30331         with MAXSIZE.
30332
30333 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
30334
30335         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
30336
30337 2004-11-02  Derek R. Price  <derek@ximbiot.com>
30338         and  Paul Eggert  <eggert@cs.ucla.edu>
30339
30340         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
30341         (get_date): Overparenthesize to avoid GCC warning.
30342
30343 2004-11-02  Bruno Haible  <bruno@clisp.org>
30344
30345         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
30346         returns void.
30347
30348 2004-11-02  Bruno Haible  <bruno@clisp.org>
30349
30350         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
30351         function returns void.
30352
30353 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
30354
30355         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
30356         fflush_unlocked, flockfile, funlockfile, funlockfile,
30357         fputs_unlocked, putc_unlocked.
30358
30359 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
30360
30361         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
30362         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
30363         already declared.
30364
30365 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30366
30367         * modules/getdate (Files): Add doc/getdate.texi.
30368         (Depends-on): Add setenv, xalloc.
30369
30370 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30371
30372         * lib/getdate.y: Add support for TZ="foo" within a date string.
30373         Fix some bugs near time_t boundaries.  Reject dates with
30374         out-of-range components, e.g., "Sept 31".
30375         Include <stdlib.h>, "setenv.h", "xalloc.h".
30376         (ISDIGIT_LOCALE): Remove; unused.
30377         Note that the TZ and time functions used here are not reentrant.
30378         (mktime_ok, get_tz): New functions.
30379         (TZBUFSIZE): New constant.
30380         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
30381         This requires that we sometimes generate our own TZ="XXX..." setting.
30382
30383 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30384
30385         * doc/getdate.texi: New file, from coreutils with modifications for
30386         the new TZ parsing.
30387
30388 2004-10-27  Derek R. Price  <derek@ximbiot.com>
30389
30390         * lib/mktime.c (not_equal_tm): Remove redundant check.
30391
30392 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30393
30394         * modules/regex (lib_SOURCES): Add regex.c.
30395         Reported by James Youngman in
30396         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
30397
30398 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30399
30400         * lib/getdate.y: Use Bison 1.875 features, and some minor
30401         code cleanups.  This change does not affect semantics.
30402         Don't include <stdlib.h>; no longer needed.
30403         Don't include unlocked-io.h; only the "#if TEST" code uses
30404         stdio, and performance isn't crucial there.
30405         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
30406         Bison 1.875 features as described below.
30407         All uses of "PC." replaced by "pc->".
30408         (YYSTYPE): Add a forward declaration.
30409         (yylex, yyerror): Use full prototypes in forward decls.
30410         Use "%pure-parser" rather than obsolescent "%pure_parser".
30411         Use %parse-param and %lex-param instead of obsolescent
30412         YYPARSE_PARAM and YYLEX_PARAM.
30413         (meridian_table, month_and_day_table, time_units_table,
30414         relative_time_table, time_zone_table, military_table,
30415         lookup_zone, lookup_word, get_date):
30416         Use NULL instead of 0 where appropriate.
30417         (to_hour): Avoid abort (), to avoid a dependency on
30418         stdlib.h.
30419         (yyerror, yylex): Now accepts parser_control * arg.
30420         (main) [TEST]: Use '\0' rather than 0 for char.
30421
30422 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30423
30424         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
30425
30426 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30427
30428         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
30429         It's now the caller's responsibility to handle the case where
30430         !HAVE_GETPAGESIZE && !defined getpagesize.
30431
30432         * lib/mktime.c (leapyear): Arg is long int, not int.
30433
30434 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
30435
30436         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
30437
30438 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
30439
30440         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
30441         missing.  Problem reported by James Youngman.
30442
30443 2004-10-16  Simon Josefsson  <jas@extundo.com>
30444
30445         * gnulib-tool: Fix comments.  Fix parse problem.
30446         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
30447
30448 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
30449
30450         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
30451         implementation of getopt_long.  Problem reported by Alexander Taler in:
30452         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
30453
30454 2004-10-15  Bruno Haible  <bruno@clisp.org>
30455
30456         * gnulib-tool: Untabify. Initialize supplied_libname.
30457         (func_usage): More homogenous output.
30458         (func_modules_transitive_closure, func_modules_to_filelist,
30459         func_emit_lib_Makefile_am): New functions.
30460         (func_import): New function, extracted from big case statement. Use
30461         func_get_license, func_modules_transitive_closure,
30462         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
30463         opt_lgpl. Don't use test -a, as it's not portable.
30464         (func_create_testdir): Use func_modules_transitive_closure,
30465         func_modules_to_filelist, func_emit_lib_Makefile_am.
30466
30467 2004-10-15  Bruno Haible  <bruno@clisp.org>
30468
30469         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
30470
30471 2004-10-15  Bruno Haible  <bruno@clisp.org>
30472
30473         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
30474         the portions belonging to each module.
30475         Suggested by Derek Robert Price <derek@ximbiot.com>.
30476
30477 2004-10-12  Simon Josefsson  <jas@extundo.com>
30478
30479         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
30480         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
30481         to real functions.
30482
30483 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30484
30485         * modules/vsnprintf: New file.
30486
30487 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30488
30489         * m4/vsnprintf.m4: New file.
30490
30491 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30492
30493         * lib/vsnprintf.h: New file.
30494         * lib/vsnprintf.c: New file.
30495
30496 2004-10-11  Bruno Haible  <bruno@clisp.org>
30497
30498         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
30499         vsnprintf.
30500
30501 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
30502
30503         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
30504
30505 2004-10-07  Bruno Haible  <bruno@clisp.org>
30506
30507         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
30508         fits into the provided buffer.
30509
30510 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
30511
30512         * lib/diacrit.c, diacrit.h: Add GPL notice.
30513
30514         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
30515         notice.
30516         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
30517         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
30518         This avoids a potential constant-folding bug.
30519
30520 2004-10-05  Bruno Haible  <bruno@clisp.org>
30521
30522         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
30523         for the declaration of strsep.
30524
30525 2004-10-05  Bruno Haible  <bruno@clisp.org>
30526
30527         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
30528
30529 2004-10-04  Simon Josefsson  <jas@extundo.com>
30530
30531         * modules/memmem: New file.
30532         * tests/test-memmem.c: New file.
30533         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
30534
30535 2004-10-04  Simon Josefsson  <jas@extundo.com>
30536
30537         * m4/memmem.m4: New file.
30538
30539 2004-10-04  Simon Josefsson  <jas@extundo.com>
30540
30541         * lib/memmem.h: New file.
30542         * lib/memmem.c: New file, taken from glibc.
30543
30544 2004-10-04  Simon Josefsson  <jas@extundo.com>
30545
30546         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
30547         '#ifdef USE_UNLOCKED_IO'.
30548
30549 2004-10-04  Simon Josefsson  <jas@extundo.com>
30550
30551         * config/srclist.txt: Add memmem from glibc.
30552
30553 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30554
30555         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
30556
30557         * modules/argmatch, modules/argp, modules/closeout, modules/error,
30558         modules/exclude, modules/getdate, modules/getline,
30559         modules/getndelim2, modules/getpass, modules/getpass-gnu,
30560         modules/getusershell, modules/linebuffer, modules/md5,
30561         modules/mountlist, modules/posixtm, modules/readtokens,
30562         modules/readutmp, modules/regex, modules/sha1,
30563         modules/version-etc, modules/yesno:
30564         Remove dependency on unlocked-io.
30565
30566 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30567
30568         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
30569
30570         * m4/unlocked-io.m4: Add copyright notice.
30571         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
30572
30573 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30574
30575         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
30576         * lib/xmalloc.c (xmemdup): Likewise.
30577         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
30578         XFREE): Remove these long-obsolescent macros.
30579         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
30580         * lib/xstrdup.c: Remove.
30581
30582         * lib/regex.c (re_comp): Cast gettext return value to char *,
30583         Problem reported by Martin Neitzel via Mark D. Baushke.
30584
30585 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
30586
30587         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
30588         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
30589         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
30590         regex.c, sha1.c, version-etc.c, yesno.c:
30591         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
30592         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
30593         the includer's responsibility.
30594
30595         Sync from coreutils.
30596
30597         * lib/modechange.c (mode_compile): Don't decrement a pointer that
30598         points to the start of a string, as the C Standard says the
30599         resulting behavior is undefined.
30600
30601         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
30602         simple -> simple_backups, numbered_existing ->
30603         numbered_existing_backups, numbered -> numbered_backups
30604         to avoid shadowing problems.  All uses changed.
30605         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
30606         * lib/backupfile.c (check_extension, numbered_backup):
30607         Rename locals to avoid shadowing 'basename'.
30608         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
30609         once.
30610
30611         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
30612         * lib/.cvsignore: Add getopt.h.
30613
30614 2004-10-04  Bruno Haible  <bruno@clisp.org>
30615
30616         * modules/README: New file.
30617         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
30618         not a module.
30619
30620 2004-10-02  Jim Meyering  <jim@meyering.net>
30621
30622         * lib/dirfd.h, getpagesize.h: Add copyright notice.
30623
30624 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30625
30626         * modules/strsep: New file.
30627
30628 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30629
30630         * m4/strsep.m4: New file.
30631
30632 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
30633
30634         * lib/strsep.h: New file.
30635         * lib/strsep.c: New file.
30636
30637 2004-10-01  Simon Josefsson  <jas@extundo.com>
30638
30639         * lib/snprintf.c (snprintf): Handle size==0.
30640
30641 2004-10-01  Simon Josefsson  <jas@extundo.com>
30642             Bruno Haible  <bruno@clisp.org>
30643
30644         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
30645         (snprintf): Declare 'args'.
30646
30647 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
30648
30649         * lib/snprintf.c: Remove comments as to why each header is needed.
30650
30651 2004-10-01  Bruno Haible  <bruno@clisp.org>
30652
30653         * MODULES.html.sh: Add strsep.
30654
30655 2004-09-30  Simon Josefsson  <jas@extundo.com>
30656
30657         * modules/snprintf: New file.
30658
30659 2004-09-30  Simon Josefsson  <jas@extundo.com>
30660
30661         * m4/snprintf.m4: New file.
30662
30663 2004-09-30  Simon Josefsson  <jas@extundo.com>
30664
30665         * lib/snprintf.h, lib/snprintf.c: New files.
30666
30667 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30668
30669         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
30670         (hol_entry_help): Never translate an empty string.
30671         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
30672         * lib/argp.h (OPTION_NO_TRANS): New option.
30673
30674 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30675
30676         * modules/argp (Maintainer): Replace Simon Josefsson
30677         by Sergey Poznyakoff.
30678
30679 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30680
30681         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
30682         changes merged back into glibc.
30683
30684 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
30685
30686         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
30687
30688 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
30689
30690         * lib/xvasprintf.c: Include xalloc.h.
30691         (xvasprintf): Use xalloc_die, not xmalloc_die.
30692
30693 2004-09-29  Bruno Haible  <bruno@clisp.org>
30694
30695         * modules/alloca-opt: New file, derived from modules/alloca.
30696         * modules/allocsa: Depend on alloca-opt instead of alloca.
30697         * modules/setenv: Likewise.
30698         * modules/vasnprintf: Likewise.
30699         * MODULES.html.sh: Add alloca-opt.
30700
30701 2004-09-28  Simon Josefsson  <jas@extundo.com>
30702
30703         * gnulib-tool: New parameter --lgpl, to asseert that modules are
30704         LGPL, and to replace license template from GPL to LGPL.
30705
30706 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
30707
30708         * modules/dummy: Change license to LGPL.
30709
30710 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
30711
30712         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
30713
30714 2004-09-24  Simon Josefsson  <jas@extundo.com>
30715
30716         * modules/minmax (License): Change from GPL to LGPL.
30717
30718 2004-09-23  Simon Josefsson  <jas@extundo.com>
30719
30720         * gnulib-tool (--import): Typo.
30721
30722 2004-09-23  Simon Josefsson  <jas@extundo.com>
30723
30724         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
30725
30726 2004-09-22  Bruno Haible  <bruno@clisp.org>
30727
30728         * modules/*: Add 'License' field.
30729         * gnulib-tool: Accept --extract-license option.
30730         (func_get_license): New function.
30731
30732 2004-09-21  Bruno Haible  <bruno@clisp.org>
30733
30734         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
30735         Reported by Simon Josefsson.
30736
30737 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
30738
30739         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
30740         gl_AC_TYPE_LONG_LONG.
30741
30742 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
30743
30744         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
30745
30746 2004-09-18  Simon Josefsson  <jas@extundo.com>
30747         and  Paul Eggert  <eggert@cs.ucla.edu>
30748
30749         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
30750         calls with autoreconf.  Define GL_LIB.
30751
30752 2004-09-14  Karl Berry  <karl@gnu.org>
30753
30754         * config/srclist.txt: unsync setenv.c, sigh.
30755
30756 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
30757
30758         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
30759         Problem reported by Bruno Haible in:
30760         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
30761
30762 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
30763
30764         * config/srclist.txt: Comment out argp-pvh.c.
30765
30766 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
30767
30768         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
30769         in case some system header has #define'd it.  Problem reported by
30770         Soeren D. Schulze in
30771         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
30772
30773 2004-09-09  Karl Berry  <karl@gnu.org>
30774
30775         * regex.[ch]: delete from the root.  These were supposed to be
30776                 synced with emacs cvs, but this has not happened for about
30777                 a year, and anyway nothing else uses emacs regex.[ch].
30778                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
30779                 lib/regex[.ch] is untouched.
30780
30781 2004-09-09  Bruno Haible  <bruno@clisp.org>
30782
30783         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
30784
30785 2004-09-09  Bruno Haible  <bruno@clisp.org>
30786
30787         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
30788         modifications.
30789         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
30790
30791 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
30792
30793         * modules/xvasprintf: New file.
30794         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
30795
30796 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
30797
30798         * lib/xvasprintf.h: New file.
30799         * lib/xvasprintf.c: New file.
30800         * lib/xasprintf.c: New file.
30801
30802 2004-09-08  Bruno Haible  <bruno@clisp.org>
30803
30804         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
30805
30806 2004-09-08  Bruno Haible  <bruno@clisp.org>
30807
30808         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
30809         length is > INT_MAX.
30810         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
30811         more.
30812
30813 2004-09-08  Bruno Haible  <bruno@clisp.org>
30814
30815         * lib/stdint_.h: New file, taken from GNU clisp.
30816
30817 2004-09-08  Bruno Haible  <bruno@clisp.org>
30818             Oskar Liljeblad  <oskar@osk.mine.nu>
30819
30820         * modules/stdint: New file.
30821         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
30822
30823 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30824
30825         Import from coreutils.
30826         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
30827         strings on unbounded length.  alloca's performance benefits aren't
30828         that important here.
30829         (V_STRDUP): Remove.
30830         (parse_with_separator): New function, with most of the internals
30831         of the old parse_user_spec.  Allow user to omit both user and group,
30832         for compatibility with FreeBSD.
30833         Clone only the user name, not the entire spec.
30834         Do not set *uid, *gid unless entirely successful.
30835         Avoid memory leak in some failing cases.
30836         Fix regression for USER.GROUP reported by Dmitry V. Levin in
30837         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
30838         (parse_user_spec): Rewrite to use parse_with_separator.
30839
30840 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30841
30842         * modules/userspec: Don't depend on alloca.
30843
30844 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
30845
30846         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
30847
30848 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
30849
30850         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
30851         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
30852         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
30853
30854 2004-08-16  Simon Josefsson  <jas@extundo.com>
30855
30856         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
30857         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
30858         Add --dry-run for --import.
30859         Let user provided command line parameters override configure.ac
30860         settings.
30861
30862 2004-08-12  Simon Josefsson  <jas@extundo.com>
30863
30864         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
30865         as discussed with Paul Eggert in threads rooted at
30866         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
30867         and
30868         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
30869         Before, the test was empty, and relied on ELIDE_CODE in source
30870         code.)
30871         (gl_PREREQ_GETOPT): New macro.
30872         (gl_GETOPT): Use them.
30873
30874 2004-08-12  Simon Josefsson  <jas@extundo.com>
30875
30876         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
30877         * lib/getopt_.h: Renamed from getopt.h.
30878
30879 2004-08-12  Simon Josefsson  <jas@extundo.com>
30880
30881         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
30882         Change default library name from libfoo to libgnu.
30883         Now, if you have a configure.ac that says:
30884                 gl_SOURCE_BASE(gl)
30885                 gl_M4_BASE(gl/m4)
30886                 gl_MODULES(error getopt etcetera)
30887                 gl_INIT
30888         you can import all you need by running:
30889                 ../gnulib/gnulib-tool --import
30890
30891         * modules/getopt (Files): Rename getopt.h to getopt_.h.
30892         (Makefile.am): Rewrite, use logic from argz.
30893         (Include): Use <getopt.h> instead of "getopt.h".
30894
30895 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30896
30897         * modules/argp (Files): Add m4/unlocked-io.m4.
30898         (Depends-on): Add extensions.
30899
30900 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30901
30902         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
30903         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
30904         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
30905         Check for program_invocation_name, program_invocation_short_name,
30906         flockfile, funlockfile, features.h, _getopt_long_only_r.
30907
30908 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30909
30910         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
30911         its complicated substitute.
30912         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
30913         and program_invocation_name.
30914         (__argp_basename) [!_LIBC]: Remove; the only use was
30915         replaced by its body.
30916         (__argp_short_program_name): Change condition from
30917         !defined __argp_short_program_name to
30918         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
30919         to match argp-namefrob.h.
30920         (__argp_failure): Don't assume strerror_r returns char *.
30921         * lib/argp-parse.c (N_): Define unconditionally.
30922         (argp_default_options): Fill out initializers with 0 to avoid
30923         gcc warnings.
30924
30925 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
30926
30927         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
30928         getopt1.c.
30929
30930 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30931
30932         Merge from coreutils.
30933
30934         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
30935
30936         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
30937         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
30938
30939 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30940
30941         Merge from coreutils.
30942
30943         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
30944         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
30945         for Reliant Unix 5.43.
30946
30947         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
30948         (union fooround): Use uintmax_t, not long int.
30949         The rest is a merge from libc:
30950         [defined _LIBC]: Include <shlib-compat.h>.
30951         (_obstack) [defined _LIBC]: Remove after 2.3.4.
30952
30953         * lib/settime.c (settime): Recode to avoid warning with
30954         Sun Forte C 6U2.
30955
30956         * lib/strverscmp.c: Convert to UTF-8.
30957
30958 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
30959
30960         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
30961         m4/uintmax_t.m4.
30962
30963 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30964
30965         * modules/xalloc-die: New file.
30966         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
30967
30968         * modules/md5 (Files): Add m4/uint32_t.m4.
30969         * modules/sha1: Renamed from modules/sha.
30970         (Files):
30971         Rename lib/sha.h to lib/sha1.h.
30972         Rename lib/sha.c to lib/sha1.c.
30973         Rename m4/sha.m4 to m4/sha1.m4.
30974         (lib_SOURCES): Likewise.
30975         (configure.ac): Rename gl_SHA to gl_SHA1.
30976         (Include): sha.h -> sha1.h.
30977
30978 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30979
30980         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
30981         * m4/sha1.m4: Renamed from sha.m4.
30982         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
30983
30984 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
30985
30986         * lib/obstack.h (obstack_empty_p):
30987         Don't assume that chunk->contents is suitably aligned.
30988         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
30989         Likewise. Problem reported by Benno in
30990         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
30991
30992         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
30993         readable.  This could be improved further but it'd take some work.
30994
30995 2004-08-08  Simon Josefsson  <jas@extundo.com>
30996
30997         * modules/xgethostname (Depends-on): Remove exit and error (not
30998         used).
30999
31000         * modules/getpass-gnu: Add getpass.h.
31001         (Depends-on): Add stdbool.
31002         * modules/getpass: Add getpass.h.
31003
31004 2004-08-08  Simon Josefsson  <jas@extundo.com>
31005
31006         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
31007         Check getpass declaration.
31008
31009 2004-08-08  Simon Josefsson  <jas@extundo.com>
31010
31011         * lib/xgethostname.c: Don't include error.h (not used).
31012
31013         * lib/getpass.h: Add.
31014         * lib/getpass.c: Include getpass.h first.
31015
31016 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
31017
31018         * lib/xalloc-die.c: New file.
31019         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
31020         All uses removed.
31021         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
31022         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
31023         xalloc-die.c.
31024         (_, N_, xalloc_die): Move to xalloc-die.c.
31025         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
31026         so that we needn't mess with xalloc_msg_memory_exhausted.
31027
31028         * lib/sha1.h: Renamed from sha.h.
31029         (SHA1_H): Renamed from _SHA_H.
31030         (sha1_ctx): Renamed from sha_ctx.
31031         (sha1_init_ctx): Renamed from sha_init_ctx.
31032         (sha1_process_block): Renamed from sha_process_block.
31033         (sha1_process_bytes): Renamed from sha_process_bytes.
31034         (sha1_finish_ctx): Renamed from sha_finish_ctx.
31035         (sha1_read_ctx): Renamed from sha_read_ctx.
31036         (sha1_stream): Renamed from sha_stream.
31037         (sha1_buffer): Renamed from sha_buffer.
31038         * lib/sha1.c: Likewise; renamed from sha.c.
31039         Do not include <sys/types.h>.
31040         Include <stddef.h> rather than <stdlib.h>.
31041
31042 2004-08-08  Bruno Haible  <bruno@clisp.org>
31043
31044         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
31045         FILESYSTEM_PREFIX_LEN.
31046         * lib/progreloc.c: Likewise.
31047         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
31048
31049 2004-08-06  Simon Josefsson  <jas@extundo.com>
31050
31051         * modules/progname (Depends-on): Don't depend on stdbool.
31052
31053 2004-08-06  Simon Josefsson  <jas@extundo.com>
31054
31055         * modules/getsubopt: New file.
31056         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31057         getsubopt.
31058
31059 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31060
31061         More merge from coreutils.
31062
31063         * m4/utimens.m4, m4/utimecmp.m4: New files.
31064         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
31065         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
31066         prereq.m4, sha.m4: Import changes from coreutils.
31067
31068 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31069
31070         More merge from coreutils.
31071         * modules/raise, modules/readtokens0, modules/utimens:
31072         * modules/utimecmp, module/xnanosleep: New files.
31073         * modules/strftime: Add lib/strftime.h.
31074         Change include from <time.h> to "strftime.h".
31075         * modules/yesno: Add lib/yesno.h.
31076         * modules/backupfile: Remove lib/addext.c.
31077         * modules/euidaccess: Add stat-macros.h.
31078         * modules/canonicalize, modules/euidaccess,
31079         modules/filemode, modules/lchown, modules/makepath,
31080         modules/rmdir, modules/stat: Likewise.
31081
31082 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31083
31084         Merge from tar.
31085         * lib/argp-help.c (make_hol, hol_append): Don't assume that
31086         SIZE_MAX is a valid preprocessor constant.
31087         (__argp_basename): Change from "#ifndef _LIBC"
31088         to "#ifndef __argp_short_program_name", so that
31089         we don't compile these functions for tar.
31090
31091         More merges from coreutils.
31092         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
31093         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
31094         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
31095         * lib/addext.c: Remove; no longer needed.
31096         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
31097         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
31098         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
31099         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
31100         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
31101         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
31102         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
31103         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
31104         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
31105         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
31106         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
31107         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
31108         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
31109         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
31110         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
31111         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
31112         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
31113         Import changes from coreutils.
31114
31115 2004-08-05  Simon Josefsson  <jas@extundo.com>
31116
31117         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
31118
31119 2004-08-05  Simon Josefsson  <jas@extundo.com>
31120
31121         * m4/getsubopt.m4: New file.
31122
31123 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31124
31125         Merge from coreutils.
31126
31127         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
31128         * m4/getcwd-path-max.m4: New files.
31129
31130         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
31131         FILESYSTEM_PREFIX_LEN ->
31132         FILE_SYSTEM_PREFIX_LEN.
31133         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
31134         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
31135         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
31136         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
31137
31138         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
31139         prerequisite modules now handle the DOS stuff.
31140         Don't check for unistd.h.
31141
31142 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31143
31144         Merge from coreutils.
31145
31146         * lib/.gdb-history: Remove; this doesn't belong here.
31147
31148         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
31149         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
31150         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
31151         * lib/getcwd.c: New files.
31152
31153         * lib/dirname.h: Include <stdbool.h>.
31154         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
31155         for consistency with POSIX terminology.  All uses changed.
31156         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
31157         (strip_trailing_slashes): Use bool for booleans.
31158         * lib/stripslash.c (strip_trailing_slashes): Likewise.
31159
31160         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
31161         sometimes returns a positive errno value even when it succeeds.
31162         (print_errno_message) [!LIBC]: Fall back on strerror if
31163         __strerror_r fails.
31164
31165         * lib/path-concat.c (mempcpy): Don't define if a system header defines
31166         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
31167         (longest_relative_suffix): New function.
31168         (path_concat): Use it.  Assume first argument is not NULL.
31169         Port to DOS.  Omit redundant separators.
31170         Report an error instead of returning NULL.
31171         Use mempcpy instead of memcpy.
31172         (xpath_concat): Remove: not declared or used.
31173
31174         * lib/same.h: Include <stdbool.h>
31175         (same_name): Return bool, not int.
31176         * lib/same.c (same_name): Likewise.
31177         (errno): Don't declare; we assume C89 or better now.
31178
31179         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
31180         if not already defined.
31181
31182         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
31183         * lib/dup-safer.c (errno): Likewise.
31184
31185 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
31186
31187         Merge from coreutils.
31188         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
31189         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
31190         * modules/path-concat: Don't depend on strdup.
31191
31192 2004-08-03  Simon Josefsson  <jas@extundo.com>
31193
31194         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
31195         * lib/progname.h: Don't include stdbool.h.
31196
31197 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31198
31199         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
31200         * MODULES.html.sh (func_all_modules): Remove fatal.
31201
31202 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31203
31204         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
31205
31206 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
31207
31208         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
31209         working.
31210
31211 2004-08-02  Simon Josefsson  <jas@extundo.com>
31212
31213         * lib/getsubopt.h: New file, with comments from Bruno Haible.
31214         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
31215         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
31216
31217 2004-08-01  Simon Josefsson  <jas@extundo.com>
31218
31219         * lib/xgetdomainname.c: Include stdlib.h, for free().
31220
31221 2004-07-19  Bruno Haible  <bruno@clisp.org>
31222
31223         * MODULES.html.sh (func_all_modules): Add dummy.
31224
31225 2004-07-16  Simon Josefsson  <jas@extundo.com>
31226
31227         * modules/dummy: New file.
31228
31229 2004-07-16  Simon Josefsson  <jas@extundo.com>
31230
31231         * lib/dummy.c: New file.
31232
31233 2004-07-16  Bruno Haible  <bruno@clisp.org>
31234
31235         * lib/backupfile.h: Add extern "C" for C++.
31236         * lib/closeout.h: Likewise.
31237         * lib/copy-file.h: Likewise.
31238         * lib/findprog.h: Likewise.
31239         * lib/full-write.h: Likewise.
31240         * lib/pathname.h: Likewise.
31241         * lib/progname.h: Likewise.
31242         * lib/stpcpy.h: Likewise.
31243         * lib/stpncpy.h: Likewise.
31244         * lib/strcase.h: Likewise.
31245         * lib/strstr.h: Likewise.
31246         * lib/xalloc.h: Likewise.
31247
31248         * lib/mbswidth.h: Add extern "C" for C++.
31249         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
31250
31251 2004-07-13  Robert Millan  <robertmh@gnu.org>
31252
31253         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
31254
31255 2004-07-09  Simon Josefsson  <jas@extundo.com>
31256
31257         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
31258         failed without this.)
31259
31260 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
31261
31262         * modules/chown (Files): Add lib/fchown-stub.c, since
31263         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
31264
31265 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
31266
31267         * lib/fchown-stub.c: New file.
31268
31269 2004-06-24  Jim Meyering  <jim@meyering.net>
31270
31271         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
31272
31273 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31274
31275         * modules/argz: Omit "#include".
31276
31277         * MODULES.html.sh (func_all_modules): Add calloc, to match
31278         2004-06-01 addition of calloc module.
31279
31280 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31281
31282         * m4/argz.m4: New file, which is autoupdated from libtool.
31283
31284 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31285
31286         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
31287         libtool.
31288
31289 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31290
31291         * config/srclist-update: Don't insist on "USA." before the
31292         close-comment, as libtool omits the period and puts the */ on a
31293         separate line.
31294         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
31295         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
31296
31297 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
31298
31299         * modules/argz: New file.
31300         * MODULES.html.sh (func_all_modules): Add argz.
31301
31302 2004-06-12  Jim Meyering  <jim@meyering.net>
31303         and  Paul Eggert  <eggert@cs.ucla.edu>
31304
31305         * modules/hash (Files): Add lib/xalloc.h.
31306         * modules/pipe (Depends-on): Add wait-process.
31307         * modules/stat (Depends-on): Add xalloc.
31308         * modules/userspec (Files): Add lib/userspec.h.
31309         * modules/xstrto
31310
31311         Upgrade from gettext-0.13.
31312         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
31313         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
31314         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
31315
31316 2004-06-10  Jim Meyering  <jim@meyering.net>
31317
31318         * lib/calloc.c: New file.
31319
31320 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
31321
31322         * lib/getdate.y (yylex): Allow space between sign and number.
31323         Problem reported by Dan Jacobson.
31324
31325 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
31326
31327         Merge from coreutils CVS.
31328
31329         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
31330         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
31331         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
31332         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
31333         xstrtol.m4: Fix copyright date and/or serial number.
31334
31335         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
31336         See if we need an fchown replacement.
31337         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
31338         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
31339         and use the replacement function if we detect either defect.
31340
31341         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
31342         gl_UTIMECMP.
31343
31344 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
31345         and  Jim Meyering  <jim@meyering.net>
31346
31347         Merge from coreutils CVS.
31348
31349         * lib/stat-macros.h: New file, with contents from file-type.h
31350         and coreutils' system.h.
31351         * lib/file-type.c: Include "stat-macros.h".
31352         * lib/file-type.h (file_type): Move all macro definitions to new file,
31353         stat-macros.h.
31354
31355         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
31356         Wrap old code with this conditional.
31357         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
31358         function that does not dereference symlinks.
31359         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
31360
31361         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
31362         dependency problems.
31363         (xreadlink): Accept new arg SIZE, for efficiency.
31364         All decls and uses changed.
31365         * lib/xreadlink.h: Include <stddef.h>, for size_t.
31366
31367         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
31368         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
31369
31370         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
31371         sysexits.h.
31372
31373 2004-06-01  Jim Meyering  <jim@meyering.net>
31374
31375         * m4/calloc.m4: New file.
31376
31377 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
31378
31379         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
31380         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
31381         Also, fix a typo in a diagnostic.
31382
31383 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31384
31385         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
31386         or AC_FUNC_REALLOC.
31387
31388 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31389
31390         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
31391         macros to be defined.
31392         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
31393         the allocator returns NULL because the requested size is zero.
31394
31395 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31396
31397         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
31398         var.  Add comment explaining why libc still defines it.  This
31399         merges the following patch from glibc:
31400         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
31401
31402 2004-05-20  Andreas Schwab  <schwab@suse.de>
31403
31404         * m4/free.m4: Replace free if it not known to work, not the other
31405         way round.
31406
31407 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31408
31409         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
31410         present in glibc since revision 1.1 of this file.
31411         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
31412         obstack_alignment_mask, obstack_alloc, obstack_base,
31413         obstack_blank, obstack_blank_fast, obstack_chunk_size,
31414         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
31415         obstack_grow0, obstack_init, obstack_int_grow,
31416         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
31417         obstack_next_free, obstack_object_size, obstack_ptr_grow,
31418         obstack_ptr_grow_fast, obstack_room): Remove declarations of
31419         nonexistent functions.
31420
31421 2004-05-18  Karl Berry  <karl@gnu.org>
31422
31423         * config/srclist.txt: break link for vasnprintf.c.
31424
31425 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31426
31427         Port obstack to the AS/400, where pointers are 16 bytes wide and
31428         you cannot cast an integer to a valid pointer.  This patch is
31429         currently waiting to be integrated into glibc; see
31430         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
31431
31432         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
31433         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
31434         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
31435         (struct obstack): temp member is now a union of a pointer and
31436         an integer, instead of an integer.  All integer uses changed.
31437         This does not affect the physical layout of struct obstack,
31438         except on hosts (like the AS/400) where the size or alignment of
31439         void * is greater than that of ptrdiff_t.
31440         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
31441         __STDC__)]: Store temporary in pointer member of union, not
31442         integer member.
31443         * lib/obstack.c: Include <stddef.h>, for offsetof.
31444         (struct fooalign): Remove; it doesn't need a name.
31445         (union fooround): Change double to long double, and add void *.
31446         (DEFAULT_ALIGNMENT): Use offsetof to compute.
31447         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
31448         not a macro.  Hence the values are always int; so remove all
31449         casts-to-int in uses.
31450
31451 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31452
31453         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
31454         we can get this patch merged into glibc.
31455
31456 2004-05-17  Derek R. Price  <derek@ximbiot.com>
31457             Paul Eggert  <eggert@cs.ucla.edu>
31458
31459         * m4/argp: Depend on alloca.
31460
31461 2004-05-17  Derek R. Price  <derek@ximbiot.com>
31462             Paul Eggert  <eggert@cs.ucla.edu>
31463
31464         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
31465         freecoding.
31466
31467 2004-05-17  Bruno Haible  <bruno@clisp.org>
31468
31469         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
31470         precision that consists of a '.' followed by an empty digit string.
31471         Patch by Tor Lillqvist <tml@iki.fi>.
31472
31473 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31474
31475         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
31476         for backward compatibility with older code.  We need our own
31477         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
31478         it under some other name, and our alloca.h will define it.
31479
31480 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31481             Derek Price  <derek@ximbiot.com>
31482
31483         * lib/alloca.c: Include <alloca.h>, to get our interface.
31484         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
31485         include <alloca.h> first.  Use C89 prototype for alloca; this
31486         requires including <stddef.h> for size_t.  Use extern "C" if C++.
31487         Use #elif for simplicity, since we can assume C89 now.
31488         Don't try to source the system alloca.h since it will not be found
31489         and to prevent recursively including its replacement.
31490         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
31491         * lib/regex.c: Likewise.
31492
31493 2004-05-16  Derek Price  <derek@ximbiot.com>
31494             Paul Eggert  <eggert@cs.ucla.edu>
31495
31496         getline cleanup.  This changes the getndelim2 API: both order of
31497         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
31498         no delimiter).
31499
31500         * lib/getline.c: Don't include stddef.h or stdio.h, since our
31501         interface does that.
31502         (getline): Always use getdelim, so that we don't have two
31503         copies of this code.
31504         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
31505         if available.
31506         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
31507         (GETNDELIM2_MAXIMUM): New macro.
31508         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
31509         instead of the old practice of delim2==0.  All callers changed.
31510         Return -1 on overflow, instead of returning junk.
31511         Do not set *linesize unless allocation succeeds.
31512         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
31513         that we include sys/types.h.
31514         * lib/getnline.h: Likewise.
31515         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
31516         (getndelim2): Reorder arguments.
31517         * lib/getnline.c (getnline, getndelim):
31518         Don't discard the NMAX argument.
31519         (getnline): Invoke getndelim, to avoid code duplication.
31520         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
31521         of (size_t) -1 by callers of the getnline family.
31522
31523 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31524
31525         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
31526         Check for gettimeofday.
31527         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
31528         Check for settimeofday, stime.
31529
31530 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
31531
31532         * lib/nanosleep.c (suspended): Change its type from int to
31533         sig_atomic_t volatile.
31534         (first_call): Make it private to rpl_nanosleep, and have it
31535         be zero initially as that's a bit faster.
31536         (my_usleep): Round up fractional times instead of truncating them,
31537         as this is the usual meaning for 'sleep'.
31538
31539         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
31540         doesn't work.
31541         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
31542         (ENOSYS): Define if not defined.
31543         (settime): Fall back on stime if it exists and settimeofday fails.
31544         But don't bother with fallbacks if a method fails with errno == EPERM.
31545
31546 2004-05-11  Jim Meyering  <jim@meyering.net>
31547
31548         Prior to this change, the save_cwd caller required read access to the
31549         current directory on most systems (ones with the fchdir function).
31550
31551         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
31552         fails, try write-only, and finally, resort to using xgetcwd.
31553
31554 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
31555
31556         * lib/obstack.c, obstack.h: Import changes from libc.
31557
31558 2004-04-28  Bruno Haible  <bruno@clisp.org>
31559
31560         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
31561         also implicitly appends .exe to executables.
31562         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
31563         accepts Windows pathnames.
31564         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31565         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31566         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
31567         Treat Cygwin like Windows, since it now accepts Windows pathnames.
31568         Reported by Derek Robert Price <derek@ximbiot.com>.
31569
31570 2004-04-21  Karl Berry  <karl@gnu.org>
31571
31572         * config/srclist.txt (localcharset.c): break sync.
31573
31574 2004-04-20  Paul Eggert  <eggert@twinsun.com>
31575
31576         * m4/host-os.m4: Add a copyright notice.
31577
31578 2004-04-20  Jim Meyering  <jim@meyering.net>
31579
31580         Change UTILS_ to gl_ in AC_DEFINE'd names.
31581         Change utils_- and jm_-prefixed variables, too.
31582         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
31583         UTILS_FUNC_MKDIR_TRAILING_SLASH.
31584         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
31585
31586         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
31587         Don't emit trailing blanks.
31588         Also rename jm_-prefixed variables to have gl_ prefix.
31589
31590         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
31591         Also rename jm_-prefixed variables to have gl_ prefix.
31592
31593         * m4/jm-macros.m4: Reflect the renamings.
31594         * m4/prereq.m4: Likewise.
31595
31596 2004-04-20  Jim Meyering  <jim@meyering.net>
31597
31598         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
31599         memory.
31600
31601 2004-04-20  Jim Meyering  <jim@meyering.net>
31602             Bruno Haible  <bruno@clisp.org>
31603
31604         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
31605         memory when realloc fails.
31606
31607 2004-04-19  Jim Meyering  <jim@meyering.net>
31608
31609         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
31610         now that readutmp.c may call `free (0)'.
31611
31612 2004-04-19  Bruno Haible  <bruno@clisp.org>
31613
31614         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
31615         * m4/inttypes_h.m4: Likewise.
31616         * m4/stdint_h.m4: Likewise.
31617         * m4/intmax_t.m4: Likewise.
31618         * m4/uintmax_t.m4: Likewise.
31619
31620 2004-04-18  Jim Meyering  <jim@meyering.net>
31621
31622         * m4/prereq.m4: Don't forbid jm_ prefix.
31623
31624         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
31625         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
31626         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
31627         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
31628         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
31629         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
31630         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
31631         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
31632         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
31633         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
31634         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
31635         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
31636         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
31637         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
31638         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
31639         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
31640         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
31641         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
31642         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
31643
31644 2004-04-18  Jim Meyering  <jim@meyering.net>
31645
31646         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
31647         failure, don't leak memory and do call END_UTMP_ENT.
31648
31649 2004-04-16  Jim Meyering  <jim@meyering.net>
31650
31651         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
31652         coreutils' stat program.
31653         (gl_PREREQ): Don't require jm_PREREQ_STAT.
31654
31655 2004-04-11  Paul Eggert  <eggert@twinsun.com>
31656
31657         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
31658         C89.
31659         (CHAR_BIT): Remove, since we assume C89.
31660         Include <stdint.h> if available, as per current Autoconf CVS advice.
31661
31662 2004-03-31  Jim Meyering  <jim@meyering.net>
31663
31664         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
31665         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
31666         * m4/xalloc.m4: Likewise.
31667
31668 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31669
31670         Merge from coreutils.
31671
31672         * m4/inttostr.m4: New file.
31673         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
31674         Require AM_STDBOOL_H and gl_TIMESPEC instead.
31675         Require gl_CLOCK_TIME.
31676         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
31677
31678 2004-03-30  Paul Eggert  <eggert@twinsun.com>
31679
31680         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
31681         not bool, to be more consistent with Unix conventions.
31682         Suggested by Bruno Haible.
31683
31684         Merge from coreutils.
31685
31686         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
31687         * lib/umaxtostr.c: New files.
31688
31689         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
31690         the usual <time.h> dance.
31691         (get_date): Change signature to support fractional time stamps.
31692         All callers changed.
31693         * lib/getdate.y: Include "getdate.h" first, as we can now
31694         assume C89 and don't need to worry about 'const'.
31695         Similarly, include "unlocked-io.h" near start, not in middle.
31696         Include <limits.h>.
31697         (textint.value): Use long int rather than int.
31698         (textint.digits): Use size_t rather than int.
31699         (BILLION, LOG10_BILLION): New constants.
31700         (parser_control): New member rel_ns.  Members day_ordinal,
31701         time_zone, month, day, hour, minutes, rel_year, rel_month,
31702         rel_day, rel_hour, rel_minutes, rel_seconds
31703         are now long int, not int.  Member seconds is now struct timespec,
31704         not int.  New member timespec_seen.  Members dates_seen, days_seen,
31705         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
31706         not int.
31707         (%union.intval): Now long int, not int.
31708         New member timespec.
31709         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
31710         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
31711         (spec): Now is a timespec or an item list.
31712         (timespec, items): New nonterminals.
31713         (time, rel, relunit, number, get_date):
31714         Add support for fractional seconds.
31715         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
31716         (gmtime, localtime, mktime): Remove decls; not needed with C89.
31717         (to_hour): First arg is now long int, not int.
31718         (to_year): Returns long int, not int.
31719         Don't treat year -70 like 70.
31720         (tm_diff): Returns long int, not int.
31721         (lookup_word): Use bool instead of int when appropriate.
31722         (yylex): Use size_t for count, not int.
31723         Detect overflow when parsing large integer constants.
31724         Add support for fractions.
31725         (get_date): Make pointers 'const' if possible.
31726         Use more-portable code to detect integer overflow.
31727         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
31728         Don't use ctime; it's not reliable if the year has >4 digits.
31729
31730         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
31731         This is for compatibility with BSD.
31732
31733         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
31734         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
31735         From coreutils' system.h.
31736
31737         * lib/userspec.c: Don't include "posixver.h".
31738         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
31739         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
31740         compatible extension.  Simplify code by removing a boolean int
31741         that was always nonzero if a string was nonnull.
31742
31743 2004-03-30  Jim Meyering  <jim@meyering.net>
31744
31745         Merge from coreutils.
31746
31747         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
31748         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
31749         on some systems one must include <grp.h> before it.
31750         Reported by Christian Krackowizer.
31751
31752 2004-03-30  Jim Meyering  <jim@meyering.net>
31753
31754         Merge from coreutils.
31755
31756         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
31757
31758         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
31759         an empty input stream.
31760
31761         * lib/readtokens.c: Include <stdbool.h>.
31762         (readtoken): Use `size_t' rather than int/long.
31763         All callers adjusted.
31764         Use `bool' rather than `int' where appropriate.
31765         Use memset rather than an explicit loop.
31766         Use x2nrealloc rather than xrealloc.
31767         Allow the use of `\0' as a delimiter.
31768         (readtokens): Likewise.
31769         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
31770
31771 2004-03-30  Jim Meyering  <jim@meyering.net>
31772
31773         * m4/realloc.m4: Remove file, since now it does no more than
31774         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
31775         the `configure.ac' section of module/realloc.
31776         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
31777
31778 2004-03-30  Bruno Haible  <bruno@clisp.org>
31779
31780         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
31781         nonnull.
31782
31783 2004-03-29  Paul Eggert  <eggert@twinsun.com>
31784
31785         Merge changes to getloadavg.c from coreutils and Emacs.
31786
31787         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
31788         Define to an expression, not to the empty string.
31789         Include cloexec.h and xalloc.h.
31790         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
31791         Use set_cloexec_flag rather than rolling our own.
31792         * lib/cloexec.c, lib/cloexec.h: New files.
31793
31794 2004-03-29  Paul Eggert  <eggert@twinsun.com>
31795
31796         * m4/cloexec.m4: New file.
31797
31798 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31799
31800         * lib/getopt.h: Sync with libc CVS.
31801
31802 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31803             Bruno Haible  <bruno@clisp.org>
31804
31805         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
31806         mbswidth.
31807
31808 2004-03-18  Paul Eggert  <eggert@twinsun.com>
31809             Bruno Haible  <bruno@clisp.org>
31810
31811         * lib/mbswidth.h: Include <wchar.h> only if
31812         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
31813         <wchar.h>.
31814         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
31815
31816 2004-03-09  Paul Eggert  <eggert@twinsun.com>
31817
31818         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
31819         Sync with libc CVS.
31820         * lib/getopt_int.h: New file, also synced from libc.
31821
31822 2004-03-09  Paul Eggert  <eggert@twinsun.com>
31823
31824         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
31825         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
31826         Bring back getopt.c, getopt.h, getopt1.c.
31827
31828 2004-03-07  Paul Eggert  <eggert@twinsun.com>
31829
31830         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
31831         All uses changed.  Check for sa_sigaction member; this fixes
31832         a bug first reported by Jason Andrade in
31833         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
31834
31835 2004-03-07  Paul Eggert  <eggert@twinsun.com>
31836
31837         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
31838         '#if' expressions.  Unlike the code it replaces, it does not
31839         depend on (defined _SC_PAGESIZE).  However, it does depend on
31840         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
31841         first reported by Jason Andrade in
31842         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
31843
31844 2004-02-25  Simon Josefsson  <jas@extundo.com>
31845
31846         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
31847
31848 2004-02-25  Simon Josefsson  <jas@extundo.com>
31849
31850         * lib/strdup.h: New file.
31851         * lib/strdup.c: Include it.
31852         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
31853         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
31854
31855 2004-02-23  Karl Berry  <karl@gnu.org>
31856
31857         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
31858         (from fencepost.gnu.org:/gd/gnuorg).
31859
31860 2004-02-23  Karl Berry  <karl@gnu.org>
31861
31862         * config/srclistvars.sh (GNUORG) [karl]: redefine.
31863         * config/srclist.txt: add maintain/standards documents.
31864
31865 2004-02-18  Bruno Haible  <bruno@clisp.org>
31866
31867         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
31868         Reported by Derek Robert Price <derek@ximbiot.com>.
31869
31870 2004-02-16  Karl Berry  <karl@gnu.org>
31871
31872         * config/mkinstalldirs, install-sh: update from automake.
31873
31874 2004-02-06  Karl Berry  <karl@gnu.org>
31875
31876         * m4/po.m4: update from gettext 0.14.1.
31877
31878 2004-02-06  Karl Berry  <karl@gnu.org>
31879
31880         * lib/config.charset: update from gettext 0.14.1.
31881
31882 2004-02-05  Paul Eggert  <eggert@twinsun.com>
31883
31884         Add comments and code, prompted by suggestions from Bruno Haible
31885         for sh-quote.
31886         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
31887         describing the enum quoting_style values.
31888         * lib/quotearg.c (quotearg_alloc): New function.
31889         (quotearg_buffer_restyled): Treat lone { and } as special.
31890         Treat = as special.  Work around bug with older shells
31891         that "see" a '\' that is really the 2nd byte of a multibyte char.
31892         Quote empty string with shell_quoting_style.
31893
31894 2004-02-03  Bruno Haible  <bruno@clisp.org>
31895
31896         * m4/pipe.m4: New file, from GNU gettext.
31897
31898 2004-02-03  Bruno Haible  <bruno@clisp.org>
31899
31900         * lib/pipe.h: New file, from GNU gettext.
31901         * lib/pipe.c: New file, from GNU gettext.
31902
31903 2004-01-27  Bruno Haible  <bruno@clisp.org>
31904
31905         * m4/execute.m4: New file, from GNU gettext.
31906
31907 2004-01-27  Bruno Haible  <bruno@clisp.org>
31908
31909         * lib/execute.h: New file, from GNU gettext.
31910         * lib/execute.c: New file, from GNU gettext.
31911         * lib/w32spawn.h: New file, from GNU gettext.
31912
31913 2004-01-24  Paul Eggert  <eggert@twinsun.com>
31914
31915         Merge from diffutils.
31916
31917         * lib/file-type.c (file_type): Add typed memory objects.
31918         * lib/file-type.h (S_TYPEISTMO): New macro.
31919
31920         * lib/c-stack.h (c_stack_action): Remove argv argument.
31921         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
31922         (die): Don't calculate message unless segv_action returns.
31923         (get_stack_location, min_address_from_argv, max_address_from_argv,
31924         volatile stack_base, volatile_stack_size): Remove.
31925         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
31926         that every segmentation violation is a stack overflow.  (Ouch!)
31927         See Debian bug 136249 (still outstanding) for more info about why
31928         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
31929
31930 2004-01-24  Paul Eggert  <eggert@twinsun.com>
31931
31932         Exit-status fix from coreutils.
31933
31934         Use exit_failure consistently in place of EXIT_FAILURE,
31935         so that program exit statuses are consistent on failure.
31936
31937         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
31938         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
31939         * lib/argmatch.h: Comment fix to match the above.
31940         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
31941         Now a macro referring to exit_failure, instead of a separate
31942         variable.  Include "exitfail.h" to get it.
31943         * lib/xstrtol.h: Include "exitfail.h".
31944         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
31945
31946         * lib/long-options.c (parse_long_options): Use prototype
31947         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
31948         for clarity.
31949
31950 2004-01-21  Jim Meyering  <jim@meyering.net>
31951
31952         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
31953         so as not to conflict with a different-sized __mktime_internal
31954         function in GNU libc.
31955         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
31956         Problem building statically-linked `ls' reported by Michael Brunnbauer.
31957
31958 2004-01-20  Karl Berry  <karl@gnu.org>
31959
31960         * config/config.guess: update from config.
31961
31962         * config/srclistvars.sh: GNUWWWLICENSES for karl.
31963
31964 2004-01-20  Bruno Haible  <bruno@clisp.org>
31965
31966         Safer stack allocation.
31967         * lib/setenv.c: Include allocsa.h.
31968         (alloca): Remove fallback definition.
31969         (freea): Remove macro.
31970         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
31971         instead of freea.
31972
31973 2004-01-20  Bruno Haible  <bruno@clisp.org>
31974
31975         * m4/eealloc.m4: New file, from GNU gettext.
31976
31977 2004-01-20  Bruno Haible  <bruno@clisp.org>
31978
31979         * m4/allocsa.m4: New file, from GNU gettext.
31980
31981 2004-01-20  Bruno Haible  <bruno@clisp.org>
31982
31983         * lib/xallocsa.h: New file, from GNU gettext.
31984         * lib/xallocsa.c: New file, from GNU gettext.
31985
31986 2004-01-20  Bruno Haible  <bruno@clisp.org>
31987
31988         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
31989
31990 2004-01-20  Bruno Haible  <bruno@clisp.org>
31991
31992         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
31993         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
31994         specially.
31995
31996 2004-01-20  Bruno Haible  <bruno@clisp.org>
31997
31998         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
31999         patch.
32000
32001 2004-01-20  Bruno Haible  <bruno@clisp.org>
32002
32003         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
32004
32005 2004-01-20  Bruno Haible  <bruno@clisp.org>
32006
32007         * lib/eealloc.h: New file.
32008
32009 2004-01-20  Bruno Haible  <bruno@clisp.org>
32010
32011         * lib/binary-io.h: Avoid warnings on Cygwin.
32012
32013 2004-01-20  Bruno Haible  <bruno@clisp.org>
32014
32015         * lib/allocsa.h: New file, from GNU gettext.
32016         * lib/allocsa.c: New file, from GNU gettext.
32017
32018 2004-01-18  Karl Berry  <karl@gnu.org>
32019
32020         * doc/gpl.texi, doc/lgpl.texi: new files.
32021
32022 2004-01-18  Karl Berry  <karl@gnu.org>
32023
32024         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
32025         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
32026
32027 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32028
32029         Merge from coreutils.
32030
32031         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
32032         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
32033         (gl_DEFAULT_POSIX2_VERSION): Move
32034         the documentation from 'configure' into 'config.hin',
32035         so that 'configure --help' isn't burdened by it and
32036         we don't have to worry about its formatting there.
32037         Reword the documentation so that it's more succinct
32038         and can be run together into a single paragraph.
32039         * m4/same.m4 (gl_SAME): Check for pathconf.
32040
32041 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32042
32043         Merge from coreutils.
32044
32045         * lib/posixver.c: Include posixver.h.
32046
32047         * lib/same.c: Include <stdbool.h>, <limits.h>.
32048         (_POSIX_NAME_MAX): Define if not defined.
32049         (MIN): New macro.
32050         (same_name): If file names are silently truncated, report
32051         that the file names are the same if they are the same after
32052         the silent truncation.
32053
32054         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
32055         conversion function.
32056         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
32057         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
32058         longer needed.
32059
32060 2004-01-15  Jim Meyering  <jim@meyering.net>
32061
32062         Merge from coreutils.
32063
32064         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
32065         if no library is required.
32066         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
32067         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
32068         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
32069         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
32070         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
32071         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
32072         value, $ac_cv_search_crypt, if it's "none required".
32073         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
32074         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
32075         not gl_FUNC_GETLOADAVG.
32076         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
32077         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
32078
32079 2004-01-15  Jim Meyering  <jim@meyering.net>
32080
32081         Merge from coreutils.
32082
32083         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
32084         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
32085         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
32086
32087         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
32088         optional configure-time default.
32089
32090         * lib/version-etc.c (version_etc_copyright): Update copyright date.
32091
32092         * lib/xreadlink.c (xreadlink): Correct outdated comment.
32093
32094 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
32095
32096         Merge from coreutils.
32097
32098         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
32099         value, $ac_cv_search_nanosleep, if it's "none required".
32100
32101 2004-01-14  Paul Eggert  <eggert@twinsun.com>
32102
32103         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
32104         with like-named macro in fnmatch.c.
32105         (EXT): Use an internal constant instead.
32106
32107         Merge fnmatch patches from glibc.
32108         * lib/fnmatch.c (mbsinit): Remove define.
32109         Add libc_hidden_ver (__fnmatch, fnmatch).
32110         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
32111         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
32112
32113 2004-01-14  Karl Berry  <karl@gnu.org>
32114
32115         * config/install-sh: update from automake.
32116
32117 2004-01-13  Karl Berry  <karl@gnu.org>
32118
32119         * config/install-sh: update from automake.
32120
32121 2004-01-09  Karl Berry  <karl@gnu.org>
32122
32123         * config/install-sh: update from automake.
32124
32125 2004-01-05  Karl Berry  <karl@gnu.org>
32126
32127         * config/config.{sub,guess}: update from config.
32128
32129 2003-12-31  Karl Berry  <karl@gnu.org>
32130
32131         * config/depcomp: update from automake.
32132
32133 2003-12-14  Karl Berry  <karl@gnu.org>
32134
32135         * lib/config.charset: update from gettext-runtime.
32136
32137 2003-12-03  Paul Eggert  <eggert@twinsun.com>
32138
32139         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
32140         Bug reported by Alfred M. Szmidt.
32141
32142 2003-12-03  Bruno Haible  <bruno@clisp.org>
32143
32144         * m4/gettext.m4: Upgrade from gettext-0.13.
32145         * m4/po.m4: Upgrade from gettext-0.13.
32146         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
32147         * m4/intmax.m4: New file, from gettext-0.13.
32148         * m4/printf-posix.m4: New file, from gettext-0.13.
32149
32150 2003-11-29  Karl Berry  <karl@gnu.org>
32151
32152         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
32153
32154 2003-11-25  Paul Eggert  <eggert@twinsun.com>
32155             Bruno Haible  <bruno@clisp.org>
32156
32157         * lib/printf-parse.h: Don't include sys/types.h.
32158         (ARG_NONE): New macro.
32159         (char_directive): Change type of *arg_index fields to size_t.
32160         * lib/printf-parse.c: Don't include sys/types.h.
32161         (SSIZE_MAX): Remove macro.
32162         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
32163         Remove unnecessary overflow check.
32164         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
32165         fields.
32166
32167 2003-11-25  Bruno Haible  <bruno@clisp.org>
32168
32169         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
32170
32171 2003-11-25  Bruno Haible  <bruno@clisp.org>
32172
32173         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
32174         gt_TYPE_SSIZE_T.
32175
32176 2003-11-24  Paul Eggert  <eggert@twinsun.com>
32177
32178         * modules/alloca: Remove dependency on xalloc.
32179
32180 2003-11-24  Paul Eggert  <eggert@twinsun.com>
32181
32182         * lib/alloca.c: Remove dependency on xalloc module.
32183         (xalloc_die): Remove.
32184         (memory_full) [!defined emacs]: New macro.
32185         [!defined emacs]: Don't include xalloc.h.
32186         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
32187         address arithmetic overflows.  Change datatypes a bit to avoid
32188         unnecessary casts.
32189
32190 2003-11-22  Jim Meyering  <jim@meyering.net>
32191
32192         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
32193         s/size/size_t/.
32194
32195 2003-11-21  Karl Berry  <karl@gnu.org>
32196
32197         * config/config.{sub,guess}: update from config.
32198
32199 2003-11-18  Karl Berry  <karl@gnu.org>
32200
32201         * config/config.{sub,guess}: update from config.
32202
32203         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
32204
32205 2003-11-17  Paul Eggert  <eggert@twinsun.com>
32206
32207         * README: Mention that S+T cannot overflow if S is the size of
32208         an existing object and T is sufficiently small.
32209
32210 2003-11-17  Jim Meyering  <jim@meyering.net>
32211
32212         On systems without utime and without a utimes function capable of
32213         dealing with a NULL struct utimbuf* argument, this utime replacement
32214         could -- in unusual circumstances -- leak a file descriptor.
32215         * lib/utime.c: Include <unistd.h> and <errno.h>.
32216         (utime_null): Be sure to close `fd' and to preserve errno.
32217         Reported by Geoff Collyer via Arnold Robbins.
32218
32219 2003-11-17  Bruno Haible  <bruno@clisp.org>
32220
32221         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
32222         (Depends-on): Add xsize.
32223
32224 2003-11-17  Bruno Haible  <bruno@clisp.org>
32225
32226         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
32227
32228 2003-11-17  Bruno Haible  <bruno@clisp.org>
32229
32230         * lib/vasnprintf.c (alloca): Remove fallback definition.
32231         (freea): Remove definition.
32232         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
32233         Reported by Paul Eggert.
32234
32235 2003-11-16  Paul Eggert  <eggert@twinsun.com>
32236             Bruno Haible  <bruno@clisp.org>
32237
32238         Protect against address arithmetic overflow.
32239         * lib/printf-args.h: Include stddef.h.
32240         (arguments): Change type of field 'count' to size_t.
32241         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
32242         'unsigned int' where appropriate.
32243         * lib/printf-parse.h: Include sys/types.h.
32244         (char_directive): Change type of *arg_index fields to ssize_t.
32245         (char_directives): Change type of fields 'count', max_*_length to
32246         size_t.
32247         * lib/printf-parse.c: Include sys/types.h and xsize.h.
32248         (SSIZE_MAX): Define fallback value.
32249         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
32250         instead of 'int' where appropriate. Check a_allocated, d_allocated
32251         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
32252         * lib/vasnprintf.c: Include xsize.h.
32253         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
32254         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
32255         overflow. Avoid wraparound when converting a width or precision from
32256         decimal to binary.
32257
32258 2003-11-16  Bruno Haible  <bruno@clisp.org>
32259
32260         Update from GNU gettext.
32261         * lib/printf-parse.c: Generalize to it can be compiled for wide
32262         strings.
32263         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
32264         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
32265         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
32266         SNPRINTF): New macros.
32267         Don't include <alloca.h> if the file is used inside libintl.
32268         (local_wcslen): New function, for Solaris 2.5.1.
32269         (VASNPRINTF): Use it instead of wcslen.
32270
32271 2003-11-16  Bruno Haible  <bruno@clisp.org>
32272
32273         * lib/xsize.h (xmax): New function.
32274         (xsum, xsum3, xsum4): Declare as "pure" functions.
32275
32276 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32277
32278         * modules/xalloc (Files): Undo latest change, since xalloc.h
32279         no longer needs SIZE_MAX or PTRDIFF_MAX.
32280
32281 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32282
32283         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
32284         gl_PTRDIFF_MAX.
32285
32286 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32287
32288         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
32289         "return", to pacify some unknown compiler.  Problem reported
32290         by Joerg Schilling.
32291
32292 2003-11-12  Paul Eggert  <eggert@twinsun.com>
32293
32294         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
32295         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
32296         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
32297         heuristic is just as accurate as far as we know, and it removes a
32298         dependency on size_max.m4 and ptrdiff_max.m4.
32299
32300 2003-11-11  Bruno Haible  <bruno@clisp.org>
32301
32302         * modules/xsize (Files): Add m4/size_max.m4.
32303         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
32304
32305 2003-11-11  Bruno Haible  <bruno@clisp.org>
32306
32307         * m4/size_max.m4: New file.
32308         * m4/ptrdiff_max.m4: New file.
32309         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
32310         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
32311         (gl_XALLOC): Invoke it.
32312
32313 2003-11-11  Bruno Haible  <bruno@clisp.org>
32314
32315         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
32316         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
32317         defined.
32318
32319 2003-11-10  Paul Eggert  <eggert@twinsun.com>
32320
32321         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
32322         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
32323         rejected some allocations of exactly SIZE_MAX - 2 bytes.
32324         From Bruno Haible.
32325         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
32326         not (size_t) -1, since it's defined here.
32327
32328 2003-11-09  Karl Berry  <karl@gnu.org>
32329
32330         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
32331
32332 2003-11-06  Paul Eggert  <eggert@twinsun.com>
32333
32334         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
32335         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
32336         Reject sizes of exactly SIZE_MAX bytes.
32337         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
32338         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
32339
32340 2003-11-05  Bruno Haible  <bruno@clisp.org>
32341
32342         * lib/xsize.h: Include limits.h, to avoid a possible collision with
32343         SIZE_MAX defined in <limits.h> on Solaris.
32344
32345 2003-11-04  Jim Meyering  <jim@meyering.net>
32346
32347         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
32348         variable names, rather than @VAR@.
32349         * modules/poll: Likewise.
32350
32351 2003-11-04  Bruno Haible  <bruno@clisp.org>
32352
32353         * modules/xsize: New file.
32354         * modules/linebreak: Depend on xsize.
32355         * MODULES.html.sh (func_all_modules): Add xsize.
32356
32357 2003-11-04  Bruno Haible  <bruno@clisp.org>
32358
32359         * m4/xsize.m4: New file.
32360
32361 2003-11-04  Bruno Haible  <bruno@clisp.org>
32362
32363         * lib/xsize.h: New file.
32364         * lib/linebreak.c: Include xsize.h.
32365         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
32366         argument for overflow.
32367         Suggested by Paul Eggert.
32368
32369 2003-11-03  Karl Berry  <karl@gnu.org>
32370
32371         * config/config.{guess,sub}: update from config.
32372
32373 2003-11-03  Jim Meyering  <jim@meyering.net>
32374
32375         * modules/userspec (lib_SOURCES): Add userspec.h.
32376         (Include): Add "userspec.h".
32377         Improve description.
32378
32379 2003-11-03  Jim Meyering  <jim@meyering.net>
32380
32381         * lib/userspec.c: Include "userspec.h".
32382         * lib/userspec.h: New file.
32383
32384 2003-11-03  Bruno Haible  <bruno@clisp.org>
32385
32386         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
32387
32388 2003-11-03  Bruno Haible  <bruno@clisp.org>
32389
32390         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
32391         available, to avoid (extremely rare) race condition.
32392         Suggested by Paul Eggert.
32393
32394 2003-11-02  Karl Berry  <karl@gnu.org>
32395
32396         * config/srclist.txt (vasprintf.c): sync broken, sigh.
32397
32398 2003-10-31  Paul Eggert  <eggert@twinsun.com>
32399
32400         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
32401         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
32402         (read_filesystem_list): Set and use me_type_malloced.
32403         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
32404         whatever the type happens to be), for brevity and consistency.
32405         Check for size calculation overflow on Alphas running OSF/1.
32406
32407 2003-10-31  Jim Meyering  <jim@meyering.net>
32408
32409         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
32410
32411         * lib/linebuffer.c: Include <string.h> for declaration of memset.
32412
32413 2003-10-30  Paul Eggert  <eggert@twinsun.com>
32414             Bruno Haible  <bruno@clisp.org>
32415
32416         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
32417         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
32418
32419 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
32420
32421         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
32422         netbsd*-gnu*.  Suggested by Robert Millan.
32423
32424 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32425
32426         * modules/group-member: Depend on stdbool.
32427
32428 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32429
32430         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
32431
32432 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32433
32434         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
32435         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
32436         after the 'gnu' in these cases.  This fixes some bugs in the
32437         previous change, and is based on suggestions by Robert Millan.
32438
32439 2003-10-29  Paul Eggert  <eggert@twinsun.com>
32440
32441         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
32442         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
32443         no longer needed.
32444         * lib/quotearg.c (quotearg_n_options): Use it.
32445         * lib/group-member.c: Include <stdbool.h>.
32446         (free_group_info): Arg is now const *; don't free arg.
32447         (get_group_info): Now returns bool and accepts struct group_info *,
32448         rather than returning a malloc'ed struct group_info *.
32449         All uses changed.  Check for overflow in internal size calculation.
32450
32451         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
32452         rather than xmalloc/xrealloc.
32453         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
32454         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
32455         conformance bug: the old code used a pointer after freeing the
32456         storage that it addressed.
32457         * lib/hash.c (hash_initialize): Simplify the code by using
32458         xalloc_oversized rather than doing it by hand.
32459         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
32460         the buffer preserved.  Use free and xmalloc instead.
32461         * lib/quotearg.c (quotearg_n_options): Likewise.
32462         Use a simpler test for size overflow.  Don't use xalloc_oversized
32463         because unsigned int might be wider than size_t (!); this suggests
32464         that we should switch from unsigned int to size_t for slot numbers.
32465
32466 2003-10-28  Paul Eggert  <eggert@twinsun.com>
32467
32468         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
32469         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
32470         NetBSD kernels.  Requested by Richard Stallman.
32471
32472 2003-10-27  Paul Eggert  <eggert@twinsun.com>
32473
32474         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
32475         to allocate the returned structure.  Do not allocate a subarray,
32476         as x2nrealloc will do that.
32477         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
32478         instead of xnrealloc.
32479         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
32480
32481 2003-10-27  Bruno Haible  <bruno@clisp.org>
32482
32483         * lib/stdbool_.h: Better support for BeOS.
32484
32485 2003-10-26  Paul Eggert  <eggert@twinsun.com>
32486
32487         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
32488         now uses inline.
32489
32490 2003-10-26  Paul Eggert  <eggert@twinsun.com>
32491
32492         * lib/xalloc.h (xalloc_oversized): New static inline function, for
32493         callers that want to do their own size-overflow checking.  Include
32494         <stdbool.h>, since xalloc_oversized returns bool.
32495         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
32496         to use xalloc_oversized.
32497
32498         Add two functions x2realloc, x2nrealloc, for programs that grow
32499         arrays dynamically by doubling their sizes.
32500         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
32501         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
32502         New functions.
32503
32504         Port to C99 semantics for 'inline' of external functions.
32505         Bug reported by Bruno Haible.
32506         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
32507         with the old contents of xnmalloc.
32508         (xnmalloc, xmalloc): Use it.
32509         (xnrealloc_inline): New static inline function,
32510         with the old contents of xnrealloc.
32511         (xnrealloc, xrealloc): Use it.
32512
32513         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
32514         that.
32515
32516 2003-10-26  Karl Berry  <karl@gnu.org>
32517
32518         * config/srclist.txt (COPYING.DOC): no longer available from
32519         /gd/gnuorg; don't know where the ultimate source is.
32520
32521 2003-10-25  Paul Eggert  <eggert@twinsun.com>
32522
32523         Fix several address-calculation bugs in the hash modules,
32524         plus some minor code cleanup.
32525
32526         * lib/hash.h: Include <stdbool.h>, for bool.
32527         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
32528         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
32529         hash_get_n_entries, hash_get_max_bucket_length,
32530         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
32531         hash_rehash): Use size_t rather than unsigned.
32532         * lib/hash.c (struct hash_table, hash_get_n_buckets,
32533         hash_get_n_buckets_used, hash_get_n_entries,
32534         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
32535         hash_get_entries, hash_do_for_each, hash_string, is_prime,
32536         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
32537         Likewise.
32538         (SIZE_MAX): Define if not defined.
32539         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
32540         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
32541         hash_print):
32542         Use const * when possible.
32543         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
32544         (check_tuning): Fix bug: if tuning parameters were very close to
32545         0 or 1, rounding errors could have caused subscript violations.
32546         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
32547         (hash_initialize): Add 'fail:' label
32548         to free table and return NULL, and use it to simplify code.
32549         Use calloc rather than clearing the storage ourself.
32550         (hash_initialize, hash_rehash): Check for arithmetic overflow in
32551         buffer size calculations.
32552         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
32553         Include <stddef.h>, for size_t.
32554         * lib/hash-pjw.c (hash_pjw): Likewise.
32555         Switch to method described by Bruno Haible.
32556         Include <limits.h>, for CHAR_BIT.
32557         (SIZE_BITS): New macro.
32558
32559 2003-10-23  Paul Eggert  <eggert@twinsun.com>
32560
32561         * m4/getline.m4 (AM_FUNC_GETLINE):
32562         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
32563         hosts.  Problem reported by Derek Robert Price in
32564         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
32565         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
32566         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
32567
32568 2003-10-21  Paul Eggert  <eggert@twinsun.com>
32569
32570         * lib/getndelim2.c (getndelim2): When size calculation overflows,
32571         ceiling the allocation at NMAX bytes rather than silently
32572         discarding input bytes before NMAX is reached.  This makes
32573         a difference only if NMAX exceeds SIZE_MAX / 2.
32574
32575         * lib/obstack.c: Merge from glibc.
32576         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
32577         Add libc_hidden_def (_obstack_newchunk).
32578         (_obstack_free) [! defined _LIBC]: Remove.
32579         [defined _LIBC]: Make a strong alias from obstack_free, rather than
32580         a clone of the function body.
32581         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
32582         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
32583
32584         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
32585         glibc.
32586         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
32587         arg to memcpy.
32588
32589         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
32590         (obstack_ptr_grow_fast, obstack_int_grow_fast):
32591         Don't use lvalue casts, as GCC plans to remove support for them
32592         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
32593         was also present in the non-GCC version, indicating that this
32594         code had always been buggy and had never been widely used.
32595         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
32596         Use the fast variant of each macro, rather than copying the
32597         definiens of the fast variant; that way, we'll be more likely to
32598         catch future bugs in the fast variants.
32599
32600 2003-10-20  Bruno Haible  <bruno@clisp.org>
32601
32602         * modules/wait-process: New file.
32603         * MODULES.html.sh (func_all_modules): Add wait-process.
32604
32605 2003-10-20  Bruno Haible  <bruno@clisp.org>
32606
32607         * m4/wait-process.m4: New file.
32608
32609 2003-10-20  Bruno Haible  <bruno@clisp.org>
32610
32611         * lib/wait-process.h: New file, from GNU gettext.
32612         * lib/wait-process.c: New file, from GNU gettext.
32613
32614 2003-10-19  Jim Meyering  <jim@meyering.net>
32615
32616         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
32617         HPUX 10.20.
32618
32619 2003-10-18  Karl Berry  <karl@gnu.org>
32620
32621         * config/config.guess: update from config.
32622
32623 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32624
32625         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
32626         (getgroups): First arg is int, not size_t.
32627         Don't let 'free' mangle errno.
32628
32629 2003-10-16  Paul Eggert  <eggert@twinsun.com>
32630
32631         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
32632
32633 2003-10-16  Karl Berry  <karl@gnu.org>
32634
32635         * config/config.{guess,sub}: update from config.
32636
32637 2003-10-16  Jim Meyering  <jim@meyering.net>
32638
32639         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
32640         memcpy.
32641
32642 2003-10-15  Paul Eggert  <eggert@twinsun.com>
32643
32644         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
32645         (SIZE_MAX): Remove.
32646         (new_exclude, add_exclude_file): Initial size no longer needs to
32647         be a power of 2.
32648         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
32649         our own address arithmetic overflow checking.
32650
32651         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
32652         (fnmatch): Do not alloca more than 2000 wide characters;
32653         instead, use malloc for large buffers.
32654         Check for address arithmetic overflow, and return -1
32655         with errno set to ENOMEM in that case.
32656         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
32657         (NEW_PATTERN): Do not alloca more than 8000 bytes;
32658         instead, return -1.  Check for address arithmetic overflow.
32659
32660 2003-10-14  Paul Eggert  <eggert@twinsun.com>
32661
32662         Handle invalid suffixes and overflow independently, so that
32663         callers can treat them independently as needed.  Fix some bugs in
32664         suffix handling, e.g., "100k@" was not diagnosed as an invalid
32665         suffix for a human-readable blocksize.  The major caller-visible
32666         change is the addition of a new
32667         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
32668         that both overflow and suffix chars were found.
32669
32670         * lib/human.c (humblock): Don't check separately for invalid suffix
32671         char; that is xstrtoumax's job (now that its bug is fixed).
32672         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
32673         INTMAX_MAX]: New macros.
32674         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
32675         TYPE_MAXIMUM): New macros.
32676         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
32677         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
32678         if overflow occurs, as it's what __strtol does and it's more useful
32679         in practice.
32680         (__xstrtol): If __strtol reports some error other than ERANGE,
32681         reflect it to the caller as LONGINT_INVALID.  If it reports
32682         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
32683         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
32684         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
32685         value.
32686         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
32687         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
32688         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
32689         [defined UINTMAX_MAX]: New macros.
32690
32691 2003-10-14  Bruno Haible  <bruno@clisp.org>
32692
32693         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
32694
32695 2003-10-14  Bruno Haible  <bruno@clisp.org>
32696
32697         * m4/sig_atomic_t: New file, from GNU gettext.
32698         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
32699
32700 2003-10-14  Bruno Haible  <bruno@clisp.org>
32701
32702         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
32703         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
32704         Also use volatile where needed.
32705
32706 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32707
32708         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
32709         Change maintainer from Bruno Haible to 'all'.
32710
32711 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32712
32713         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
32714
32715 2003-10-12  Paul Eggert  <eggert@twinsun.com>
32716
32717         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
32718         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
32719         and define in terms of the other primitives.
32720         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
32721         (SIZE_MAX): Define if not already defined.
32722         (array_size_overflow): New function.
32723         (xalloc_die): Abort instead of exiting if 'error' returns.
32724         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
32725         (xmalloc, xrealloc): Use them.
32726         (xcalloc): Check for address arithmetic overflow.
32727         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
32728         a bit faster than strcpy.
32729
32730 2003-10-10  Simon Josefsson  <jas@extundo.com>
32731
32732         * modules/argp (Depends-on): Add restrict and strcase.
32733
32734 2003-10-10  Simon Josefsson  <jas@extundo.com>
32735
32736         * m4/argp.m4: Add AC_C_INLINE.
32737
32738 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32739
32740         Merge getpass from libc, plus a few fixes.
32741
32742         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
32743         Include <stdbool.h>.
32744         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
32745         __fsetlocking to empty.
32746         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
32747         do include <bits/libc-lock.h>.
32748         Do not include <fcntl.h>; not needed.
32749         [_LIBC]: Include <wchar.h>.
32750         (NOTCANCEL_MODE): New macro.
32751         (flockfile, funlockfile) [_LIBC]: New macros.
32752         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
32753         [!_LIBC]: New macros.
32754         (call_fclose): New function.
32755         (getpass): Use it.  Save tty stream separately; this simplifies the
32756         code and makes it more reliable if stdin happens to equal stdout.
32757         Invoke __fsetlocking on tty.
32758         Handle thread cancellation if needed.
32759         Namespace cleanup (use __tcgetattr, __getline).
32760         Use bool for Booleans.
32761         [USE_IN_LIBIO]: Handle wide streams.
32762         [!_LIBC]: Unconditionally do the fseek, since we don't know what
32763         stream might go where.
32764
32765         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
32766         doesn't have to include <stdio.h> before us.
32767         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
32768         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
32769         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
32770         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
32771         if not declared, so that we can use getpass.c code from libc without
32772         rewriting it.
32773         (flockfile, ftrylockfile, funlockfile): New macros.
32774
32775 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32776
32777         * modules/getpass: Depend on stdbool.
32778
32779 2003-10-08  Paul Eggert  <eggert@twinsun.com>
32780
32781         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
32782
32783 2003-10-07  Karl Berry  <karl@gnu.org>
32784
32785         * config/config.{guess,sub}: update from config.
32786
32787 2003-10-06  Jim Meyering  <jim@meyering.net>
32788             Bruno Haible  <bruno@clisp.org>
32789
32790         This lets translators provide better translations for the
32791         "Written by ..." part of --version output.
32792         * lib/version-etc.h: Include stdarg.h.
32793         (version_etc_copyright): Declare as readonly.
32794         (version_etc): Make this function variadic with a NULL-terminated list
32795         of author name strings.
32796         (version_etc_va): New declaration.
32797         * lib/version-etc.c: Include stdarg.h, stdlib.h.
32798         (version_etc_copyright): Declare as readonly.
32799         (version_etc_va): New function. Provide a different translatable string
32800         for each possible number of authors < 10. Abbreviate when there are 10
32801         authors or more.
32802         (version_etc): Make this function variadic. Call version_etc_va.
32803         Suggestion from Gary V. Vaughan.
32804
32805         * lib/long-options.h (parse_long_options): Change prototype: the
32806         authors string is moved to the end and becomes variadic.
32807         * lib/long-options.c: Include stdarg.h.
32808         (parse_long_options): Make this function variadic, too.
32809         Call version_etc_va, not version_etc.
32810
32811 2003-10-06  Bruno Haible  <bruno@clisp.org>
32812
32813         * modules/version-etc-2: Remove file.
32814         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
32815
32816 2003-10-06  Bruno Haible  <bruno@clisp.org>
32817
32818         * modules/fatal-signal: New file.
32819         * MODULES.html.sh (func_all_modules): Add fatal-signal.
32820
32821 2003-10-06  Bruno Haible  <bruno@clisp.org>
32822
32823         * m4/fatal-signal.m4: New file.
32824         * m4/signalblocking.m4: New file, from GNU gettext.
32825
32826 2003-10-06  Bruno Haible  <bruno@clisp.org>
32827
32828         * lib/version-etc-2.h: Remove file.
32829         * lib/version-etc-2.c: Remove file.
32830
32831 2003-10-06  Bruno Haible  <bruno@clisp.org>
32832
32833         * lib/fatal-signal.h: New file, from GNU gettext.
32834         * lib/fatal-signal.c: New file, from GNU gettext.
32835
32836 2003-10-05  Paul Eggert  <eggert@twinsun.com>
32837
32838         * README: Rework advice for preventing empty .o files.
32839         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
32840         not <sys/types.h>.
32841
32842 2003-10-04  Karl Berry  <karl@gnu.org>
32843
32844         * lib/argp*: update from libc.
32845
32846 2003-10-04  Karl Berry  <karl@gnu.org>
32847
32848         * config/config.{guess,sub}: update from config.
32849
32850 2003-10-02  Bruno Haible  <bruno@clisp.org>
32851
32852         * modules/lchown (Include): Add lchown.h.
32853         * modules/time_r (Include): Use "..." syntax.
32854         * modules/xgetdomainname (Include): Add xgetdomainname.h.
32855
32856 2003-10-01  Simon Josefsson  <jas@extundo.com>
32857
32858         * MODULES.html.sh (func_all_modules): Move gethostname from section
32859         'based on' to section 'lacking' POSIX:2001.
32860
32861 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
32862
32863         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
32864         to output mode on the same stream.
32865
32866 2003-09-29  Paul Eggert  <eggert@twinsun.com>
32867
32868         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
32869         Fix arg typo in previous patch.
32870
32871 2003-09-28  Jim Meyering  <jim@meyering.net>
32872
32873         * lib/error.c: Correct cpp indentation.
32874
32875 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32876
32877         * modules/free: New file.
32878
32879 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32880
32881         * m4/free.m4: New file.
32882
32883 2003-09-27  Paul Eggert  <eggert@twinsun.com>
32884
32885         * lib/minmax.h (MIN, MAX)
32886         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
32887         Omit the special code that used __typeof__, since we worry that
32888         it could be more trouble than it's worth.  See:
32889         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
32890         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
32891
32892         * lib/free.c: New file.
32893
32894 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
32895
32896         Trivial fixes to Makefile.am parts of module listings.
32897         * modules/strstr: Append strstr.h to lib_SOURCES.
32898         * modules/strcase: Likewise, for strcase.h.
32899
32900 2003-09-27  Karl Berry  <karl@gnu.org>
32901
32902         * config/mkinstalldirs: update from automake.
32903
32904 2003-09-26  Paul Eggert  <eggert@twinsun.com>
32905
32906         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
32907         (error_tail): Do not loop, reallocating temporary buffer, since
32908         the output cannot contain more wide characters than the input
32909         contains bytes, the size must be big enough already.  This avoids
32910         one potential size overflow calculation.  Check for size overflow
32911         when calculating temporary buffer size.  Free temporary buffer
32912         when done, if it was allocated with malloc; this plugs a memory
32913         leak.  Remove casts from void * to pointers, that are no longer
32914         needed now that we're assuming C89 or better.
32915
32916         Merge error changes from glibc.
32917
32918         * lib/error.c, error.h: Update copyright notice header to match glibc.
32919         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
32920         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
32921         Disable cancellation while printing error.
32922         * lib/error.h: Prepend __ to parameter names.
32923
32924 2003-09-26  Jim Meyering  <jim@meyering.net>
32925
32926         * lib/error.c (error_tail): Move some declarations
32927         into inner scope where the local variables are used.
32928
32929 2003-09-26  Bruno Haible  <bruno@clisp.org>
32930
32931         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
32932         stpncpy().
32933         Don't define stpncpy through config.h; it's now done through stpncpy.h.
32934
32935 2003-09-26  Bruno Haible  <bruno@clisp.org>
32936
32937         * lib/stpncpy.h (gnu_stpncpy): New declaration.
32938         (stpncpy): Define as alias for gnu_stpncpy.
32939         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
32940
32941 2003-09-25  Simon Josefsson  <jas@extundo.com>
32942
32943         * lib/xgetdomainname.h: New file.
32944         * lib/xgetdomainname.c: New file.
32945
32946 2003-09-25  Simon Josefsson  <jas@extundo.com>
32947             Bruno Haible  <bruno@clisp.org>
32948
32949         * modules/getdomainname: New file.
32950         * modules/xgetdomainname: New file.
32951         * MODULES.html.sh (func_all_modules): Add getdomainname,
32952         xgetdomainname.
32953
32954 2003-09-25  Simon Josefsson  <jas@extundo.com>
32955             Bruno Haible  <bruno@clisp.org>
32956
32957         * m4/getdomainname.m4: New file.
32958
32959 2003-09-25  Simon Josefsson  <jas@extundo.com>
32960             Bruno Haible  <bruno@clisp.org>
32961
32962         * lib/getdomainname.h: New file.
32963         * lib/getdomainname.c: New file.
32964
32965 2003-09-25  Karl Berry  <karl@gnu.org>
32966
32967         * lib/argp-fmtstream.c, argp-help.c: update from libc.
32968
32969 2003-09-25  Karl Berry  <karl@gnu.org>
32970
32971         * config/install-sh: update from automake.
32972
32973 2003-09-25  Bruno Haible  <bruno@clisp.org>
32974
32975         * modules/version-etc-2: New file, from modules/version-etc with
32976         modifications.
32977         * MODULES.html.sh (func_all_modules): Add version-etc-2.
32978
32979 2003-09-25  Bruno Haible  <bruno@clisp.org>
32980
32981         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
32982         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
32983
32984 2003-09-24  Simon Josefsson  <jas@extundo.com>
32985
32986         * modules/xgethostname: Add xgethostname.h.
32987
32988 2003-09-24  Paul Eggert  <eggert@twinsun.com>
32989
32990         * lib/linebuffer.c (freebuffer): Don't free the argument, just
32991         the buffer associated with the argument.  Bug reported by
32992         Simon Josefsson.
32993
32994 2003-09-24  Paul Eggert  <eggert@twinsun.com>
32995
32996         * README: Document assumptions that 'int' is at least 32 bits
32997         wide, that integer arithmetic is 2's complement without overflow,
32998         that there are no holes in integer values, that adding sizes of
32999         two nonoverlapping objects can't overflow, and that all-bits-zero
33000         yields scalar zero.  Fix spelling and capitalization typos.
33001
33002 2003-09-19  Karl Berry  <karl@gnu.org>
33003
33004         * lib/argp.h: update from libc.
33005
33006 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33007
33008         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
33009         to avoid spurious warnings like "AC_RUN_IFELSE was called before
33010         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
33011
33012 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33013
33014         * gnulib-tool: Use "test -h", not "test -L", for portability
33015         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
33016         (tags_regexp): Remove, since \| doesn't conform to POSIX.
33017         (sed_extract_prog): Issue s commands one-by-one, rather than
33018         using \| in one s command.
33019
33020 2003-09-16  Paul Eggert  <eggert@twinsun.com>
33021
33022         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
33023         input error, instead of returning NULL the next time we are called
33024         (and therefore losing track of errno).
33025
33026 2003-09-16  Bruno Haible  <bruno@clisp.org>
33027
33028         * gnulib-tool (func_create_testdir): Warn about duplicated
33029         dependencies.
33030
33031 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33032
33033         * modules/argmatch, modules/fatal, modules/obstack,
33034         modules/xalloc, modules/xgethostname: Sort dependencies by
33035         importance, not alphabetically.
33036
33037 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33038
33039         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
33040         fails, so that the caller gets the proper errno.
33041
33042         * lib/readutmp.c (read_utmp): Likewise.
33043         Check for fstat error.  Close stream and free storage
33044         when failing.
33045
33046 2003-09-14  Karl Berry  <karl@gnu.org>
33047
33048         * config/srclist.txt (strdup.c): disable for c89 changes.
33049
33050 2003-09-14  Jim Meyering  <jim@meyering.net>
33051
33052         * lib/getloadavg.c: Correct cpp indentation.
33053         * lib/strdup.c: Likewise.
33054         * lib/vasnprintf.c: Likewise.
33055
33056 2003-09-14  Bruno Haible  <bruno@clisp.org>
33057
33058         * modules/fwriteerror: New file.
33059         * MODULES.html.sh (func_all_modules): Add fwriteerror.
33060
33061 2003-09-14  Bruno Haible  <bruno@clisp.org>
33062
33063         * lib/fwriteerror.h: New file.
33064         * lib/fwriteerror.c: New file.
33065
33066 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33067
33068         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
33069         modules/xgethostname, modules/xalloc: Depend on exit.
33070
33071 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33072
33073         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
33074
33075         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
33076         and AC_MINIX, too, so that their extensions are available.
33077
33078         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
33079         This macro has been superseded by gl_BACKUPFILE.
33080
33081         More patches to assume C89 or better.
33082
33083         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
33084
33085         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
33086         unconditionally.
33087         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
33088         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
33089         Include <string.h>, <stdlib.h> unconditionally.
33090         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
33091         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
33092         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
33093         headers or for string.h.
33094         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
33095         or strtoul.
33096
33097         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
33098         headers.
33099         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
33100         * m4/userspec.m4 (gl_USERSPEC): Likewise.
33101         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
33102         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
33103         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
33104         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
33105         memcpy, memset.
33106         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
33107         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
33108         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
33109         strtol.
33110         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
33111         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
33112         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
33113         strtoul.
33114
33115 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33116
33117         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
33118         * lib/obstack.c [!defined _LIBC]: Likewise.
33119         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
33120         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
33121         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
33122
33123         More changes to assume C89 or better.
33124
33125         * lib/error.c (error_tail): Assume vprintf.
33126
33127         * lib/argmatch.c (getenv): Remove decl.
33128         * lib/progreloc.c (get_full_program_name): Define via prototype.
33129         * lib/setenv.c (clearenv): Likewise.
33130         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
33131         needed.
33132         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
33133         (malloc, memcpy): Remove decls.
33134         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
33135         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
33136         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
33137         (memcpy): Remove macro.
33138         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
33139         (__P): Remove.  All uses removed.
33140         (PTR): Remove.  All uses changed to void *.
33141         (CHAR_BIT, NULL): Remove.
33142         (spaces, zeros, memset_space, memset_zero)
33143         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
33144         Remove.
33145         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
33146         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
33147         Define with prototype.
33148         Remove now-unnecessary prototype decl.
33149         (extra_args_spec): Assume ANSI C.  All uses changed.
33150         (extra_args_spec_iso): Remove.
33151         (my_strftime, emacs_strftimeu): Define via prototype.
33152         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
33153         unconditionally.
33154         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
33155         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
33156         (strtoul, strtol): Remove decls.
33157         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
33158         LONG_MAX): Remove.
33159         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
33160         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
33161         (LOCALE_PARAM_PROTO): New macro.
33162         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
33163         (INTERNAL (strtol), strtol): Define with a prototype.
33164         (PARAMS): Remove.  All uses removed.
33165         * lib/tempname.c: Include <string.h> unconditionally.
33166         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
33167         * lib/xgethostname.c (main): Define with a prototype.
33168         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
33169         Include <stdlib.h> unconditionally.
33170         (calloc, malloc, realloc, free): Remove decls.
33171         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
33172         Include <stdlib.h> unconditionally.  Sort include file names.
33173         (strtod): Remove.
33174         (xstrtod): Define with a prototype.
33175         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
33176         (strtol, strtoul): Remove decls.
33177
33178 2003-09-11  Paul Eggert  <eggert@twinsun.com>
33179
33180         More patches to assume C89 or better.
33181         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
33182         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
33183         string.h, memchr, STDC_HEADERS.
33184
33185 2003-09-11  Paul Eggert  <eggert@twinsun.com>
33186
33187         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
33188         Include <stdlib.h>, <string.h> unconditionally.
33189         Remove now-unnecessary cast to char *.
33190         * lib/strnlen.c: Include <string.h> unconditionally.
33191         * lib/yesno.c (yesno): Define with a prototype.
33192
33193 2003-09-11  Bruno Haible  <bruno@clisp.org>
33194
33195         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
33196
33197 2003-09-10  Jim Meyering  <jim@meyering.net>
33198
33199         * lib/error.c: Correct indentation of cpp directives.
33200
33201 2003-09-10  Bruno Haible  <bruno@clisp.org>
33202
33203         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
33204         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
33205         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
33206         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
33207         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
33208         <stdlib.h> and <string.h> checks.
33209         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
33210         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
33211
33212 2003-09-10  Bruno Haible  <bruno@clisp.org>
33213
33214         * lib/strcspn.c: Include <string.h> unconditionally.
33215         * lib/strpbrk.c: Include <string.h> unconditionally.
33216         * lib/strstr.c: Include <string.h> unconditionally.
33217         * lib/unicodeio.c: Include <string.h> unconditionally.
33218         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
33219         * lib/unsetenv.c: Likewise.
33220         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
33221         * lib/yesno.c: Include <stdlib.h> unconditionally.
33222         (rpmatch): Add prototype.
33223
33224 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33225
33226         More patches to assume C89 or better.
33227         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
33228         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
33229         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
33230         or for string.h.
33231         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
33232         stdlib.h.
33233         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
33234         C headers.
33235         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
33236         string.h.
33237         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
33238         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
33239         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
33240         or for string.h.
33241         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
33242         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
33243         C headers.
33244         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
33245         memcpy.
33246         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
33247         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
33248         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
33249         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
33250         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
33251         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
33252         string.h, free.
33253         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
33254         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
33255         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
33256         C headers, or for string.h.
33257         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
33258         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
33259         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
33260         headers, memory.h, stdlib.h, string.h, strings.h.
33261         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
33262         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
33263         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
33264         strchr.
33265         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
33266         headers, memory.h, string.h.
33267         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
33268         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
33269         free.
33270         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
33271         headers.
33272         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
33273         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
33274         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
33275         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
33276         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
33277
33278 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33279
33280         More K&R removal.
33281
33282         * lib/acosl.c (main): Use a prototype.
33283         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
33284         tanl.c: Likewise.
33285
33286         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
33287
33288         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
33289         (getopt, etopt_long, getopt_long_only, _getopt_internal)
33290         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
33291         with a prototype.
33292         * lib/getopt.c (const): Remove macro.
33293         Include <string.h> unconditionally.
33294         (my_index): Remove; all uses changed to strchr.
33295         (strlen): Remove decl.
33296         (exchange): Remove forward decl; no longer needed.
33297         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
33298         Define with prototype.
33299         * lib/getopt1.c (const): Remove macro.
33300         (getopt_long, getopt_long_only, main): Define with prototype.
33301
33302         * lib/getugroups.c: Include <string.h> unconditionally.
33303
33304         * lib/getusershell.c: Include <stdlib.h> unconditionally.
33305         (getusershell, setusershell, endusershell, readname, main):
33306         Define with prototypes.
33307
33308         * lib/group-member.c: Include group-member.h first.
33309         Include <stdlib.h> unconditionally.
33310
33311         * lib/hard-locale.c: Include hard-locale.h first.
33312         Include <stdlib.h>, <string.h> unconditionally.
33313
33314         * lib/hash.c (free, malloc): Remove decls.
33315         Include <stdlib.h> unconditionally.
33316
33317         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
33318         (getenv): Do not declare.
33319
33320         * lib/idcache.c: Include <string.h> unconditionally.
33321
33322         * lib/long-options.c: Include long-options.h first, to test interface.
33323         Include <stdlib.h> unconditionally.
33324
33325         * lib/makepath.c: Include makepath.h first, to test interface.
33326         Include <stdlib.h> and <string.h> unconditionally.
33327
33328         * lib/linebuffer.c: Include <stdlib.h>.
33329         (free): Remove decl.
33330
33331         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
33332         stddef.h. rpl_malloc returns void *, not char *.
33333         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
33334         prototype.
33335
33336         * lib/md5.h: Include <limits.h> unconditionally.
33337         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
33338         (__P): Remove; all uses removed.
33339         * lib/md5.c: Include "md5.h" first.
33340         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
33341         md5_buffer, md5_process_bytes, md5_process_block):
33342         Define with prototypes.
33343         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
33344         * lib/sha.c: Include "sha.h" first.
33345         Include <stdlib.h>, <string.h> unconditionally.
33346
33347         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
33348         * lib/memcmp.c (__ptr_t): Likewise.
33349         * lib/memrchr.c (__ptr_t): Likewise.
33350         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
33351         Include <string.h> unconditionally.
33352         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
33353         * lib/memchr.c: Include <stdlib.h> unconditionally.
33354         * lib/memchr.c (LONG_MAX): Remove.
33355         * lib/memrchr.c (LONG_MAX): Likewise.
33356         * lib/memchr.c (__memchr): Define via a prototype.
33357         * lib/memrchr.c (__memrchr): Likewise.
33358         * lib/memcmp.c (__P): Remove, and remove all uses.
33359         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
33360         Remove forward decls; no longer needed.
33361         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
33362         Use types required by C89 in prototype.
33363
33364         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
33365         * lib/savedir.c: Likewise.
33366         * lib/mkdir.c (free): Remove decl.
33367         * lib/rmdir.c (rmdir): Define with a prototype.
33368         * lib/savedir.c: Include savedir.h first, to test interface.
33369
33370         * lib/mktime.c (STDC_HEADERS): Remove.
33371         Include <stdlib.h>, <string.h> unconditionally.
33372
33373         * lib/modechange.c: Include <stdlib.h> unconditionally.
33374         (malloc): Remove decl.
33375
33376         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
33377         (free): Remove decl.
33378
33379         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
33380         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
33381         (This type really should be intptr_t, but that's a C99ism.)
33382         (_obstack_memcpy): Remove: all uses changed to memcpy.
33383         Include <string.h> unconditionally.
33384         (struct obstack): Assume __STDC__ for types of members
33385         chunkfun, freefun, extra_arg.
33386         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
33387         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
33388         obstack_begin, obstack_specify_allocation,
33389         obstack_specify_allocation_with_arg, obstack_chunkfun,
33390         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
33391         Remove unprototyped decls and the macros that use them.
33392         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
33393         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
33394         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
33395         (defined __STDC__ && __STDC__)]:
33396         Remove nonprototyped code.
33397         Include <stdlib.h> unconditionally.
33398         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
33399         _obstack_allocated_p, _obstack_free, obstack_free,
33400         _obstack_memory_used, print_and_abort):
33401         Define using prototypes.
33402         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
33403         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
33404         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
33405         obstack_next_free, obstack_object_size, obstack_room) [0]:
33406         Remove unused, unprototyped code.
33407
33408         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
33409
33410         * lib/physmem.c (physmem_total, physmem_available, main): Define
33411         with prototypes.
33412
33413         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
33414         (main): Define with a prototype.
33415
33416         * lib/posixver.c (getenv): Remove decl.
33417
33418         * lib/putenv.c (malloc): Returns void *, not char *.
33419         Include <string.h> unconditionally.
33420         (strchr, memcpy, NULL): Do not define.
33421
33422         * lib/readtokens.c: Include readtokens.h first, to test interface.
33423         Include <stdlib.h>, <string.h> unconditionally.
33424         (init_tokenbuffer): Define with a prototype.
33425
33426         * lib/regex.c (PARAMS): Remove.  All uses removed.
33427         All uses of _RE_ARGS removed, too.
33428         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
33429         unconditionally.
33430         (bzero): Assume memset exists.
33431         (memcmp, memcpy, NULL): Remove.
33432         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
33433         char, or assignments to local vars of type signed char.
33434         (init_syntax_once, PREFIX(extract_number_and_incr),
33435         PREFIX(print_partial_compiled_pattern),
33436         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
33437         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
33438         PREFIX(regex_grow_registers), PREFIX(regex_compile),
33439         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
33440         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
33441         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
33442         wcs_compile_range, byte_compile_range, truncate_wchar,
33443         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
33444         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
33445         count_mbs_length, wcs_re_match_2_internal,
33446         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
33447         PREFIX(alt_match_null_string_p),
33448         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
33449         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
33450         regfree, PREFIX(extract_number)): Define with prototype.  Remove
33451         now-unnecessary declaration, if any.
33452         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
33453         regcomp, regexec):
33454         Remove now-unnecessary casts among pointer types.
33455         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
33456
33457         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
33458         (free): Remove decl.
33459
33460         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
33461
33462         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
33463         (free): Remove decl.
33464
33465         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
33466         * lib/xgetcwd.c: Likewise.
33467
33468         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
33469         (free): Remove decl.
33470
33471         * lib/strchrnul.c (strchrnul): Define with a prototype.
33472         Fix bug: c_in was not converted to char before searching.
33473
33474         The following changes are not K&R related:
33475
33476         * lib/group-member.h: Include <sys/types.h>, so that this file is
33477         self-contained.
33478         * lib/makepath.h: Likewise.
33479
33480         * lib/getusershell.c (readname, default_index, line_size, readname):
33481         Use size_t, not int, for sizes.
33482         (readname): If the size overflows, report an error instead of
33483         looping forever.
33484
33485 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33486
33487         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
33488         libc.
33489
33490 2003-09-09  Paul Eggert  <eggert@twinsun.com>
33491
33492         * README: New section: portability guidelines.
33493
33494 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
33495
33496         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
33497         C89 spec.
33498
33499 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
33500
33501         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
33502
33503 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33504
33505         Assume C89 or better; remove K&R cruft.
33506         A few of these changes were first proposed by Derek Robert Price
33507         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
33508
33509         * lib/addext.c: Include <string.h> unconditionally.
33510         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
33511         Don't declare getenv or malloc.
33512
33513         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
33514         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
33515         (NULL): Remove.
33516         (find_stack_direction, alloca): Use prototypes.
33517
33518         * lib/atexit.c (atexit): Define using a prototype.
33519
33520         * lib/basename.c, dirname.c, stripslash.c:
33521         Include <string.h> unconditionally.
33522
33523         * lib/bcopy.c: Include <stddef.h>.
33524         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
33525
33526         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
33527
33528         * lib/error.h (error, error_at_line, error_print_progname)
33529         [! (defined (__STDC__) && __STDC__)]: Remove decls.
33530         * lib/error.c: Include error.h first, to check interface.
33531         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33532         (VA_START): Remove; all uses changeed to va_start.
33533         (exit, strerror): Remove decls.
33534         (error_print_progname): Prototype uncondionally.
33535         Don't include <errno.h>; no longer needed.
33536         (private_strerror): Remove.
33537         (error_tail): Always define.
33538         (error, error_at_line): Assume C89 or better; always use prototypes.
33539         * lib/fatal.c: Include "fatal.h" first, to test interface.
33540         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
33541         (VA_START): Remove; all uses changed to va_start.
33542         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
33543         this case.
33544         (exit): Remove decl.
33545         (fatal): Prototype unconditionally.  Assume va_start works.
33546         Abort at end, to pacify gcc.
33547
33548         * lib/euidaccess.c (main): Define with a prototype.
33549
33550         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
33551
33552         * lib/exitfail.c: Include <stdlib.h> unconditionally.
33553
33554         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
33555         prototypes.
33556         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
33557         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
33558         (getenv): Remove decl.
33559         (fnmatch): Define using a prototype.
33560         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
33561         (FCT): Define using a prototype.
33562
33563         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
33564
33565         * lib/gethostname.c: Include <stddef.h>.
33566         (gethostname): Define with prototype.  Length is size_t, not int.
33567
33568 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33569
33570         Assume C89 or better; remove K&R cruft.
33571         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
33572         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
33573         string.h, getenv, malloc.
33574         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
33575         headers.
33576         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
33577         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
33578         do not check for strerror.
33579         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
33580         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
33581         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
33582         do not check for doprnt or vprintf.
33583         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
33584         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
33585
33586 2003-09-08  Paul Eggert  <eggert@twinsun.com>
33587
33588         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
33589         getversion.c should have been removed then, but was accidentally
33590         preserved.
33591
33592         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
33593         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
33594
33595 2003-09-08  Karl Berry  <karl@gnu.org>
33596
33597         * config/config.sub, config.guess, srclistvars.sh: update from savannah
33598                 config, forget about prep.
33599
33600         * config/depcomp, missing: update from automake.
33601
33602 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33603
33604         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
33605         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33606
33607 2003-09-07  Paul Eggert  <eggert@twinsun.com>
33608
33609         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
33610         copy_tm_result.  Bug reported by Simon Josefsson in
33611         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
33612
33613 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33614
33615         * m4/time_r.m4: New file.
33616         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
33617         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
33618         is. Check for timegm declaration.
33619         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
33620         Do not check for gmtime_r.
33621         Replace mktime if __mktime_internal does not exist and if mktime
33622         hasn't been replaced already.
33623
33624 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33625
33626         * lib/time_r.c, lib/time_r.h: New files.
33627
33628         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
33629         __localtime_r.
33630         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
33631         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
33632
33633         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
33634         __gmtime_r.
33635         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
33636         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
33637         Include <time_r.h>.
33638
33639         * lib/timegm.c: Switch to glibc implementation, with the following
33640         changes:
33641         [defined HAVE_CONFIG_H]: Include <config.h>.
33642         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
33643         (__mktime_internal) [!defined _LIBC]: New decl.
33644         (__gmtime_r) [!defined _LIBC]: New macro and function.
33645         (timegm): Use a prototype, since gnulib assumes C89.
33646         Do not bother declaring tmp to be const, as it's not really usefu.
33647         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
33648         (timegm): Declare only if HAVE_DECL_TIMEGM.
33649
33650 2003-09-06  Paul Eggert  <eggert@twinsun.com>
33651
33652         * MODULES.html.sh (func_all_modules): Add time_r.
33653         * modules/time_r: New file.
33654         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
33655         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
33656
33657 2003-09-03  Paul Eggert  <eggert@twinsun.com>
33658
33659         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
33660         Bug reported by Lute Kamstra in
33661         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
33662
33663         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
33664         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
33665         course with correspondingly smaller numbers for tomorrow and
33666         yesterday.  From Tadayoshi Funaba.  Originally installed into
33667         sh-utils on 1999-08-07, but the patch got lost (I guess during the
33668         coreutils merge?).
33669
33670 2003-08-31  Simon Josefsson  <jas@extundo.com>
33671
33672         * modules/timegm: New file.
33673         * MODULES.html.sh (func_all_modules): Add timegm.
33674
33675 2003-08-31  Simon Josefsson  <jas@extundo.com>
33676
33677         * m4/timegm.m4: New file.
33678
33679 2003-08-31  Simon Josefsson  <jas@extundo.com>
33680
33681         * lib/timegm.h: New file.
33682         * lib/timegm.c: New file.  Based on
33683         wget-1.8.2/src/http.c:mktime_from_utc.
33684
33685 2003-08-31  Karl Berry  <karl@gnu.org>
33686
33687         * lib/argp.h: update from libc.
33688
33689 2003-08-28  Bruno Haible  <bruno@clisp.org>
33690
33691         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
33692         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
33693         followed by '#define fnmatch fnmatch_posix' gives an error.
33694
33695 2003-08-28  Bruno Haible  <bruno@clisp.org>
33696
33697         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
33698         warning on QNX, which defines O_BINARY to 000000.
33699
33700 2003-08-27  Jim Meyering  <jim@meyering.net>
33701
33702         * m4/mkstemp.m4: Require that the system mkstemp be able to create
33703         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
33704         would fail after 32.  Reported by Danny Levinson.  Details here:
33705         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
33706
33707 2003-08-24  Bruno Haible  <bruno@clisp.org>
33708
33709         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
33710         MSVC7 <stdio.h> is included later.
33711
33712 2003-08-22  Simon Josefsson  <jas@extundo.com>
33713
33714         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
33715
33716 2003-08-20  Karl Berry  <karl@gnu.org>
33717
33718         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
33719
33720 2003-08-20  Bruno Haible  <bruno@clisp.org>
33721
33722         * modules/progname: New file.
33723         * MODULES.html.sh (func_all_modules): Add progname.
33724
33725 2003-08-20  Bruno Haible  <bruno@clisp.org>
33726
33727         * lib/progname.h: New file, from GNU gettext.
33728         * lib/progname.c: New file, from GNU gettext.
33729         * lib/progreloc.c: New file, from GNU gettext.
33730
33731 2003-08-19  Jim Meyering  <jim@meyering.net>
33732
33733         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
33734         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
33735
33736 2003-08-19  Bruno Haible  <bruno@clisp.org>
33737
33738         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
33739         more.
33740
33741 2003-08-19  Bruno Haible  <bruno@clisp.org>
33742
33743         * lib/xstrdup.c: Assume <string.h> exists.
33744
33745 2003-08-18  Paul Eggert  <eggert@twinsun.com>
33746
33747         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
33748         in makefile rules.
33749
33750 2003-08-18  Jim Meyering  <jim@meyering.net>
33751
33752         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
33753         * m4/lib-ld.m4: Likewise.
33754
33755 2003-08-18  Jim Meyering  <jim@meyering.net>
33756
33757         * lib/setenv.h: Indent nested cpp directive.
33758         * lib/vasnprintf.c: Remove trailing blanks.
33759
33760 2003-08-17  Simon Josefsson  <jas@extundo.com>
33761
33762         * modules/xstrndup: New file.
33763         * MODULES.html.sh (func_all_modules): Add xstrndup.
33764
33765 2003-08-17  Simon Josefsson  <jas@extundo.com>
33766
33767         * modules/argp: Fix autoconf macro name. Add more dependencies.
33768
33769 2003-08-17  Simon Josefsson  <jas@extundo.com>
33770
33771         * m4/xstrndup.m4: New file.
33772
33773 2003-08-17  Simon Josefsson  <jas@extundo.com>
33774
33775         * m4/argp.m4: New file.
33776
33777 2003-08-17  Simon Josefsson  <jas@extundo.com>
33778             Bruno Haible  <bruno@clisp.org>
33779
33780         * lib/xstrndup.h: New file.
33781         * lib/xstrndup.c: New file.
33782
33783 2003-08-17  Bruno Haible  <bruno@clisp.org>
33784
33785         * modules/strndup (Files, Include): Add lib/strndup.h.
33786
33787 2003-08-17  Bruno Haible  <bruno@clisp.org>
33788
33789         * modules/euidaccess (Files): Add lib/euidaccess.h.
33790
33791 2003-08-17  Bruno Haible  <bruno@clisp.org>
33792
33793         * lib/strndup.h: New file.
33794
33795 2003-08-17  Bruno Haible  <bruno@clisp.org>
33796
33797         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
33798         like AC_GNU_SOURCE.
33799         * modules/extensions (configure.ac): Comment out the invocation of
33800         gl_USE_SYSTEM_EXTENSIONS.
33801
33802 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33803
33804         Merges from coreutils, etc.
33805         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
33806         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
33807         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
33808         fixing a typo.
33809         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
33810         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
33811
33812 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33813
33814         Document merge from coreutils.
33815         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
33816         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
33817         * modules/utime: Add m4/utimes-null.m4.
33818
33819 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33820
33821         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
33822         space, undoing this 2003-08-12 change:
33823         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
33824
33825 2003-08-16  Paul Eggert  <eggert@twinsun.com>
33826
33827         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
33828         strtoul.c from libc, undoing this 2003-08-12 change:
33829         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
33830
33831 2003-08-16  Jim Meyering  <jim@meyering.net>
33832
33833         Merges from coreutils.
33834         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
33835         prefix.  Adjust cache variables similarly.  Create 500 rather than
33836         just 300 files, to exercise bug on Darwin6.5, too.
33837         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
33838         $missing_dir.
33839         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
33840         AM_SYS_POSIX_TERMIOS.
33841         Reported by mkc@mathdogs.com.
33842         Also change use of $am_cv_sys_posix_termios
33843         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
33844         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
33845         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
33846         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
33847         in /proc/mounts until it finds one with matching device number.  This
33848         is unnecessary when the FILE argument *is* a mount point.  No stat call
33849         is necessary in that case.  So, disable the statvfs-testing code on
33850         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
33851         as RedHat bug# 84846.
33852         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
33853         to 1MB, so as not to render systems with no stack size limit (e.g.,
33854         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
33855         Include <unistd.h>.  On some systems,
33856         it is required for the definition of _SC_PAGESIZE.
33857
33858 2003-08-16  Jim Meyering  <jim@meyering.net>
33859
33860         Merge from coreutils.
33861         * lib/xstrtoimax.c: #else #if -> #elif.
33862         * lib/xstrtoumax.c: Likewise.
33863
33864 2003-08-16  Jim Meyering  <jim@meyering.net>
33865
33866         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
33867         * m4/utimes.m4: Removed.
33868         * m4/utimes-null.m4: Renamed from utimes.m4.
33869
33870         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
33871         to 1MB, so as not to render systems with no stack size limit (e.g.,
33872         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
33873         Include <unistd.h>.  On some systems,
33874         it is required for the definition of _SC_PAGESIZE.
33875
33876 2003-08-16  Jim Meyering  <jim@meyering.net>
33877         and Paul Eggert  <eggert@cs.ucla.edu>
33878
33879         Merges from coreutils, etc.
33880
33881         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
33882         using the latest version from cvs.  This avoids problems with #line
33883         directives using a vendor (Sun) compiler.
33884         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
33885         Don't set GETGROUPS_LIB here; now it's
33886         done via getgroups.m4's wrapper function.
33887         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
33888         rather than just in sh-util/configure.in, so that the
33889         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
33890         same.
33891         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
33892         AC_FUNC_GETLOADAVG where to find getloadavg.c.
33893         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
33894         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
33895         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
33896         Remove code that is now done by the newly-required macros.
33897         Append $(EXEEXT) to DF_PROG.
33898         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
33899         Do not invoke or require the following here,
33900         since prereq.m4 or some gnulib .m4 now does this for us:
33901         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
33902         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
33903         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
33904         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
33905         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
33906         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
33907         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
33908         AC_FUNC_OBSTACK.
33909         Do not replace the following functions, as this is now the job
33910         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
33911         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
33912         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
33913         atexit getpass, strdup, getpagesize.
33914         Replace 'raise'.
33915         Do not check for the following functions, as this is now the job
33916         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
33917         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
33918         setregid.
33919         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
33920         Check for sys/sysctl.h.
33921         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
33922         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
33923         of checking for ssize_t ourselves.
33924
33925         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
33926         Require every macro that gnulib/modules/* suggests for us.
33927         (jm_PREREQ_ADDEXT): New macro.
33928         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
33929         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
33930
33931         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
33932         (gl_PHYSMEM): Use it.
33933         Also check for `table' function.
33934         Check for new headers and functions.
33935         Add check for sys/sysmp.h.
33936         With suggestions from Kaveh Ghazi.
33937         Ignore headers that are present but cannot be compiled.  This
33938         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
33939         C 5.4.
33940
33941 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33942
33943         Document merge from coreutils.
33944         * modules/userspec: Depend on posixver.
33945         * modules/strftime: Depend on tzset.
33946
33947 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33948
33949         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
33950         rather than tab, after '#' in shell-script copyright notices.
33951         Suggested by Bruno Haible.
33952
33953 2003-08-15  Paul Eggert  <eggert@twinsun.com>
33954
33955         * config/srclist-update: Use three spaces, rather than tab, after '#'
33956         in shell-script copyright notices.  Suggested by Bruno Haible.
33957         Remove unnecessary parenthesization in regular expression.
33958
33959 2003-08-15  Jim Meyering  <jim@meyering.net>
33960
33961         Merge from coreutils.
33962         * lib/xgethostname.c: Include <stdlib.h>.
33963         (xghostname): Don't exit for anything other than memory-related
33964         failure; just return NULL.
33965         * lib/userspec.c: Include "posixver.h".
33966         (parse_user_spec): Accept `.' as a separator only
33967         in pre-POSIX-200112 mode.
33968         * lib/strtoimax.c: Use #elif rather than #else #if.
33969         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
33970         Remove function, now that we can rely on a working tzset function.
33971         [!_LIBC]: Ensure that the required autoconf test has been run.
33972         [!defined _NL_CURRENT && HAVE_STRFTIME]:
33973         Use underlying_strftime for %r.
33974         * lib/sha.c: Merge in some clean-up and optimization changes from
33975         glibc.
33976         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
33977         Ensure that it is a multiple of 64.
33978         Rearrange loop exit tests so as to avoid performing an
33979         additional fread after encountering an error or EOF.
33980         * lib/realloc.c: Update copyright date.
33981
33982 2003-08-15  Jim Meyering  <jim@meyering.net>
33983         and Paul Eggert  <eggert@twinsun.com>
33984
33985         Merge from coreutils.
33986         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
33987         member but strut utmpx does not.  Needed for AIX 4.3.3.
33988         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
33989
33990 2003-08-15  Jim Meyering  <jim@meyering.net>
33991         and Paul Eggert  <eggert@cs.ucla.edu>
33992
33993         Merges from coreutils, etc.
33994         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
33995         Require gl_FUNC_TZSET_CLOBBER.
33996         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
33997         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
33998         members.
33999
34000 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34001
34002         Help the merge from coreutils.
34003         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
34004         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
34005         * m4/tzset.m4: Use it too.
34006
34007 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34008
34009         * modules/tzset: New file.
34010
34011 2003-08-14  Jim Meyering  <jim@meyering.net>
34012
34013         Merges from coreutils.
34014         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
34015         variable names, rather than @FNMATCH_H@.
34016         * modules/alloca: Likewise for $(ALLOCA_H).
34017
34018         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
34019         the three copies of the literal target, `fnmatch.h'.
34020         * modules/alloca (alloca.h): Likewise.
34021
34022 2003-08-14  Jim Meyering  <jim@meyering.net>
34023
34024         Merge from coreutils.
34025         * m4/tzset.m4: New file.
34026         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
34027         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
34028         otherwise, AIX 5.1 systems would end up using the latter.
34029         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
34030         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
34031         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
34032         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
34033
34034 2003-08-14  Jim Meyering  <jim@meyering.net>
34035
34036         Merge from coreutils.
34037         * lib/obstack.h: Whitespace changes.
34038         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
34039         and xcalloc return values.
34040         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
34041         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
34042         hang on OSF/1 5.1 for DIR on both local and remote file systems.
34043         Reported by (and fix confirmed by) Nelson H. F. Beebe.
34044         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
34045         error from mntctl.
34046         Use mntctl's return value to drive the entry-processing loop, since
34047         we can't rely on the value of the vmt_length member in the last
34048         entry.  On some systems doing so could result in exhausting
34049         virtual memory.  Based in part on a patch from Mike Jetzer.
34050
34051 2003-08-14  Jim Meyering  <jim@meyering.net>
34052         and Paul Eggert  <eggert@twinsun.com>
34053
34054         Merges from coreutils, plus other fixes.
34055         * lib/physmem.c: Merge in portability changes from gcc/libiberty
34056         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
34057         for credits and details.  Thanks to Kaveh Ghazi for helping
34058         to keep these files in sync.
34059         (ARRAY_SIZE): Define it.
34060         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
34061         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
34062         (memcasecmp): Don't assume size_t fits in unsigned int.
34063         Remove casts and duplicate code.
34064         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
34065         (memcpy): Remove definition.
34066         Merge in some clean-up and optimization changes from glibc.
34067         [BLOCKSIZE]: Move definition to top of file.
34068         Ensure that it is a multiple of 64.
34069         Rearrange loop exit tests so as to avoid performing an
34070         additional fread after encountering an error or EOF.
34071         * lib/md5.h (md5_uintptr): Define.
34072         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
34073         return to the initial working directory.  Preserve errno
34074         for caller.
34075         * lib/idcache.c: Include "xalloc.h".
34076         (xmalloc, xrealloc): Remove decls.
34077         (getuser): Remove casts no longer required in C89.
34078         * lib/human.c: Include stdio.h, for sprintf.
34079         * lib/group-member.c: Include "xalloc.h".
34080         (xmalloc, xrealloc): Remove decls.
34081         (get_group_info): Remove casts no longer required in C89.
34082         * lib/getusershell.c (readname): Remove casts no longer required in
34083         C89.
34084         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
34085         * lib/getline.c: Whitespace fix, from coreutils.
34086
34087 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34088
34089         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
34090         Check for isascii.
34091
34092         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
34093         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
34094         Undo previous (whitespace-only) change.
34095
34096 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34097
34098         * lib/exclude.c: Include <ctype.h>
34099         (IN_CTYPE_DOMAIN): New macro.
34100         (is_space): New fn.
34101         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
34102         and empty lines.
34103
34104         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
34105         Undo previous (whitespace-only) change.
34106
34107 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34108
34109         * config/srclist-update: Change update back to the old behavior,
34110         leaving whitespace alone.  Use one 'sed' command rather than a
34111         pipeline.
34112         (fixlicense): Now a variable, not a function.
34113         (remove_trailing_blanks): Remove.
34114         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
34115         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
34116         Undo previous (whitespace-only) change.
34117
34118 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34119
34120         Merge from coreutils.
34121         * modules/euidaccess: Add lib_SOURCES, include for new
34122         file euidaccess.h
34123
34124 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34125
34126         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
34127         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
34128         Normalize leading white space and remove trailing white space.
34129
34130         Merge from coreutils
34131         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
34132
34133         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
34134         0.12.1.  These files are now being upgraded automatically by
34135         ../config/srclist-update.
34136
34137 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34138
34139         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
34140         Normalize leading white space and remove trailing white space.
34141         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
34142         notice, as per ../config/srclist-update.
34143
34144         Merge from coreutils.
34145         * lib/euidaccess.h: New file.
34146         * lib/euidaccess.c: Include it.
34147         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
34148         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
34149         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
34150
34151 2003-08-12  Paul Eggert  <eggert@twinsun.com>
34152
34153         * config/srclist-update: Add copyright notice.
34154         (remove_id_lines, remove_trailing_blanks): New constants.
34155         (fixfile): Use them to normalize spacing a bit in copied files.
34156         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
34157         Normalize leading white space and remove trailing white space.
34158
34159         * config/texinfo.tex: Sync with texinfo.
34160
34161         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
34162         strtoul.c from libc, to merge coreutils whitespace changes.
34163
34164         * config/srclist.txt: Get the following m4 files from gettext:
34165         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
34166         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
34167         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
34168         wint_t.m4.
34169
34170 2003-08-12  Karl Berry  <karl@gnu.org>
34171
34172         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
34173         been made.
34174
34175 2003-08-11  Paul Eggert  <eggert@twinsun.com>
34176
34177         * modules/gnu-source, m4/gnu-source.m4:
34178         Remove; we're assuming Autoconf 2.54 or later now.
34179         Suggested by Bruno Haible.
34180         * MODULES.html.sh (func_all_modules): Remove gnu-source.
34181
34182 2003-08-11  Bruno Haible  <bruno@clisp.org>
34183
34184         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
34185
34186 2003-08-11  Bruno Haible  <bruno@clisp.org>
34187
34188         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
34189         (vasnprintf): Use it instead of wcslen.
34190
34191 2003-08-11  Bruno Haible  <bruno@clisp.org>
34192
34193         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
34194         value to ensure that _Bool promotes to int. Use #define for _Bool when
34195         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
34196
34197 2003-08-10  Karl Berry  <karl@gnu.org>
34198
34199         * lib/regex.h: update from libc (whitespace fix).
34200
34201 2003-08-09  Paul Eggert  <eggert@twinsun.com>
34202
34203         Merge some files from coreutils.  These changes were
34204         originally made by Jim Meyering.
34205         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
34206         many older Unixes require this.
34207         * lib/alloca.c (alloca): Remove cast to argument of free;
34208         no longer needed in C89.
34209         * lib/alloca_.h, regex.h: Fix white space to match
34210         what GNU indent does.
34211
34212 2003-08-09  Paul Eggert  <eggert@twinsun.com>
34213
34214         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
34215         apparently Emacs's Unicode mode got confused before my 2003-08-05
34216         checkin.
34217
34218 2003-08-08  Paul Eggert  <eggert@twinsun.com>
34219
34220         * m4/extensions.m4: New file.
34221         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
34222         Require gl_USE_SYSTEM_EXTENSIONS.
34223         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
34224         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
34225
34226 2003-08-08  Paul Eggert  <eggert@twinsun.com>
34227
34228         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
34229         * modules/extensions, modules/gnu-source: New files.
34230         * modules/timespec, modules/unlocked-io: Depend on extensions.
34231
34232 2003-08-07  Paul Eggert  <eggert@twinsun.com>
34233
34234         * modules/restrict: New file.
34235         * MODULES.html.sh (func_all_modules): Add restrict.
34236         * modules/regex: Depend on restrict.
34237
34238 2003-08-07  Paul Eggert  <eggert@twinsun.com>
34239
34240         * m4/restrict.m4: New file.
34241         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
34242
34243 2003-08-07  Bruno Haible  <bruno@clisp.org>
34244
34245         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
34246         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
34247
34248 2003-08-07  Bruno Haible  <bruno@clisp.org>
34249
34250         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
34251         makes the module 'getndelim2' compatible with the module 'getline'.
34252
34253 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34254
34255         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
34256         byte with "\201" to avoid glitches when editing that source file
34257         with multi-gnome-terminal.
34258
34259 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34260
34261         * lib/bumpalloc.h: Remove.
34262
34263 2003-08-05  Paul Eggert  <eggert@twinsun.com>
34264
34265         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
34266         * modules/bumpalloc: Remove.
34267
34268 2003-08-04  Paul Eggert  <eggert@twinsun.com>
34269
34270         * lib/getloadavg.c: Change copyright notice and spacing to conform to
34271         GNU coding style.
34272
34273         Merge from coreutils.
34274         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
34275         1. From glibc.
34276         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
34277         from Karl Berry, implemented by Jim Meyering.
34278         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
34279         from Dmitry V. Levin.
34280         Remove anachronistic cast of xrealloc.
34281         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
34282         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
34283         type. Otherwise, it wouldn't compile with at least /bin/cc on
34284         ymp-cray-unicos9.0.2.X.
34285         Combine two mostly-identical uses of alloca into one.
34286         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
34287
34288 2003-08-04  Dave Love  <d.love@dl.ac.uk>
34289
34290         [From Emacs.]
34291
34292         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
34293         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
34294         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
34295         obsolete NLIST_NAME_UNION.
34296         [__GNU__]: Undef BSD and FSCALE.
34297         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
34298
34299 2003-08-03  Paul Eggert  <eggert@twinsun.com>
34300
34301         * lib/stdbool_.h (_Bool): Make it signed char, instead of
34302         an enum type, so that it's guaranteed to promote to int.  See:
34303         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
34304
34305 2003-08-03  Karl Berry  <karl@gnu.org>
34306
34307         * config/depcomp: update from automake.
34308
34309 2003-07-31  Paul Eggert  <eggert@twinsun.com>
34310
34311         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
34312         (strerror): Don't assume that a printable int fits in 14 bytes.
34313
34314 2003-07-31  Bruno Haible  <bruno@clisp.org>
34315
34316         * modules/getpass-gnu: New file.
34317         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
34318
34319 2003-07-31  Bruno Haible  <bruno@clisp.org>
34320
34321         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
34322
34323 2003-07-24  Karl Berry  <karl@gnu.org>
34324
34325         * config/missing: update from automake.
34326
34327 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
34328             Bruno Haible  <bruno@clisp.org>
34329
34330         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
34331         * lib/getline.c (getline, getdelim): Likewise.
34332         Remove _GNU_SOURCE define; now it's defined in config.h through
34333         m4/getline.m4.
34334
34335 2003-07-23  Karl Berry  <karl@gnu.org>
34336
34337         * config/config.sub: update from prep.
34338
34339 2003-07-22  Paul Eggert  <eggert@twinsun.com>
34340
34341         * modules/xalloc (Depends-on): Add exitfail.
34342         * modules/xmemcoll: Likewise.
34343
34344 2003-07-22  Paul Eggert  <eggert@twinsun.com>
34345
34346         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
34347         over-parenthesization in macros.
34348
34349         Sync with coreutils.
34350
34351         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
34352         required by C99.
34353
34354         Use `exit_failure' for xalloc and xmemcoll instead of their own
34355         private exit-failure variables.
34356         * lib/xalloc.h (xalloc_exit_failure): Remove.
34357         * lib/xmalloc.c: Likewise.  Include exitfail.h.
34358         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
34359         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
34360         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
34361         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
34362
34363 2003-07-20  Jim Meyering  <jim@meyering.net>
34364
34365         * modules/closeout (Depends-on): Add exitfail.
34366         Suggestion from Bruno Haible.
34367
34368 2003-07-19  Karl Berry  <karl@gnu.org>
34369
34370         * config/config.sub: update from prep.
34371
34372 2003-07-18  Paul Eggert  <eggert@twinsun.com>
34373
34374         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
34375         Remove.
34376         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
34377         to test that it can stand by itself.  Include "exitfail.h".
34378         Clients should set exit_failure instead.
34379         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
34380
34381 2003-07-18  Bruno Haible  <bruno@clisp.org>
34382
34383         * modules/getndelim2: New file.
34384         * modules/getline: Share files with module getndelim2.
34385         * modules/getnline: Depend on getndelim2 instead of sharing files with
34386         it. Add getnline.c to lib_SOURCES.
34387         * MODULES.html.sh (func_all_modules): Add getndelim2.
34388
34389 2003-07-18  Bruno Haible  <bruno@clisp.org>
34390
34391         * m4/getndelim2.m4: New file.
34392         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
34393         invoke gl_PREREQ_GETNDELIM2.
34394         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
34395         gl_PREREQ_GETNDELIM2.
34396         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
34397         gl_GETNDELIM2.
34398
34399 2003-07-18  Bruno Haible  <bruno@clisp.org>
34400
34401         * lib/getndelim2.h: New file.
34402         * lib/getndelim2.c: Make into a module of its own. Include config.h,
34403         getndelim2.h.
34404         (getndelim2): Make non-static. Change return type to ssize_t.
34405         * lib/getline.h: Change argument names.
34406         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
34407         * lib/getnline.c: Include getndelim2.h.
34408
34409 2003-07-18  Andreas Schwab  <schwab@suse.de>
34410
34411         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
34412
34413 2003-07-17  Karl Berry  <karl@gnu.org>
34414
34415         * config/config.sub: update from prep.
34416
34417 2003-07-17  Bruno Haible  <bruno@clisp.org>
34418
34419         * modules/getnline: New file.
34420         * modules/getline: Add lib/getndelim2.c to source file list.
34421         * MODULES.html.sh (func_all_modules): Add getnline.
34422
34423 2003-07-17  Bruno Haible  <bruno@clisp.org>
34424
34425         * m4/getnline.m4: New file.
34426
34427 2003-07-17  Bruno Haible  <bruno@clisp.org>
34428
34429         * m4/Makefile.am.in: Remove file.
34430         * m4/Makefile.am: Remove file.
34431         * m4/Makefile.in: Remove file.
34432
34433 2003-07-17  Bruno Haible  <bruno@clisp.org>
34434
34435         * lib/getnline.h: New file.
34436         * lib/getnline.c: New file.
34437         * lib/getndelim2.c: New file, extracted from getline.c.
34438         (getndelim2): Renamed from getdelim2, with added nmax argument.
34439         * lib/getline.c: Include getndelim2.c.
34440         (getdelim2): Moved out to getndelim2.c.
34441         (getline, getdelim): Update.
34442
34443 2003-07-17  Bruno Haible  <bruno@clisp.org>
34444
34445         * lib/Makefile.am: Remove file.
34446         * lib/Makefile.in: Remove file.
34447
34448 2003-07-17  Bruno Haible  <bruno@clisp.org>
34449
34450         * configure.in: Remove file.
34451         * Makefile.in: Remove file.
34452
34453 2003-07-17  Bruno Haible  <bruno@clisp.org>
34454
34455         * MODULES.html.sh: Put the </BODY> right before </HTML>.
34456
34457 2003-07-16  Karl Berry  <karl@gnu.org>
34458
34459         * config/srclist-update: was running fixlicense twice, which caused
34460                 texinfo.tex to be nullified for some reason.  Simplify,
34461                 $gplsrc is no longer needed as far as I can see?
34462
34463 2003-07-16  Jim Meyering  <jim@meyering.net>
34464
34465         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
34466
34467 2003-07-15  Paul Eggert  <eggert@twinsun.com>
34468
34469         * config/srclist.txt: Get the following files from gettext-runtime/intl
34470         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
34471         ref-del.sin.  From Bruno Haible.
34472         * config/srclist-update (fixfile): Change grep pattern again, since the
34473         previous fix didn't work (there was another trailing $).  Use
34474         '[$]' to escape the $s.
34475
34476 2003-07-15  Karl Berry  <karl@gnu.org>
34477
34478         * lib/vasnprintf.c: update from gettext.
34479
34480 2003-07-15  Karl Berry  <karl@gnu.org>
34481
34482         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
34483         gets expanded when surrounded by '$'.
34484
34485 2003-07-15  Jim Meyering  <jim@meyering.net>
34486
34487         * modules/save-cwd: Don't depend on error.  From Derek Price.
34488
34489 2003-07-15  Jim Meyering  <jim@meyering.net>
34490
34491         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
34492
34493 2003-07-14  Simon Josefsson  <jas@extundo.com>
34494
34495         * modules/mempcpy: New file.
34496         * MODULES.html.sh (func_all_modules): Add mempcpy.
34497
34498 2003-07-14  Simon Josefsson  <jas@extundo.com>
34499
34500         * m4/mempcpy.m4: New file.
34501
34502 2003-07-14  Simon Josefsson  <jas@extundo.com>
34503
34504         * lib/mempcpy.h: New file.
34505         * lib/mempcpy.c: New file.
34506
34507 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34508
34509         * modules/getdate, modules/posixtm: Depend on mktime.
34510
34511 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34512
34513         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
34514         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
34515         unicodeio.c, unicodeio.h, unlocked-io.h:
34516         Switch from LGPL to GPL.
34517
34518 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34519
34520         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
34521         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
34522         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
34523         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
34524         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
34525         updated automatically by ../config/srclist-update.  This changes
34526         their license from LPGL to GPL.
34527
34528 2003-07-14  Paul Eggert  <eggert@twinsun.com>
34529
34530         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
34531         assumed to refer to the root of the most recent stable gettext version.
34532         * config/srclistvars.sh: Add defaults for eggert.
34533         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
34534         Match "This program" as well as "The program".  This is needed
34535         for gettext.
34536
34537 2003-07-14  Jim Meyering  <jim@meyering.net>
34538
34539         Don't emit diagnostics.  Let callers do that.
34540         * lib/save-cwd.c: Don't include "error.h".
34541         (save_cwd): Don't call error.  Ensure that errno is valid
34542         when returning nonzero.
34543
34544         * lib/save-cwd.h (restore_cwd): Update prototype.
34545         * lib/save-cwd.c (restore_cwd): Remove two parameters.
34546         Simplify.  Don't call error upon failure.  Let callers do that.
34547         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
34548         when auditing is enabled.  But don't bother updating the #if.
34549
34550 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
34551
34552         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
34553         it breaks C++ compilation.
34554         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
34555
34556 2003-07-10  Simon Josefsson  <jas@extundo.com>
34557
34558         * modules/strchrnul (Makefile.am): Add strchrnul.h.
34559
34560 2003-07-10  Jim Meyering  <jim@meyering.net>
34561
34562         * m4/clock_time.m4: Remove trailing blank.
34563         * m4/intmax_t.m4: Likewise.
34564
34565 2003-07-10  Jim Meyering  <jim@meyering.net>
34566
34567         * lib/vasnprintf.c: Remove trailing blanks.
34568         Make cpp indentation consistent.
34569
34570 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34571
34572         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
34573         posixver.c, strftime.c, strnlen.c, strverscmp.c:
34574         Switch from LGPL to GPL.
34575
34576 2003-07-09  Paul Eggert  <eggert@twinsun.com>
34577
34578         * config/srclist.txt: Sort sublists.  Add
34579         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
34580         that differ from gnulib for one reason or another; we'd like this list
34581         to be smaller but for now let's document what we have.
34582
34583 2003-07-08  Paul Eggert  <eggert@twinsun.com>
34584
34585         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
34586         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
34587         and sweeter "eval x=$x".
34588         * config/srclist.txt: Get lib/argp* from glibc.
34589
34590 2003-07-07  Paul Eggert  <eggert@twinsun.com>
34591
34592         * lib/mktime.c: Fix some boundary cases and remove need for floating
34593         point.
34594
34595         Issue a compile-time diagnostic if time_t is floating point, or if
34596         two's complement arithmetic is not in effect, or if arithmetic
34597         right shift does not propagate the sign.  These assumptions were
34598         all in the original code but they weren't checked.
34599
34600         (TIME_T_MIDPOINT, verify): New macros.
34601         (__isleap): Remove; it has integer overflow problems.
34602         (leapyear): New function, without those problems.
34603         (ydhms_tm_diff): Remove; splitting into two parts.
34604         (ydhms_diff): New function, containing the arithmetic part of
34605         the old ydhms_tm_diff function.  Issue a compile-time
34606         diagnostic if we are not using C99 integer division.
34607         Avoid casts when possible.
34608         (guess_time_tm): New function, containing the checking part of
34609         the old ydhms_tm_diff function.  Return the new value, rather than
34610         the difference between it and the old.  Accept a new argument T
34611         so that *T specifies the old value.  Check for overflow in the result.
34612
34613         (__mktime_internal): Use a time_t offset, not a long int offset.
34614         This undoes the 2003-06-04 change, which is no longer needed now
34615         that we have better overflow checking.
34616         (localtime_offset): Likewise.
34617
34618         (__mktime_internal): Avoid harmful overflow on hosts where time_t
34619         and long are 64-bit but int is only 32-bit.
34620         (ydhms_diff): Use long int to store year1 and yday1.
34621         Issue a compile-time diagnostic if long int is not wide enough.
34622
34623         (__mktime_internal): Use long int to store adjusted year and yday.
34624         Use plain C rather than preprocessor commands, if that doesn't
34625         affect efficiency.
34626         Check for overflow (and try to repair) after each probe
34627         rather than checking only at the very end.  This avoids some bugs
34628         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
34629         does not equal GMT offset at maximum time).
34630         Use integer to check for overflow rather than floating point; this
34631         is more portable to non-IEEE hosts, and is a tad faster.
34632         When we detect that we are oscillating between two values,
34633         don't check whether tm_isdst has the requested value, since
34634         we already know the answer.  When tm_isdst has the wrong value,
34635         use a different heuristic to find the right one, based on the
34636         extreme values actually observed in practice in tz2003a,
34637         rather than the (overly optimistic) "previous 3 calendar quarters".
34638
34639         (not_equal_tm, print_tm, check_result): Use "const T" rather than
34640         "T const" to accommodate glibc style.
34641         (check_result): Use less-confusing report format.  "long" -> "long int.
34642         (main): Likewise.
34643         Don't loop if the iteration overflows time_t.
34644         Allow a negative step in the iteration.
34645
34646 2003-07-06  Karl Berry  <karl@gnu.org>
34647
34648         * config/depcomp: update from automake.
34649         * config/config.sub: update from prep.
34650
34651 2003-07-03  Karl Berry  <karl@gnu.org>
34652
34653         * config/config.guess: update from prep.
34654
34655 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34656
34657         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
34658         xreadlink.c now includes it unconditionally.
34659
34660 2003-07-01  Paul Eggert  <eggert@twinsun.com>
34661
34662         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
34663         having it depend on HAVE_SYS_TYPES_H.
34664
34665 2003-07-01  Bruno Haible  <bruno@clisp.org>
34666
34667         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
34668         <sys/types.h> should be sufficient.
34669         Reported by Paul Eggert.
34670
34671 2003-06-26  Karl Berry  <karl@gnu.org>
34672
34673         * config/depcomp: update from automake.
34674
34675 2003-06-26  Bruno Haible  <bruno@clisp.org>
34676
34677         * modules/human: Depend on module stdbool.
34678
34679 2003-06-25  Bruno Haible  <bruno@clisp.org>
34680
34681         * modules/readlink: New file.
34682         * modules/xreadlink: Depend on it.
34683         * MODULES.html.sh (func_all_modules): Add readlink.
34684
34685 2003-06-25  Bruno Haible  <bruno@clisp.org>
34686
34687         * m4/readlink.m4: New file.
34688
34689 2003-06-25  Bruno Haible  <bruno@clisp.org>
34690
34691         * lib/readlink.c: New file.
34692
34693 2003-06-22  Karl Berry  <karl@gnu.org>
34694
34695         * config/srclist.txt: update mkinstalldirs from automake.
34696         * config/mkinstalldirs: update.
34697
34698 2003-06-22  Bruno Haible  <bruno@clisp.org>
34699
34700         Portability to mingw32.
34701         * m4/ssize_t.m4: New file, from GNU gettext.
34702         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
34703         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
34704
34705 2003-06-22  Bruno Haible  <bruno@clisp.org>
34706
34707         * modules/safe-read: Add m4/ssize_t.m4.
34708         * modules/xreadlink: Add m4/ssize_t.m4.
34709
34710 2003-06-20  Bruno Haible  <bruno@clisp.org>
34711
34712         Assume C89, so PARAMS isn't needed.
34713         * lib/unicodeio.h (PARAMS): Remove.
34714         * lib/unicodeio.c: Don't use PARAMS.
34715
34716 2003-06-18  Karl Berry  <karl@gnu.org>
34717
34718         * config/config.{guess,sub}: update from prep.
34719
34720 2003-06-18  Jim Meyering  <jim@meyering.net>
34721
34722         Merge changes from coreutils.
34723         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
34724         Remove explicit declarations of xmalloc and realloc.
34725         Include xalloc.h.
34726         (read_utmp): Remove anachronistic cast of xmalloc.
34727
34728 2003-06-17  Paul Eggert  <eggert@twinsun.com>
34729
34730         Assume C89, so PARAMS isn't needed.
34731         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
34732         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
34733         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
34734         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
34735         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
34736         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
34737         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
34738         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
34739         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
34740         lib/xstrtod.h, lib/xstrtol.h: Likewise.
34741         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
34742         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
34743         no longer needed. Anyway, config.h should always be included before any
34744         other file.
34745
34746 2003-06-11  Simon Josefsson  <jas@extundo.com>
34747
34748         * modules/sysexits: New file.
34749         * MODULES.html.sh (func_all_modules): Add sysexits.
34750
34751 2003-06-11  Simon Josefsson  <jas@extundo.com>
34752
34753         * lib/sysexit_.h: New file.
34754
34755 2003-06-11  Derek Price  <derek@ximbiot.com>
34756
34757         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
34758         necessary.
34759
34760 2003-06-11  Bruno Haible  <bruno@clisp.org>
34761
34762         * m4/sysexits.m4: New file.
34763
34764 2003-06-10  Simon Josefsson  <jas@extundo.com>
34765
34766         * lib/argp.h: New file, from glibc.
34767         * lib/argp-ba.c: New file, from glibc.
34768         * lib/argp-eexst.c: New file, from glibc.
34769         * lib/argp-fmtstream.c: New file, from glibc.
34770         * lib/argp-fmtstream.h: New file, from glibc.
34771         * lib/argp-fs-xinl.c: New file, from glibc.
34772         * lib/argp-help.c: New file, from glibc.
34773         * lib/argp-namefrob.h: New file, from glibc.
34774         * lib/argp-parse.c: New file, from glibc.
34775         * lib/argp-pv.c: New file, from glibc.
34776         * lib/argp-pvh.c: New file, from glibc.
34777         * lib/argp-xinl.c: New file, from glibc.
34778
34779 2003-06-10  Simon Josefsson  <jas@extundo.com>
34780
34781         * modules/strchrnul: New file.
34782
34783 2003-06-10  Simon Josefsson  <jas@extundo.com>
34784
34785         * modules/argp: New file.
34786
34787 2003-06-10  Simon Josefsson  <jas@extundo.com>
34788
34789         * m4/strchrnul.m4: New file.
34790
34791 2003-06-10  Simon Josefsson  <jas@extundo.com>
34792
34793         * lib/strchrnul.h: New file.
34794         * lib/strchrnul.c: New file.
34795
34796 2003-06-10  Bruno Haible  <bruno@clisp.org>
34797
34798         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
34799
34800 2003-06-07  Karl Berry  <karl@gnu.org>
34801
34802         * config/config.{guess,sub}: update from prep.
34803
34804 2003-06-07  Jim Meyering  <jim@meyering.net>
34805
34806         * modules/strtod: Use $(...) notation, not @...@ for
34807         AC_REPLACE'd variables.
34808         * modules/localcharset: Likewise.
34809
34810 2003-06-07  Jim Meyering  <jim@meyering.net>
34811
34812         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
34813         in place of my name in the copyright comment.
34814         Remove definition and uses of __P.
34815
34816         From coreutils.
34817         * lib/stat.c: Don't declare xmalloc explicitly.
34818         Instead, include "xalloc.h".
34819         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
34820         xrealloc, and xcalloc return values.
34821         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
34822         Improve comment.
34823         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
34824
34825 2003-06-07  Bruno Haible  <bruno@clisp.org>
34826
34827         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
34828         avoid AC_CONFIG_LINKS.
34829         * modules/fnmatch (Makefile.am): Use explicit creation rule for
34830         fnmatch.h, to avoid AC_CONFIG_LINKS.
34831         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
34832
34833 2003-06-07  Bruno Haible  <bruno@clisp.org>
34834
34835         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
34836         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
34837         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
34838         directory.
34839         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
34840         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
34841         directory.
34842
34843 2003-06-06  Jim Meyering  <jim@meyering.net>
34844
34845         Merge from coreutils.
34846         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
34847         Consolidate declarations and initializations of *_base* locals.
34848
34849         Merge from coreutils.
34850         This avoids a core dump on systems without GNU putenv,
34851         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
34852         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
34853         (unsetenv): New static function, from GNU libc.
34854         (rpl_putenv): Use it.
34855
34856         * lib/modechange.c: Remove trailing blanks.
34857
34858         Merge from coreutils.
34859         * lib/fsusage.c: Remove declaration of statfs.
34860         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
34861
34862         * lib/posixtm.c: Include <stdbool.h> unconditionally.
34863
34864 2003-06-06  Jim Meyering  <jim@meyering.net>
34865
34866         * lib/stdbool_.h: Renamed from stdbool.h.in.
34867
34868 2003-06-06  Jim Meyering  <jim@meyering.net>
34869             Bruno Haible  <bruno@clisp.org>
34870
34871         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
34872         Adjust Makefile.am snippet not to redirect directly to target.
34873         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
34874
34875 2003-06-05  Paul Eggert  <eggert@twinsun.com>
34876
34877         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
34878         mismatch, look in future quarters as well as past.  This fixes a
34879         bug when processing fall-backwards gaps immediately after a long
34880         period of daylight-saving time.
34881
34882         * lib/mktime.c: Assume freestanding C89 or better.
34883         (HAVE_LIMITS_H): Remove.  Assume it's 1.
34884         (__P): Remove; not used.
34885         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
34886         (mktime, not_equal_tm, print_tm, check_result,
34887         main): Use prototypes.  Use const * where appropriate.
34888         (main): Fix typo in testing code that uncovered by above changes.
34889         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
34890
34891 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34892
34893         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
34894         locale.h, localeconv.  This merges changes from coreutils.
34895
34896         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
34897         It can be removed after the next Autoconf is released.
34898         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
34899         needed.
34900
34901 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34902
34903         * lib/mktime.c: Fix Debian bug 177940
34904         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
34905         (localtime_offset): Now long int, not time_t, because we want it
34906         to be guaranteed to be signed.  All uses changed.
34907         (__mktime_internal): If overflow would occur when adding offset,
34908         don't add it.
34909
34910         Merge 'human' changes from coreutils.  Rewrite to support
34911         locale-specific notations like thousands separators.
34912         * lib/human.c: Simplify authorship notice.
34913         Include human.h immediately after config.h.
34914         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
34915         <limits.h>: Do not include, since human.h does.
34916         (SIZE_MAX, UINTMAX_MAX): New macros.
34917         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
34918         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
34919         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
34920         (power_letter): Renamed from suffixes.
34921         (generate_suffix_backwards): Remove.
34922         (adjust_value): Now takes int style (because of human.h changes)
34923         and long double value (for greater precision on some platforms).
34924         (group_number): New function.
34925         (human_readable): Use it.  Use integer options, not enum.
34926         Put the options before the sizes in the arg list.
34927         Support all the new options.
34928         The old human_readable function has been removed;
34929         use inttostr.h instead.
34930         (human_readable, default_block_size, humblock):
34931         Use uintmax_t, not int, for block sizes.
34932         (human_readable_inexact, block_size_types): Remove.
34933         (block_size_opts): New constant.
34934         (human_options): Renamed from human_block_size, with new signature
34935         that allows block sizes up to UINTMAX_MAX.  All callers changed.
34936         * lib/human.h: Add copyright and authorship notice.
34937         Include <limits.h> and <stdbool.h> unconditionally.
34938         (PARAMS): Remove.  All uses removed.
34939         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
34940         (enum human_inexact_style): Remove tag; now a nameless enum.
34941         (human_floor, human_ceiling, human_round_to_even): Now have
34942         values 2, 0, 1 rather than -1, 1, 0.
34943         (human_group_digits, human_suppress_point_zero, human_autoscale,
34944         human_base_1024, human_SI, human_B): New constants.
34945         (human_readable_inexact, human_block_size): Remove.
34946         (human_readable): Size args are now uintmax_t, not int.
34947         (human_options): New decl.
34948
34949         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
34950         unnecessary now that we assume C89 or better.  This change
34951         imported from coreutils.
34952
34953         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
34954         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
34955         in the 2003-05-30 sync from glibc.
34956
34957         .h files should stand alone, but we shouldn't include <sys/types.h>
34958         if we can get away with just <stddef.h>.
34959
34960         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
34961         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
34962         rather than <sys/types.h>, as we merely need size_t.
34963         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
34964         to get size_t.
34965         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
34966         Include <stdio.h>, to get FILE.
34967         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
34968         memcasecmp.h has included <stddef.h> and all we need is size_t.
34969         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
34970         our interface, instead of including <sys/types.h>
34971
34972 2003-06-04  Paul Eggert  <eggert@twinsun.com>
34973
34974         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
34975         now, as glibc mktime is buggy on non-glibc systems.
34976
34977 2003-06-03  Karl Berry  <karl@gnu.org>
34978
34979         * config/config.sub: update from prep.
34980
34981 2003-06-02  Paul Eggert  <eggert@twinsun.com>
34982
34983         [from coreutils]
34984         Fix some minor time-related bugs with POSIX time arguments.
34985         Some valid time stamps were being rejected (notably -1, and
34986         time stamps before 1900 on 64-bit hosts).  And some invalid
34987         time stamps were being accepted, e.g. September 31.
34988
34989         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
34990         that we can return (time_t) -1 successfully.
34991         * lib/posixtm.c: Likewise.
34992         [HAVE_STDBOOL_H]: Include <stdbool.h>.
34993         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
34994         (t): Remove static var.
34995         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
34996         of static var.  All uses changed.
34997         (year): Do not reject years before 1900; they can occur with
34998         64-bit time_t.
34999         (posix_time_parse): Do not check for out-of-range components;
35000         that is now the caller's responsibility, since our checks were
35001         only approximations.
35002         (posixtime): Use mktime to check for out-of-range components,
35003         since it knows them exactly.
35004         If mktime returns (time_t) -1, check whether an error actually occurred
35005         by invoking localtime on -1.
35006         (main) [TEST_POSIXTIME]: Check for input data errors, and report
35007         posixtime failures better.
35008         Improve the test data (in comments only).
35009
35010 2003-06-02  Karl Berry  <karl@gnu.org>
35011
35012         * config/mkinstalldirs (version): new variable.
35013         (--version): new option.
35014         (usage): improve message.
35015
35016 2003-05-30  Karl Berry  <karl@gnu.org>
35017
35018         * lib/mktime.c: update from libc.
35019
35020 2003-05-30  Bruno Haible  <bruno@clisp.org>
35021
35022         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
35023         * config/config.rpath: Upgrade to gettext-0.12.1.
35024
35025 2003-05-30  Bruno Haible  <bruno@clisp.org>
35026
35027         * m4/gettext.m4: Upgrade to gettext-0.12.1.
35028         * m4/nls.m4: New file, from gettext-0.12.1.
35029         * m4/po.m4: New file, from gettext-0.12.1.
35030         * m4/progtest.m4: Upgrade to gettext-0.12.1.
35031
35032 2003-05-30  Bruno Haible  <bruno@clisp.org>
35033
35034         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
35035         * lib/localcharset.h: Likewise.
35036         * lib/localcharset.c: Likewise.
35037
35038 2003-05-29  Karl Berry  <karl@gnu.org>
35039
35040         * config/config.rpath: update from gettext.
35041
35042 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35043
35044         Assume the headers required for C89 freestanding compilers.
35045         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
35046         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
35047         * m4/human.m4 (gl_HUMAN): Likewise.
35048         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
35049         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
35050         * m4/userspec.m4 (gl_USERSPEC): Likewise.
35051         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
35052         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35053         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
35054
35055 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35056
35057         Assume the headers required for C89 freestanding compilers.
35058         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
35059         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
35060         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
35061         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
35062         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
35063         define, since <limits.h> is guaranteed to do that.
35064         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
35065         * lib/exclude.c: Include <stdbool.h> unconditionally.
35066         * lib/tempname.c: Include <stddef.h> unconditionally.
35067         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
35068         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
35069         <stddef.h> does that.
35070         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
35071         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
35072         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
35073         needed.
35074         * lib/xstrtol.c: Likewise.
35075         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
35076         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
35077
35078         * lib/addext.c (addext): Use assignment rather than cast, to avoid
35079         warnings on some platforms.
35080
35081         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
35082         arbitrarily.
35083
35084 2003-05-26  Jim Meyering  <jim@meyering.net>
35085
35086         Merge in a change from coreutils:
35087         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
35088         that is guaranteed to be `no'.  Use `no_such_member' to indicate
35089         that condition, rather than `-1' which is slightly misleading.
35090         Change the name of the cache variable to have the gl_ prefix.
35091         Prompted by a patch from Richard Dawe for DJGPP.
35092
35093 2003-05-24  Karl Berry  <karl@gnu.org>
35094
35095         * config/config.guess: update from prep.
35096
35097 2003-05-22  Karl Berry  <karl@gnu.org>
35098
35099         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
35100
35101 2003-05-20  Karl Berry  <karl@gnu.org>
35102
35103         * config/config.guess: update from prep.
35104
35105 2003-05-18  Karl Berry  <karl@gnu.org>
35106
35107         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
35108         might actually be set by the user.
35109
35110         * config/depcomp, install-sh, mdate-sh: update from automake.
35111
35112 2003-05-17  Bruno Haible  <bruno@clisp.org>
35113
35114         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
35115         invalid expansion for AC_EGREP_CPP.
35116         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
35117         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
35118         Suggested by Akim Demaille <akim@epita.fr> in
35119         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
35120
35121 2003-05-12  Jim Meyering  <jim@meyering.net>
35122
35123         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
35124         the space-padded-by-default conversion specifiers, %e, %k, %l.
35125
35126 2003-05-12  Bruno Haible  <bruno@clisp.org>
35127
35128         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
35129         the string is longer than 4 KB.
35130
35131 2003-05-11  Karl Berry  <karl@gnu.org>
35132
35133         * config/config.{guess,sub}: update from prep.
35134
35135 2003-05-09  Bruno Haible  <bruno@clisp.org>
35136
35137         * modules/error: Add m4/strerror_r.m4 to file list.
35138
35139 2003-05-03  Bruno Haible  <bruno@clisp.org>
35140
35141         Upgrade to Unicode-4.0.
35142         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
35143         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
35144         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
35145         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
35146         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
35147         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
35148         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
35149         Change width of U+E0100..U+E01EF from 1 to 0.
35150
35151 2003-04-25  Jim Meyering  <jim@meyering.net>
35152
35153         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
35154         of type size_t, not int.
35155
35156 2003-04-25  Bruno Haible  <bruno@clisp.org>
35157
35158         * lib/copy-file.c: Include <stddef.h>, for size_t.
35159
35160 2003-04-21  Paul Eggert  <eggert@twinsun.com>
35161
35162         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
35163         code which expansion is under static control.  Patch imported from
35164         Akim Demaille's patch to Bison; see
35165         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
35166
35167 2003-04-14  Bruno Haible  <bruno@clisp.org>
35168
35169         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
35170
35171 2003-04-11  Jim Meyering  <jim@meyering.net>
35172
35173         Merge changes from Coreutils.
35174
35175         2003-03-22  Jim Meyering  <jim@meyering.net>
35176
35177         * lib/strftime.c (widen): Cast alloca return value to proper type.
35178
35179         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
35180
35181         From GNU libc.
35182         * lib/strftime.c (my_strftime): Handle very large width
35183         specifications for numeric values correctly.  Improve checks for
35184         overflow.
35185
35186         2003-01-19  Jim Meyering  <jim@meyering.net>
35187
35188         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
35189         definitions.
35190         (nl_get_alt_digit) [! defined my_strftime]: Define.
35191         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
35192         _nl_get_alt_digit and _nl_get_walt_digit.
35193
35194         * lib/strftime.c (my_strftime): Merge in locale-related changes from
35195         libc. These changes have no effect outside of _LIBC.
35196
35197 2003-04-10  Bruno Haible  <bruno@clisp.org>
35198
35199         * modules/findprog: New file.
35200         * MODULES.html.sh (func_all_modules): Add it.
35201
35202 2003-04-10  Bruno Haible  <bruno@clisp.org>
35203
35204         * m4/findprog.m4: New file.
35205         * m4/eaccess.m4: New file.
35206
35207 2003-04-10  Bruno Haible  <bruno@clisp.org>
35208
35209         * lib/findprog.h: New file, from GNU gettext.
35210         * lib/findprog.c: New file, from GNU gettext.
35211
35212 2003-04-05  Jim Meyering  <jim@meyering.net>
35213
35214         Merge changes from Coreutils.
35215
35216         * lib/exclude.h (PARAMS): Remove definition and uses.
35217         * lib/exclude.c: Remove uses of `PARAMS'.
35218
35219         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
35220         Add test-cases for DOS filenames. Declare program_name.
35221         (main): Set up program_name.  Patch by Rich Dawe.
35222
35223         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
35224         error from mntctl.
35225         Use mntctl's return value to drive the entry-processing loop, since
35226         we can't rely on the value of the vmt_length member in the last
35227         entry.  On some systems doing so could result in exhausting
35228         virtual memory.  Based in part on a patch from Mike Jetzer.
35229
35230 2003-04-04  Bruno Haible  <bruno@clisp.org>
35231
35232         * modules/linebreak: New file.
35233         * MODULES.html.sh (func_all_modules): Add it.
35234
35235 2003-04-04  Bruno Haible  <bruno@clisp.org>
35236
35237         * m4/linebreak.m4: New file.
35238
35239 2003-04-04  Bruno Haible  <bruno@clisp.org>
35240
35241         * lib/linebreak.h: New file, from GNU gettext.
35242         * lib/linebreak.c: New file, from GNU gettext with slight
35243         modifications.
35244         * lib/lbrkprop.h: New file, from GNU gettext.
35245
35246 2003-04-03  Bruno Haible  <bruno@clisp.org>
35247
35248         * modules/utf8-ucs4: New file.
35249         * modules/utf16-ucs4: New file.
35250         * modules/ucs4-utf8: New file.
35251         * modules/ucs4-utf16: New file.
35252         * MODULES.html.sh (func_all_modules): Add them.
35253
35254 2003-04-03  Bruno Haible  <bruno@clisp.org>
35255
35256         * m4/utf-ucs4.m4: New file.
35257         * m4/ucs4-utf.m4: New file.
35258
35259 2003-04-03  Bruno Haible  <bruno@clisp.org>
35260
35261         * lib/utf8-ucs4.h: New file, from GNU gettext.
35262         * lib/utf16-ucs4.h: New file, from GNU gettext.
35263         * lib/ucs4-utf8.h: New file, from GNU gettext.
35264         * lib/ucs4-utf16.h: New file, from GNU gettext.
35265
35266 2003-04-02  Bruno Haible  <bruno@clisp.org>
35267
35268         * modules/binary-io: New file.
35269         * MODULES.html.sh (func_all_modules): Add it.
35270
35271 2003-04-02  Bruno Haible  <bruno@clisp.org>
35272
35273         * lib/binary-io.h: New file, from GNU gettext.
35274
35275 2003-04-01  Bruno Haible  <bruno@clisp.org>
35276
35277         * modules/pathname: New file.
35278         * MODULES.html.sh (func_all_modules): Add it.
35279
35280 2003-04-01  Bruno Haible  <bruno@clisp.org>
35281
35282         * lib/pathname.h: New file, from GNU gettext.
35283         * lib/concatpath.c: New file, from GNU gettext.
35284
35285 2003-03-30  Bruno Haible  <bruno@clisp.org>
35286
35287         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
35288
35289 2003-03-30  Bruno Haible  <bruno@clisp.org>
35290
35291         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
35292         function chown() doesn't exist.
35293
35294 2003-03-28  Bruno Haible  <bruno@clisp.org>
35295
35296         * modules/copy-file: New file.
35297         * MODULES.html.sh (func_all_modules): Add it.
35298
35299 2003-03-28  Bruno Haible  <bruno@clisp.org>
35300
35301         * m4/copy-file.m4: New file.
35302
35303 2003-03-28  Bruno Haible  <bruno@clisp.org>
35304
35305         * lib/copy-file.h: New file, from GNU gettext.
35306         * lib/copy-file.c: New file, from GNU gettext.
35307
35308 2003-03-18  Jim Meyering  <jim@meyering.net>
35309
35310         * lib/quote.c (quote_n): Fix typo in comment.
35311
35312 2003-03-18  Bruno Haible  <bruno@clisp.org>
35313
35314         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
35315         checking.
35316         * m4/onceonly_2_57.m4: Likewise.
35317
35318 2003-03-17  Bruno Haible  <bruno@clisp.org>
35319
35320         * m4/onceonly.m4: Require autoconf 2.54 or newer.
35321         (m4_quote): Remove macro.
35322         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
35323
35324 2003-03-14  Jim Meyering  <jim@meyering.net>
35325
35326         Merge changes from Coreutils.
35327         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
35328         to be const, in order to avoid warnings.
35329         (obstack_room): Likewise.
35330         (obstack_empty_p): Likewise.
35331
35332 2003-03-14  Bruno Haible  <bruno@clisp.org>
35333
35334         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
35335         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
35336
35337 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35338
35339         Merge changes from Bison.
35340         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
35341         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
35342         when compiling Bison 1.875's `bitset bset = obstack_alloc
35343         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
35344         * lib/hash.c: Include <stdbool.h> unconditionally.
35345
35346 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35347
35348         * m4/onceonly.m4 (m4_quote): New macro.
35349         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
35350         Quote AC_FOREACH variable-expansions properly.
35351
35352 2003-03-13  Paul Eggert  <eggert@twinsun.com>
35353
35354         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
35355
35356 2003-03-09  Paul Eggert  <eggert@twinsun.com>
35357
35358         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
35359         Reported by Bruce Becker; see:
35360         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
35361
35362 2003-03-03  Paul Eggert  <eggert@twinsun.com>
35363             Bruno Haible  <bruno@clisp.org>
35364
35365         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
35366         Reported by John Hughes, see
35367         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
35368
35369 2003-02-20  Bruno Haible  <bruno@clisp.org>
35370
35371         * MODULES.html.sh (func_all_modules): Add poll.
35372
35373 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35374
35375         * modules/poll: New file.
35376
35377 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35378
35379         * lib/poll_.h: New file.
35380         * lib/poll.c: New file.
35381
35382 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
35383
35384         * m4/poll.m4: New file.
35385
35386 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35387
35388         * modules/mathl: New file.
35389
35390 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35391
35392         * lib/mathl.h: New file.
35393         * lib/acosl.c: New file.
35394         * lib/asinl.c: New file.
35395         * lib/atanl.c: New file.
35396         * lib/ceill.c: New file.
35397         * lib/cosl.c: New file.
35398         * lib/expl.c: New file.
35399         * lib/floorl.c: New file.
35400         * lib/frexpl.c: New file.
35401         * lib/ldexpl.c: New file.
35402         * lib/logl.c: New file.
35403         * lib/sincosl.c: New file.
35404         * lib/sinl.c: New file.
35405         * lib/sqrtl.c: New file.
35406         * lib/tanl.c: New file.
35407         * lib/trigl.c: New file.
35408         * lib/trigl.h: New file.
35409
35410 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
35411
35412         * m4/mathl.m4: New file.
35413
35414 2003-02-18  Bruno Haible  <bruno@clisp.org>
35415
35416         * MODULES.html.sh (func_all_modules): Add mathl.
35417
35418 2003-02-17  Bruno Haible  <bruno@clisp.org>
35419
35420         * modules/mkdtemp: New module.
35421         * MODULES.html.sh (func_all_modules): Add it.
35422
35423 2003-02-17  Bruno Haible  <bruno@clisp.org>
35424
35425         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
35426
35427 2003-02-17  Bruno Haible  <bruno@clisp.org>
35428
35429         * lib/mkdtemp.h: New file, from GNU gettext.
35430         * lib/mkdtemp.c: New file, from GNU gettext.
35431
35432 2003-02-02  Jim Meyering  <jim@meyering.net>
35433
35434         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
35435         e.g. glibc-2.2.93.
35436
35437 2003-01-31  Bruno Haible  <bruno@clisp.org>
35438
35439         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
35440         'rpl_rename'.
35441         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
35442         'rpl_strnlen'.
35443         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
35444         'rpl_strtod'.
35445         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
35446         'rpl_utime'.
35447
35448 2003-01-31  Bruno Haible  <bruno@clisp.org>
35449
35450         * lib/rename.c: #undef rename before defining rpl_rename.
35451         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
35452
35453 2003-01-30  Bruno Haible  <bruno@clisp.org>
35454
35455         * modules/vasnprintf, modules/vasprintf: New modules.
35456         * MODULES.html.sh (func_all_modules): Add them.
35457
35458 2003-01-30  Bruno Haible  <bruno@clisp.org>
35459
35460         * m4/signed.m4: New file, from GNU gettext.
35461         * m4/longdouble.m4: New file, from GNU gettext.
35462         * m4/wchar_t.m4: New file, from GNU gettext.
35463         * m4/wint_t.m4: New file, from GNU gettext.
35464         * m4/vasnprintf.m4: New file.
35465         * m4/vasprintf.m4: New file.
35466
35467 2003-01-30  Bruno Haible  <bruno@clisp.org>
35468
35469         * lib/printf-args.h: New file, from GNU gettext.
35470         * lib/printf-args.c: New file, from GNU gettext.
35471         * lib/printf-parse.h: New file, from GNU gettext.
35472         * lib/printf-parse.c: New file, from GNU gettext.
35473         * lib/vasnprintf.h: New file, from GNU gettext.
35474         * lib/vasnprintf.c: New file, from GNU gettext.
35475         * lib/asnprintf.c: New file, from GNU gettext.
35476         * lib/vasprintf.h: New file, from GNU gettext with modifications.
35477         * lib/vasprintf.c: New file, from GNU gettext.
35478         * lib/asprintf.c: New file, from GNU gettext.
35479
35480 2003-01-29  Bruno Haible  <bruno@clisp.org>
35481
35482         * modules/stpncpy: New module.
35483         * MODULES.html.sh (func_all_modules): Add it.
35484
35485 2003-01-29  Bruno Haible  <bruno@clisp.org>
35486
35487         * m4/stpncpy.m4: New file.
35488
35489 2003-01-29  Bruno Haible  <bruno@clisp.org>
35490
35491         * lib/stpncpy.h: New file, from GNU gettext with modifications.
35492         * lib/stpncpy.c: New file, from GNU gettext with modifications.
35493
35494 2003-01-28  Bruno Haible  <bruno@clisp.org>
35495
35496         * modules/c-ctype: New module.
35497         * MODULES.html.sh (func_all_modules): Add it.
35498
35499 2003-01-28  Bruno Haible  <bruno@clisp.org>
35500
35501         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
35502         Paul Eggert.
35503         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
35504         Paul Eggert.
35505
35506 2003-01-27  Bruno Haible  <bruno@clisp.org>
35507
35508         * modules/xsetenv: New module.
35509         * MODULES.html.sh (func_all_modules): Add it.
35510
35511 2003-01-27  Bruno Haible  <bruno@clisp.org>
35512
35513         * lib/xsetenv.h: New file, from GNU gettext.
35514         * lib/xsetenv.c: New file, from GNU gettext.
35515
35516 2003-01-23  Jim Meyering  <jim@meyering.net>
35517
35518         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
35519         from working on systems without dirfd (at least Irix and OSF1/Tru64).
35520
35521 2003-01-23  Bruno Haible  <bruno@clisp.org>
35522
35523         * modules/minmax: New module.
35524         * MODULES.html.sh (func_all_modules): Add it.
35525
35526 2003-01-23  Bruno Haible  <bruno@clisp.org>
35527
35528         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
35529         Eggert.
35530
35531 2003-01-22  Bruno Haible  <bruno@clisp.org>
35532
35533         * modules/exit: New module.
35534         * MODULES.html.sh (func_all_modules): Add it.
35535
35536 2003-01-22  Bruno Haible  <bruno@clisp.org>
35537
35538         * lib/exit.h: New file, from GNU gettext.
35539
35540 2003-01-19  Bruno Haible  <bruno@clisp.org>
35541
35542         * gnulib-tool: Recognize option --extract-maintainer.
35543         (func_get_maintainer): New function.
35544         * modules/*: Add Maintainer entry.
35545
35546 2003-01-16  Jim Meyering  <jim@meyering.net>
35547
35548         * m4/regex.m4: The `regex' struct is both input and output.
35549         Initialize it before each use.  Patch by Tim Waugh.
35550
35551 2003-01-16  Bruno Haible  <bruno@clisp.org>
35552
35553         * MODULES.html.sh: Add a table of contents. Add the module name as
35554         leftmost column. Add hyperlinks.
35555
35556 2003-01-15  Bruno Haible  <bruno@clisp.org>
35557
35558         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
35559
35560 2003-01-15  Bruno Haible  <bruno@clisp.org>
35561
35562         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
35563         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
35564         suffix.
35565
35566 2003-01-15  Bruno Haible  <bruno@clisp.org>
35567
35568         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
35569
35570 2003-01-15  Bruno Haible  <bruno@clisp.org>
35571
35572         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
35573         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
35574
35575 2003-01-14  Jim Meyering  <jim@meyering.net>
35576
35577         * lib/same.c (same_name): Tweak a comment.
35578
35579 2003-01-14  Bruno Haible  <bruno@clisp.org>
35580
35581         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
35582         when a string comparison is sufficient.
35583
35584 2003-01-14  Bruno Haible  <bruno@clisp.org>
35585
35586         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
35587         'unsigned int'.
35588
35589 2003-01-14  Bruno Haible  <bruno@clisp.org>
35590
35591         * lib/hash-pjw.c: Add comment about low quality of this function.
35592
35593 2003-01-13  Bruno Haible  <bruno@clisp.org>
35594
35595         * modules/stpcpy: Distribute lib/stpcpy.h.
35596         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
35597
35598 2003-01-13  Bruno Haible  <bruno@clisp.org>
35599
35600         * modules/*: Add a description.
35601         * modules/strpbrk: Fix Makefile.am snippet.
35602         * modules/strtoimax: Fix dependencies.
35603         * modules/strtoumax: Likewise.
35604
35605 2003-01-13  Bruno Haible  <bruno@clisp.org>
35606
35607         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
35608         * modules/alloca (Makefile.am): All object files depend on alloca.h.
35609         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
35610
35611 2003-01-13  Bruno Haible  <bruno@clisp.org>
35612
35613         * gnulib-tool (func_create_testdir): Store config/* files in the main
35614         directory.
35615         * config.rpath: Move to ...
35616         * config/config.rpath: ... here.
35617         * modules/gettext: Contains config/config.rpath, not config.rpath.
35618         * modules/iconv: Likewise.
35619
35620 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35621
35622         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35623         to avoid collisions with libcurses and libreadline.
35624
35625         * m4/getstr.m4: Remove.
35626         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
35627
35628 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35629
35630         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35631         to avoid collisions with libcurses and libreadline.
35632
35633         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
35634         * lib/getstr.h, getstr.c: Remove.
35635         * lib/getline.c: Include "getline.h", to check interface.
35636         Move body of old getstr.c here: this defines MIN_CHUNK and
35637         declares getdelim2, which is renamed from getstr.
35638         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
35639
35640         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
35641         All uses changed.
35642         * lib/linebuffer.h: Likewise.
35643         (readline): Remove backward-compatibility macro.
35644
35645 2003-01-12  Paul Eggert  <eggert@twinsun.com>
35646
35647         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
35648         to avoid collisions with libcurses and libreadline.
35649         * getstr: Remove.
35650         * MODULES.html.sh: Remove getstr.
35651         * modules/getline: Depend on unlocked-io, not getstr.
35652
35653 2003-01-12  Jim Meyering  <jim@meyering.net>
35654
35655         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
35656
35657 2003-01-10  Bruno Haible  <bruno@clisp.org>
35658
35659         * modules/alloca: Change Makefile.am requirements. Simplify Include
35660         requirements. Add lib/alloca_.h to file list.
35661
35662 2003-01-10  Bruno Haible  <bruno@clisp.org>
35663
35664         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
35665
35666 2003-01-10  Bruno Haible  <bruno@clisp.org>
35667
35668         * lib/alloca_.h: New file.
35669         * lib/getdate.y: Unconditionally include alloca.h.
35670         * lib/makepath.c: Likewise.
35671         * lib/setenv.c: Likewise.
35672         * lib/userspec.c: Likewise.
35673
35674 2003-01-09  Karl Berry  <karl@gnu.org>
35675
35676         * MODULES.html.sh: include `dirname $0` in PATH, to find
35677         gnulib-tool.
35678
35679 2003-01-09  Bruno Haible  <bruno@clisp.org>
35680
35681         * modules/stdbool: Change configure.ac, Makefile.am requirements.
35682         Simplify Include requirements. Add lib/stdbool.h.in to file list.
35683
35684 2003-01-09  Bruno Haible  <bruno@clisp.org>
35685
35686         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
35687
35688 2003-01-09  Bruno Haible  <bruno@clisp.org>
35689
35690         * lib/stdbool.h.in: New file.
35691
35692 2003-01-09  Bruno Haible  <bruno@clisp.org>
35693
35694         * gnulib-tool (func_all_modules): Ignore files ending in ~.
35695         * MODULES.html.sh: Likewise.
35696
35697 2003-01-08  Jim Meyering  <jim@meyering.net>
35698
35699         * lib/full-write.c: Undefine and define-away `const' after inclusion
35700         of errno.h, not before.  Suggestion from Bruno Haible.
35701
35702 2003-01-08  Bruno Haible  <bruno@clisp.org>
35703
35704         * modules/full-read: Depend on full-write.
35705
35706 2003-01-08  Bruno Haible  <bruno@clisp.org>
35707
35708         * lib/safe-read.c: Include specification header first, to ensure its
35709         selfcontainedness.
35710         * lib/full-write.c: Likewise.
35711
35712 2003-01-07  Jim Meyering  <jim@meyering.net>
35713
35714         * lib/full-write.c: Rework so that it may serve to define full_read,
35715         too.
35716         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
35717
35718 2003-01-07  Bruno Haible  <bruno@clisp.org>
35719
35720         * lib/strtoimax.c: Include <stdint.h> as an alternative to
35721         <inttypes.h>.
35722         * lib/xstrtol.h: Likewise.
35723         * lib/xstrtoimax.c: Likewise.
35724         * lib/xstrtoumax.c: Likewise.
35725         * lib/human.h: Likewise.
35726
35727         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
35728         on systems that have <inttypes.h> but not <stdint.h>.
35729
35730 2003-01-07  Bruno Haible  <bruno@clisp.org>
35731
35732         * MODULES.html.sh: Add copyright notice.
35733         (missed_files): Omit CVS directory entries.
35734         (func_module): Make it work with sed-3.02.
35735         * MODULES.txt: Remove file.
35736
35737 2003-01-06  Jim Meyering  <jim@meyering.net>
35738
35739         * lib/version-etc.c: Update year in translatable copyright string.
35740
35741 2003-01-03  Karl Berry  <karl@gnu.org>
35742
35743         * config/config.{guess,sub}: update from prep.
35744
35745 2003-01-02  Karl Berry  <karl@gnu.org>
35746
35747         * doc/COPYING.DOC: belatedly updated to 1.2.
35748
35749 2003-01-01  Karl Berry  <karl@gnu.org>
35750
35751         * gnulib-tool (func_verify_module): report module name $module in
35752         error message, not $1.
35753         * gnulib-tool (create-testdir): don't complain if destdir couldn't
35754         be created, only if it doesn't exist.
35755         * gnulib-tool (last_checkin_date): don't expand the $Date here.
35756
35757 2002-12-31  Paul Eggert  <eggert@twinsun.com>
35758
35759         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
35760
35761 2002-12-31  Paul Eggert  <eggert@twinsun.com>
35762
35763         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
35764         memcmp if strcoll doesn't work.
35765
35766 2002-12-31  Bruno Haible  <bruno@clisp.org>
35767
35768         * lib/utime.c (utime_null): No need to call ftruncate if the file was
35769         nonempty.
35770
35771 2002-12-31  Bruno Haible  <bruno@clisp.org>
35772
35773         * lib/memcoll.c (STRCOLL): New macro.
35774         (memcoll): Use it.
35775
35776 2002-12-31  Bruno Haible  <bruno@clisp.org>
35777
35778         * lib/localcharset.h: New file.
35779         * lib/localcharset.c: Include it.
35780         * lib/unicodeio.c: Likewise.
35781
35782 2002-12-31  Bruno Haible  <bruno@clisp.org>
35783
35784         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
35785         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
35786
35787 2002-12-31  Bruno Haible  <bruno@clisp.org>
35788
35789         * lib/getline.h: Include <stddef.h>, for size_t.
35790
35791         * lib/unicodeio.h: Include <stddef.h>, for size_t.
35792         * lib/unicodeio.c: Don't include <stddef.h>.
35793
35794 2002-12-31  Bruno Haible  <bruno@clisp.org>
35795
35796         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
35797         HAVE_TM_ZONE.
35798
35799 2002-12-24  Karl Berry  <karl@gnu.org>
35800
35801         * config/config.guess: update from prep.
35802
35803 2002-12-24  Bruno Haible  <bruno@clisp.org>
35804
35805         General infrasructure.
35806         * m4/README: Rewritten.
35807         * m4/onceonly.m4: New file.
35808         * m4/onceonly_2_57.m4: New file.
35809
35810         Module atexit.
35811         * m4/atexit.m4: New file.
35812
35813         Module strtod.
35814         * m4/strtod.m4: New file.
35815
35816         Module strtol.
35817         * m4/strtol.m4: New file.
35818
35819         Module strtoul.
35820         * m4/strtoul.m4: New file.
35821
35822         Module memchr.
35823         * m4/memchr.m4: New file.
35824
35825         Module memcmp.
35826         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
35827         (jm_FUNC_MEMCMP): Invoke it.
35828
35829         Module memcpy.
35830         * m4/memcpy.m4: New file.
35831
35832         Module memmove.
35833         * m4/memmove.m4: New file.
35834
35835         Module memset.
35836         * m4/memset.m4: New file.
35837
35838         Module strcspn.
35839         * m4/strcspn.m4: New file.
35840
35841         Module strpbrk.
35842         * m4/strpbrk.m4: New file.
35843
35844         Module strstr.
35845         * m4/strstr.m4: New file.
35846
35847         Module strerror.
35848         * m4/strerror.m4: New file.
35849
35850         Module mktime.
35851         * m4/mktime.m4: Renamed from jm-mktime.m4.
35852         (gl_PREREQ_MKTIME): New macro.
35853         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
35854
35855         Module malloc.
35856         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
35857         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
35858         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
35859
35860         Module realloc.
35861         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
35862         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
35863         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
35864
35865         Module strftime.
35866         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
35867         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
35868         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
35869         gl_TM_GMTOFF.
35870         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
35871
35872         Module xalloc.
35873         * m4/xalloc.m4: New file.
35874
35875         Module alloca.
35876         * m4/alloca.m4: New file.
35877
35878         Module putenv.
35879         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
35880         (jm_FUNC_PUTENV): Invoke it.
35881
35882         Module setenv.
35883         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
35884         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
35885         when invoked twice.
35886         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
35887         gt_FUNC_SETENV.
35888
35889         Module memrchr.
35890         * m4/memrchr.m4: New file.
35891
35892         Module stpcpy.
35893         * m4/stpcpy.m4: New file.
35894
35895         Module strcase.
35896         * m4/strcase.m4: New file.
35897
35898         Module strdup.
35899         * m4/strdup.m4: New file.
35900
35901         Module strnlen.
35902         * m4/strnlen.m4: New file.
35903
35904         Module strndup.
35905         * m4/strndup.m4: New file.
35906
35907         Module xstrtod.
35908         * m4/xstrtod.m4: New file.
35909
35910         Module xstrtol.
35911         * m4/xstrtol.m4: New file.
35912
35913         Module getdate.
35914         * m4/getdate.m4: New file.
35915
35916         Module unlocked-io.
35917         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
35918         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
35919         * m4/jm-glibc-io.m4n: Remove file.
35920
35921         Module long-options.
35922         * m4/long-options.m4: New file.
35923
35924         Module md5.
35925         * m4/md5.m4: New file.
35926
35927         Module sha.
35928         * m4/sha.m4: New file.
35929
35930         Module getstr.
35931         * m4/getstr.m4: New file.
35932
35933         Module getline.
35934         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
35935         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
35936         <sys/types.h>, for size_t. Use the function name gnu_getline, not
35937         simply getline. Infoke gl_PREREQ_GETLINE.
35938
35939         Module obstack.
35940         * m4/obstack.m4: New file.
35941
35942         Module hash.
35943         * m4/hash.m4: New file.
35944
35945         Module readtokens.
35946         * m4/readtokens.m4: New file.
35947
35948         Module strverscmp.
35949         * m4/strverscmp.m4: New file.
35950
35951         Module stdbool.
35952         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
35953         OSF/1.
35954
35955         Module strtoll.
35956         * m4/strtoll.m4: New file.
35957
35958         Module strtoull.
35959         * m4/strtoull.m4: New file.
35960
35961         Module strtoimax.
35962         * m4/strtoimax.m4: New file.
35963
35964         Module strtoumax.
35965         * m4/strtoumax.m4: New file.
35966
35967         Module xstrtoimax.
35968         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
35969         jm_AC_PREREQ_XSTRTOIMAX.
35970         Moved the strtol prerequisites to strtol.m4.
35971         Moved the strtoll prerequisites to strtoll.m4.
35972         Moved the strtoimax prerequisites to strtoimax.m4.
35973
35974         Module xstrtoumax.
35975         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
35976         jm_AC_PREREQ_XSTRTOUMAX.
35977         Moved the strtoul prerequisites to strtoul.m4.
35978         Moved the strtoull prerequisites to strtoull.m4.
35979         Moved the strtoumax prerequisites to strtoumax.m4.
35980
35981         Module chown.
35982         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
35983         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
35984
35985         Module dup2.
35986         * m4/dup2.m4: New file.
35987
35988         Module ftruncate.
35989         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
35990         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
35991
35992         Module getgroups.
35993         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
35994         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
35995
35996         Module gettimeofday.
35997         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
35998         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
35999         gl_PREREQ_GETTIMEOFDAY.
36000
36001         Module mkdir.
36002         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
36003         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
36004
36005         Module mkstemp.
36006         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
36007         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
36008         jm_AC_TYPE_UINTMAX_T.
36009         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
36010
36011         Module stat.
36012         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
36013         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
36014
36015         Module lstat.
36016         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
36017         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
36018
36019         Module timespec.
36020         * m4/timespec.m4 (gl_TIMESPEC): New macro.
36021         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
36022         * m4/st_mtim.m4: Indentation.
36023
36024         Module nanosleep.
36025         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
36026         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
36027         gl_PREREQ_NANOSLEEP.
36028
36029         Module regex.
36030         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
36031         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
36032         (gl_REGEX): New macro.
36033
36034         Module rename.
36035         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
36036         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
36037
36038         Module rmdir.
36039         * m4/rmdir.m4: New file.
36040
36041         Module utime.
36042         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
36043         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
36044         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
36045
36046         Module dirname.
36047         * m4/dirname.m4: New file.
36048
36049         Module getopt.
36050         * m4/getopt.m4: New file.
36051
36052         Module unistd-safer.
36053         * m4/unistd-safer.m4: New file.
36054
36055         Module fnmatch.
36056         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
36057         declaration.
36058         (gl_PREREQ_FNMATCH_EXTRA): New macro.
36059         (gl_FUNC_FNMATCH_POSIX): New macro.
36060         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
36061         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
36062         simply fnmatch.
36063
36064         Module exclude.
36065         * m4/exclude.m4: New file.
36066
36067         Module human.
36068         * m4/human.m4: New file.
36069
36070         Module acl.
36071         * m4/acl.m4: Nop.
36072
36073         Module backupfile.
36074         * m4/backupfile.m4: New file.
36075         * m4/d-ino.m4: Indentation.
36076
36077         Module fsusage.
36078         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
36079         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
36080         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
36081
36082         Module dirfd.
36083         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
36084         requirements.
36085
36086         Module euidaccess.
36087         * m4/euidaccess.m4: New file.
36088
36089         Module file-type.
36090         * m4/file-type.m4: New file.
36091
36092         Module fileblocks.
36093         * m4/fileblocks.m4: New file.
36094
36095         Module filemode.
36096         * m4/filemode.m4: New file.
36097
36098         Module isdir.
36099         * m4/isdir.m4: New file.
36100
36101         Module lchown.
36102         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
36103         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
36104
36105         Module makepath.
36106         * m4/makepath.m4: New file.
36107
36108         Module modechange.
36109         * m4/modechange.m4: New file.
36110
36111         Module mountlist.
36112         * m4/mountlist.m4: New file.
36113         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
36114         Indentation.
36115
36116         Module path-concat.
36117         * m4/path-concat.m4: New file.
36118
36119         Module pathmax.
36120         * m4/pathmax.m4: New file.
36121
36122         Module same.
36123         * m4/same.m4: New file.
36124
36125         Module save-cwd.
36126         * m4/save-cwd.m4: New file.
36127
36128         Module savedir.
36129         * m4/savedir.m4: New file.
36130
36131         Module xgetcwd.
36132         * m4/xgetcwd.m4: New file.
36133         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
36134
36135         Module xreadlink.
36136         * m4/xreadlink.m4: New file.
36137
36138         Module safe-read.
36139         * m4/safe-read.m4: New file.
36140
36141         Module safe-write.
36142         * m4/safe-write.m4: New file.
36143
36144         Module closeout.
36145         * m4/closeout.m4: New file.
36146
36147         Module stdio-safer.
36148         * m4/stdio-safer.m4: New file.
36149
36150         Module getpass.
36151         * m4/getpass.m4: New file.
36152
36153         Module getugroups.
36154         * m4/getugroups.m4: New file.
36155
36156         Module group-member.
36157         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
36158         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
36159
36160         Module idcache.
36161         * m4/idcache.m4: New file.
36162
36163         Module userspec.
36164         * m4/userspec.m4: New file.
36165
36166         Module gettime.
36167         * m4/clock_time.m4: New file.
36168         * m4/gettime.m4: New file.
36169
36170         Module settime.
36171         * m4/settime.m4: New file.
36172
36173         Module posixtm.
36174         * m4/posixtm.m4: New file.
36175
36176         Module gethostname.
36177         * m4/gethostname.m4: New file.
36178
36179         Module canon-host.
36180         * m4/canon-host.m4: New file.
36181
36182         Module gettext.
36183         * m4/codeset.m4: New file, from gettext-0.11.5.
36184         * m4/gettext.m4: New file, from gettext-0.11.5.
36185         * m4/glibc21.m4: New file, from gettext-0.11.5.
36186         * m4/iconv.m4: New file, from gettext-0.11.5.
36187         * m4/intdiv0.m4: New file, from gettext-0.11.5.
36188         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
36189         * m4/inttypes.m4: New file, from gettext-0.11.5.
36190         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
36191         * m4/isc-posix.m4: New file, from gettext-0.11.5.
36192         * m4/lcmessage.m4: New file, from gettext-0.11.5.
36193         * m4/lib-ld.m4: New file, from gettext-0.11.5.
36194         * m4/lib-link.m4: New file, from gettext-0.11.5.
36195         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
36196         * m4/progtest.m4: New file, from gettext-0.11.5.
36197         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
36198         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
36199         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
36200
36201         Module localcharset.
36202         * m4/localcharset.m4: New file.
36203
36204         Module hard-locale.
36205         * m4/hard-locale.m4: New file.
36206
36207         Module mbswidth.
36208         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
36209         onceonly macros.
36210         * m4/mbrtowc.m4: Add comment.
36211
36212         Module memcasecmp.
36213         * m4/memcasecmp.m4: New file.
36214
36215         Module memcoll.
36216         * m4/memcoll.m4: New file.
36217
36218         Module unicodeio.
36219         * m4/unicodeio.m4: New file.
36220
36221         Module rpmatch.
36222         * m4/rpmatch.m4: New file.
36223
36224         Module yesno.
36225         * m4/yesno.m4: New file.
36226
36227         Module exitfail.
36228         * m4/exitfail.m4: New file.
36229
36230         Module c-stack.
36231         * m4/c-stack.m4 (gl_C_STACK): New macro.
36232         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
36233
36234         Module error.
36235         * m4/error.m4 (gl_ERROR): New macro.
36236         (jm_PREREQ_ERROR): Use onceonly macros.
36237
36238         Module fatal.
36239         * m4/fatal.m4: New file.
36240
36241         Module getloadavg.
36242         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
36243         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
36244
36245         Module getpagesize.
36246         * m4/getpagesize.m4: New file.
36247
36248         Module getusershell.
36249         * m4/getusershell.m4: New file.
36250
36251         Module physmem.
36252         * m4/physmem.m4: New file.
36253
36254         Module posixver.
36255         * m4/posixver.m4: New file.
36256
36257         Module quotearg.
36258         * m4/quotearg.m4: New file.
36259
36260         Module quote.
36261         * m4/quote.m4: New file.
36262
36263         Module readutmp.
36264         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
36265
36266         Module sig2str.
36267         * m4/sig2str.m4: New file.
36268
36269         Other.
36270         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
36271         ulonglong.m4.
36272         * m4/intmax_t.m4: New file.
36273         * m4/d-type.m4: Indentation.
36274         * m4/jm-macros.m4: Update.
36275         * m4/prereq.m4 (jm_PREREQ): Update.
36276         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
36277         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
36278         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
36279         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
36280         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
36281         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
36282         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
36283         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
36284         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
36285         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
36286         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
36287         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
36288         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
36289         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
36290         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
36291         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
36292         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
36293         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
36294         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
36295
36296 2002-12-24  Bruno Haible  <bruno@clisp.org>
36297
36298         * MODULES.txt: Update according to m4/ changes.
36299
36300         Module gettext.
36301         * config.rpath: New file, from gettext-0.11.5.
36302
36303         * modules/*: New module descriptions.
36304         * gnulib-tool: New file.
36305         * MODULES.html.sh: New file.
36306
36307 2002-12-21  Karl Berry  <karl@gnu.org>
36308
36309         * doc/fdl.texi: update to version 1.2.
36310
36311 2002-12-19  Karl Berry  <karl@gnu.org>
36312
36313         * config/config.guess: update from prep.
36314
36315 2002-12-18  Bruno Haible  <bruno@clisp.org>
36316
36317         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
36318         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
36319
36320 2002-12-17  Bruno Haible  <bruno@clisp.org>
36321
36322         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
36323         stdlib.h, string.h.
36324
36325 2002-12-17  Bruno Haible  <bruno@clisp.org>
36326
36327         * lib/canon-host.c (strdup): Remove unused declaration.
36328
36329         * lib/fsusage.c: Include full_read.h.
36330         (get_fs_usage): Use full_read instead of safe_read.
36331
36332         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
36333
36334 2002-12-12  Karl Berry  <karl@gnu.org>
36335
36336         * config/config.guess: update from prep.
36337
36338 2002-12-11  Bruno Haible  <bruno@clisp.org>
36339
36340         * m4/setenv.m4: New file, from gettext-0.11.5.
36341
36342 2002-12-11  Bruno Haible  <bruno@clisp.org>
36343
36344         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
36345         not unsetenv().
36346         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
36347         modifications:
36348
36349         2002-12-11  Bruno Haible  <bruno@clisp.org>
36350
36351                 * setenv.c (alloca): Fall back to malloc.
36352                 (freea): New macro.
36353                 (setenv): Use freea() to free memory allocated with alloca().
36354
36355         2002-11-13  Bruno Haible  <bruno@clisp.org>
36356
36357                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
36358                 function declarations.
36359                 * unsetenv.c (unsetenv): Likewise.
36360
36361         2002-03-04  Bruno Haible  <bruno@clisp.org>
36362
36363                 Portability to AIX 4.3.3.
36364                 * unsetenv.c: New file, extracted from setenv.c.
36365                 * setenv.c: Move the unsetenv() function to unsetenv.c.
36366
36367         2001-12-20  Bruno Haible  <bruno@clisp.org>
36368
36369                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
36370                 use malloc instead. For SunOS 4.
36371
36372         2001-12-11  Bruno Haible  <bruno@clisp.org>
36373
36374                 * setenv.c: Declare alloca.
36375                 (compar_fn_t): New typedef.
36376                 (KNOWN_VALUE, STORE_VALUE): Use it.
36377
36378         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
36379         setenv.h.
36380
36381 2002-12-10  Paul Eggert  <eggert@twinsun.com>
36382
36383         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
36384         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
36385         Choose values that are less likely to collide with system fnmatch
36386         options.
36387         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
36388         defined (e.g., a pure POSIX system).
36389         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
36390         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
36391
36392 2002-12-06  Paul Eggert  <eggert@twinsun.com>
36393
36394         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
36395         a pain in practice to deal with generated m4 files.  This change
36396         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
36397
36398         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
36399         and jm-glibc-io.m4, as they are no longer a special case.
36400         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
36401         kludge and the auto-generation stuff.  Check only whether the
36402         functions are declared, not whether they exist, since older hosts
36403         that don't declare the functions can't use the optimization anyway.
36404
36405 2002-12-06  Jim Meyering  <jim@meyering.net>
36406
36407         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
36408
36409         Merge in changes from libc's misc/error.c, in preparation
36410         for the merge of gnulib's changes back into libc.
36411
36412         * lib/error.c (_): Define only if not already defined.
36413         Move definition to follow all #include directives.
36414         Include unlocked-io.h only if !_LIBC.
36415         [_LIBC]: Include <libio/libioP.h>.
36416         [USE_IN_LIBIO]: Include <libio/iolibio.h>
36417         (fflush): Tweak definition to use INTUSE.
36418         (putc): Define.
36419
36420 2002-12-05  Paul Eggert  <eggert@twinsun.com>
36421
36422         * lib/alloca.c [defined emacs]: Include "lisp.h".
36423         (xalloc_die) [defined emacs]: New macro.
36424         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
36425         [! defined emacs]: Include <xalloc.h>.
36426         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
36427         (pointer): Typedef to POINTER_TYPE *.
36428         (malloc): Remove decl; we now always use xmalloc.
36429         (alloca): Use old-style definition, since Emacs needs this.
36430         Check for arithmetic overflow when computing combined size.
36431
36432 2002-12-04  Paul Eggert  <eggert@twinsun.com>
36433
36434         Do not generate unlocked-io.h automatically, since it's easier to
36435         maintain it by hand.
36436
36437         * lib/unlocked-io.h: New file, from GNU diffutils,
36438         but with proper copyright notice and attribution.
36439         * lib/gen-uio: Remove.
36440         * lib/Makefile.am: Add copyright notice.
36441         (libfetish_a_SOURCES): Add unlocked-io.h.
36442         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
36443         (DISTCLEANFILES, io_functions): Remove macros.
36444         (EXTRA_DIST): Remove gen_uio.
36445         (unlocked-io.h): Remove rule.
36446
36447 2002-12-04  Jim Meyering  <jim@meyering.net>
36448
36449         Reflect the fact that stat.c and lstat.c are no longer generated.
36450         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
36451         (DISTCLEANFILES): Likewise.
36452         (EXTRA_DIST): Likewise.
36453         (all_local): Don't depend on stat.c or lstat.c.
36454         (stat.c, lstat.c): Remove rules.
36455         (EXTRA_DIST): Remove xstat.in.
36456
36457         * lib/xstat.in: Remove file.  Contents moved into stat.c.
36458         * lib/stat.c: New file.  Contents mostly from xstat.in.
36459         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
36460         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
36461
36462         * lib/safe-read.c: Rework so that it may serve to define safe_write,
36463         too.
36464         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
36465
36466 2002-12-03  Jim Meyering  <jim@meyering.net>
36467
36468         * lib/safe-read.c, safe-write.c: Change variable names and comments,
36469         but not semantics, to minimize the differences between these two files.
36470         (safe_read): Change comment to mention SAFE_READ_ERROR.
36471
36472         * lib/safe-read.c (IS_EINTR): Define.
36473         (safe_read): Use IS_EINTR in place of in-function cpp directives.
36474
36475 2002-12-02  Jim Meyering  <jim@meyering.net>
36476
36477         * lib/safe-read.c (EINTR): Define.
36478         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
36479         (INT_MAX): Provide fallback.
36480         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
36481
36482         * lib/safe-read.h (SAFE_READ_ERROR): Define.
36483
36484 2002-12-02  Bruno Haible  <bruno@clisp.org>
36485
36486         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
36487         Define, taken from safe-read.c.
36488         (INT_MAX): Provide fallback.
36489         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
36490         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
36491
36492         * lib/safe-read.c (EINTR): Remove definition.
36493         (safe_read): Don't use EINTR if it is absent.
36494
36495 2002-12-01  Jim Meyering  <jim@meyering.net>
36496
36497         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
36498         zero.
36499         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
36500
36501 2002-11-27  Paul Eggert  <eggert@twinsun.com>
36502
36503         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
36504         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
36505         with `if (! (value < limit)) abort ();', for readability.
36506
36507 2002-11-26  Karl Berry  <karl@gnu.org>
36508
36509         * lib/strdup.c: copy from libc again, with jim's ok.
36510         * lib/.cppi-disable: re-add strdup.c
36511
36512 2002-11-25  Karl Berry  <karl@gnu.org>
36513
36514         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
36515         instead of "strtol.c".
36516
36517 2002-11-25  Karl Berry  <karl@gnu.org>
36518
36519         * config/install-sh: update from automake for variable quoting, $0 in
36520         error msgs, etc.
36521
36522         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
36523         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
36524         entry.
36525
36526 2002-11-25  Jim Meyering  <jim@meyering.net>
36527
36528         * lib/mktime.c: Sync from libc, now that it has the latest fix.
36529
36530 2002-11-24  Karl Berry  <karl@gnu.org>
36531
36532         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
36533         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
36534
36535 2002-11-24  Jim Meyering  <jim@meyering.net>
36536
36537         Update from coreutils:
36538
36539         * lib/mktime.c: Merge in changes from libc.
36540
36541         Avoid a link-time failure on some Linux systems.
36542         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
36543         (otherwise).
36544         (__mon_yday): Declare with the STATIC attribute.
36545         (__mktime_internal): Likewise.
36546         Based on a report from Greg Schafer.
36547
36548 2002-11-23  Jim Meyering  <jim@meyering.net>
36549
36550         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
36551         Use `unsigned', not `int', as type of index.
36552
36553         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
36554
36555         * lib/fsusage.c: Remove unneeded parentheses around operands of
36556         `defined'.
36557
36558 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36559
36560         * lib/quotearg.h: Allow multiple inclusion by surrounding with
36561         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
36562         so that we can be included first.
36563         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
36564         * lib/quotearg.c: Include quotearg.h immediately after config.h.
36565         No need to include stddef.h or sys/types.h any more.
36566         Surround local include files with "", not "<>".
36567         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
36568         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
36569         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
36570         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
36571         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
36572         (ISPRINT): Remove; no longer needed now that we assume C89.
36573
36574         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
36575         Preserve errno.
36576
36577         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
36578         quotearg_char): Use SIZE_MAX rather than
36579         (size_t) -1 when we are talking about "infinity".
36580
36581         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
36582
36583 2002-11-22  Paul Eggert  <eggert@twinsun.com>
36584
36585         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
36586         hint that one should use `if (! x) abort ();' rather than `assert
36587         (x);', and anyway it's one less thing to worry about configuring.
36588         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
36589         hash_rehash, hash_insert): Use abort rather than assert.
36590
36591 2002-11-22  Bruno Haible  <bruno@clisp.org>
36592
36593         * lib/safe-read.h: Assume C89. Add comments.
36594         (safe_read): Change return type to size_t.
36595         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
36596         byte counts > SSIZE_MAX correctly.
36597         * lib/safe-write.h: New file.
36598         * lib/safe-write.c: New file.
36599         * lib/full-read.h: New file.
36600         * lib/full-read.c: New file.
36601         * lib/full-write.h: Assume C89. Add comments.
36602         * lib/full-write.c: Include safe-write.h.
36603         (full_write): Rewritten to use safe_write.
36604         Suggested by Jim Meyering and Paul Eggert.
36605
36606 2002-11-21  Jim Meyering  <jim@meyering.net>
36607
36608         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
36609
36610         Merge in changes from the coreutils.
36611
36612         2002-09-25  Paul Eggert  <eggert@twinsun.com>
36613         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
36614         <stdint.h>.
36615         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
36616         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
36617         int.  Work more efficiently if X is the same width as uintmax_t.
36618         Do not compare X to -1, to avoid bogus compiler warning.
36619         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
36620         Don't assume that f_frsize and f_bsize are the same type.
36621
36622         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
36623         warning on FreeBSD.
36624
36625         * lib/makepath.c (make_path): Restore umask *before* creating the final
36626         component.
36627         (make_path): Minor reformatting.
36628
36629         * lib/xmalloc.c: Adjust to work with new autoconf macros,
36630         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
36631         HAVE_MALLOC/HAVE_REALLOC.
36632
36633         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
36634         dummy ones.  At least on GNU/Linux systems, `auto' means something
36635         else.
36636         From Michael Stone.
36637
36638 2002-11-21  Bruno Haible  <bruno@clisp.org>
36639
36640         Remove case insensitive option matching.
36641         * lib/argmatch.h (argcasematch): Remove declaration.
36642         (ARGCASEMATCH): Remove macro.
36643         (__xargmatch_internal): Remove case_sensitive argument.
36644         (XARGMATCH): Update.
36645         (XARGCASEMATCH): Remove macro.
36646         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
36647         case_sensitive argument.
36648         (argcasematch): Remove function.
36649         (__xargmatch_internal): Remove case_sensitive argument.
36650         (main): Use XARGMATCH instead of XARGCASEMATCH.
36651
36652         * lib/xmalloc.c: Change compile-time error message. Add comment about
36653         required autoconf version.
36654
36655 2002-11-20  Paul Eggert  <eggert@twinsun.com>
36656
36657         Merge argmatch cleanups from Bison.  Assume C89.
36658
36659         * lib/argmatch.c: Include config.h here, not in argmatch.h.
36660         Include stdlib.h, for EXIT_FAILURE.
36661         Always include <string.h>, since we assume C89.
36662         (EXIT_FAILURE): Remove pre-C89 bug workaround.
36663         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
36664         Include <stddef.h> instead, since it's all we need for size_t.
36665         (PARAMS): Remove.  All uses removed.
36666         (ARRAY_CARDINALITY): Do not bother to #undef.
36667         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
36668         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36669         Remove unnecessary parentheses.
36670         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
36671         Insert necessary parentheses.
36672         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
36673         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
36674
36675 2002-11-19  Bruno Haible  <bruno@clisp.org>
36676
36677         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
36678         * lib/mbswidth.h: Include <stddef.h>, for size_t.
36679
36680         * lib/mbswidth.h (PARAMS): Remove macro.
36681         (mbswidth, mbsnwidth): Use ANSI C function declarations.
36682         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
36683
36684         * lib/gcd.h (PARAMS): Remove macro.
36685         (gcd): Use ANSI C function declarations.
36686         * lib/gcd.c (gcd): Likewise.
36687
36688 2002-11-15  Bruno Haible  <bruno@clisp.org>
36689
36690         * lib/strcspn.c: Include <stddef.h>.
36691         (strcspn): Use ANSI C function declaration. Change return type to
36692         size_t. Use NULL.
36693         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
36694         (strpbrk): Use NULL.
36695         * lib/strpbrk.h (PARAMS): Remove macro.
36696         (strpbrk): Use ANSI C function declaration.
36697         * lib/strstr.c: Don't include <sys/types.h>.
36698         * lib/strstr.h (PARAMS): Remove macro.
36699         (strstr): Use ANSI C function declarations.
36700
36701 2002-11-14  Karl Berry  <karl@gnu.org>
36702
36703         * config/mkinstalldirs: `do' on separate line, instead of
36704         `for var; do'.
36705
36706 2002-11-06  Bruno Haible  <bruno@clisp.org>
36707
36708         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
36709         * lib/gcd.c (gcd): Likewise.
36710
36711 2002-11-05  Bruno Haible  <bruno@clisp.org>
36712
36713         * lib/gcd.h: New file, from gettext-0.11.5.
36714         * lib/gcd.c: New file, from gettext-0.11.5.
36715
36716 2002-11-05  Bruno Haible  <bruno@clisp.org>
36717
36718         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36719         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36720         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36721         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
36722
36723         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
36724         <libintl.h>.
36725         * lib/makepath.c: Include gettext.h instead of <locale.h> and
36726         <libintl.h>.
36727
36728         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
36729         * lib/human.c: Include gettext.h instead of <libintl.h>.
36730         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
36731         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
36732         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
36733         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
36734         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
36735         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
36736         (textdomain): Remove definition.
36737         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
36738
36739         * lib/long-options.c: Remove include of <libintl.h> and definition of
36740         _.
36741         * lib/same.c: Remove include of <libintl.h> and definition of _.
36742
36743 2002-11-04  Owen Taylor  <otaylor@redhat.com>
36744
36745         * lib/config.charset: A few additions for Solaris.
36746
36747 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
36748
36749         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
36750         * lib/localcharset.c (locale_charset): Declare as extern "C".
36751
36752 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
36753
36754         * lib/config.charset: msdos in uk_UA uses CP1125.
36755
36756 2002-11-04  Bruno Haible  <bruno@clisp.org>
36757
36758         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
36759         * lib/strcase.h: New file, from GNU gettext-0.11.5.
36760         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
36761         * lib/strstr.h: New file, from GNU gettext-0.11.5.
36762         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
36763
36764 2002-11-04  Bruno Haible  <bruno@clisp.org>
36765
36766         * lib/localcharset.c (locale_charset): Don't return an empty string.
36767
36768 2002-11-04  Bruno Haible  <bruno@clisp.org>
36769
36770         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
36771         aliases.
36772
36773 2002-11-04  Bruno Haible  <bruno@clisp.org>
36774
36775         * lib/config.charset: Update for newest glibc. Add canonical names
36776         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
36777
36778 2002-11-04  Bruno Haible  <bruno@clisp.org>
36779
36780         * lib/config.charset: Add support for NetBSD.
36781
36782 2002-11-04  Bruno Haible  <bruno@clisp.org>
36783
36784         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
36785
36786 2002-11-01  Bruno Haible  <bruno@clisp.org>
36787
36788         * configure.in: Add AC_CONFIG_AUX_DIR call.
36789         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
36790         test/Makefile.
36791         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
36792
36793 2002-09-28  Karl Berry  <karl@gnu.org>
36794
36795         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
36796         installed automake until the next release, since changes have been
36797         made.
36798
36799 2002-09-25  Karl Berry  <karl@gnu.org>
36800
36801         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
36802         * lib/getopt*: copy from libc/posix.
36803         * lib/gettext.h: copy from gettext.
36804         * lib/.cppi-disable: add strdup.c, gettext.h.
36805
36806 2002-09-25  Karl Berry  <karl@gnu.org>
36807
36808         * config/srclist.txt: enable gettext.h check.
36809         * config/config.{guess,sub}: update from prep.
36810         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
36811                 from automake 1.6.3.
36812         See srclist*.
36813
36814 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
36815
36816         * regex.c (PATFETCH): Remove the translating fetch.
36817         (PATFETCH_RAW): Rename to PATFETCH.
36818         (set_image_of_range): New fun.
36819         (SET_RANGE_TABLE_WORK_AREA): Use it.
36820         (regex_compile): Don't translate the pattern chars so eagerly.
36821         Only do it when inserting an `exactn' bytecode or when handling
36822         a char-range.
36823         (mutually_exclusive_p): Avoid empty statement.
36824
36825 2002-07-06  Jim Meyering  <meyering@lucent.com>
36826
36827         * m4/README: Don't mention Makefile.am.in.
36828         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
36829
36830 2002-07-01  Jim Meyering  <meyering@lucent.com>
36831
36832         * lib/c-stack.c: Include sys/time.h.
36833         From Volker Borchert.
36834
36835 2002-06-26  Paul Eggert  <eggert@twinsun.com>
36836
36837         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
36838
36839 2002-06-26  Paul Eggert  <eggert@twinsun.com>
36840
36841         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
36842         New macro.  Use it uniformly instead of
36843         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
36844         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
36845         reported by Vin Shelton.
36846
36847 2002-06-22  Paul Eggert  <eggert@twinsun.com>
36848
36849         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
36850         Do not assume SA_SIGINFO behavior.
36851         Bug reported by Jim Meyering on NetBSD 1.5.2.
36852
36853 2002-06-22  Jim Meyering  <meyering@lucent.com>
36854
36855         * m4/c-stack.m4: New file, from diffutils-2.8.2.
36856         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
36857
36858         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
36859         now that configure.ac uses AC_GNU_SOURCE.
36860         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
36861         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
36862
36863         Update to latest tools.  Suggestions from Paul Eggert.
36864         * m4/stdbool.m4: New file, from diffutils-2.8.2.
36865         * m4/gnu-source.m4: Update from diffutils-2.8.2.
36866         * m4/fnmatch.m4: Likewise.
36867         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
36868         to AC_HEADER_STDBOOL
36869
36870 2002-06-22  Jim Meyering  <meyering@lucent.com>
36871
36872         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
36873         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
36874
36875 2002-06-22  Jim Meyering  <meyering@lucent.com>
36876
36877         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
36878
36879         * lib/exitfail.c, exitfail.h: Likewise.
36880         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
36881
36882         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
36883         of fnmatch.h.
36884         (EXTRA_DIST): Add fnmatch_loop.c.
36885         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
36886
36887         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
36888         * lib/fnmatch.c: Update from diffutils-2.8.2.
36889         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
36890         * lib/fnmatch.h: Remove file.
36891
36892 2002-06-21  Jim Meyering  <meyering@lucent.com>
36893
36894         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
36895         * m4/mbrtowc.m4: Likewise.
36896
36897         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
36898         * m4/mbswidth.m4: Reflect name change:
36899         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
36900         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
36901
36902         * m4/lib-link.m4: Update from gettext-0.11.2.
36903         * m4/gettext.m4: Likewise.
36904
36905         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
36906         From Alfred M. Szmidt.
36907
36908 2002-06-18  Paul Eggert  <eggert@twinsun.com>
36909
36910         * lib/file-type.h: Report an error if neither S_ISREG nor
36911         S_IFREG is defined, instead of using a test specific to glibc
36912         2.2.  This should be safe, since POSIX requires S_ISREG and
36913         Unix Version 7 had S_IFREG.  We don't need to check for
36914         <sys/types.h> since we don't use any symbols that it defines.
36915
36916 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
36917
36918         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
36919         $@-t, so that each temporary file name is unique and valid in the first
36920         8 characters, for operation under DOS.
36921
36922 2002-06-15  Paul Eggert  <eggert@twinsun.com>
36923
36924         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
36925
36926 2002-06-15  Jim Meyering  <meyering@lucent.com>
36927
36928         Work even with DJGPP 2.03, which lacks support for symlinks.
36929         From Richard Dawe.
36930         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
36931         is defined.
36932         * lib/lchown.c (S_ISLNK): Likewise.
36933
36934 2002-06-15  Jim Meyering  <meyering@lucent.com>
36935
36936         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
36937         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
36938         have been included before this file.
36939
36940 2002-06-14  Jim Meyering  <meyering@lucent.com>
36941
36942         * lib/file-type.h: Use the version from diffutils-2.8.2.
36943         * lib/file-type.c: Likewise.
36944
36945 2002-06-07  Jim Meyering  <meyering@lucent.com>
36946
36947         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
36948         They're needed at least for NetBSD 1.5.2.
36949         ($statxfs_includes): Include those same headers.
36950         ($statxfs_includes): Include sys/vfs.h if available.
36951         ($statxfs_includes): Likewise for sys/statvfs.h.
36952         Check for the following members in both structs statfs and statvfs:
36953         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
36954
36955 2002-06-01  Jim Meyering  <meyering@lucent.com>
36956
36957         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
36958         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
36959
36960 2002-05-28  Jim Meyering  <meyering@lucent.com>
36961
36962         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
36963         Reported by Volker Borchert.
36964
36965 2002-05-27  Jim Meyering  <meyering@lucent.com>
36966
36967         Fix a problem seen only on nonconforming systems whereby ls.c's
36968         use of localtime, and then of gettimeofday would cause trouble:
36969         the localtime call used to initialize rpl_gettimeofday's save
36970         mechanism would clobber ls's current local time information so
36971         that in any long listing the first file would always be listed
36972         with date 1970-01-01.  Analysis by Volker Borchert.
36973
36974         * lib/gettimeofday.c (localtime): Undefine.
36975         (rpl_localtime): New function.
36976
36977 2002-05-27  Jim Meyering  <meyering@lucent.com>
36978
36979         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
36980         localtime.
36981
36982         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
36983         use the replacement function; it wouldn't resolve at link time.
36984         Reported by Volker Borchert.
36985
36986 2002-05-22  Jim Meyering  <meyering@lucent.com>
36987
36988         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
36989         file-type.h.
36990         * lib/file-type.h: New file.
36991         * lib/file-type.c (file_type): New file/function.  Extracted from
36992         diffutils.
36993
36994 2002-04-30  Jim Meyering  <meyering@lucent.com>
36995
36996         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
36997
36998 2002-04-29  Paul Eggert  <eggert@twinsun.com>
36999
37000         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
37001
37002 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37003
37004         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
37005         Do not check for alloca.h (no longer used) or stdbool.h (was never
37006         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
37007
37008 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37009
37010         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
37011
37012 2002-04-29  Jim Meyering  <meyering@lucent.com>
37013
37014         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
37015         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
37016         Use AC_FUNC_STRNLEN here instead.
37017
37018         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
37019         With autoconf-2.53a, it's part of AC_PROG_CC.
37020
37021 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37022
37023         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
37024         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
37025
37026 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37027
37028         * lib/sig2str.h, lib/sig2str.c: New files.
37029         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
37030
37031 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37032
37033         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
37034         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
37035         of 127, since 64 is the largest conceivable number for ancient
37036         nonstandard hosts.
37037         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
37038
37039 2002-04-28  Jim Meyering  <meyering@lucent.com>
37040
37041         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
37042
37043 2002-04-24  Jim Meyering  <meyering@lucent.com>
37044
37045         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
37046         (jm_PREREQ): Use it.
37047
37048         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
37049         mach/mach.h fcntl.h.
37050         Check for this function: setlocale.
37051
37052 2002-04-24  Jim Meyering  <meyering@lucent.com>
37053
37054         * lib/gettext.h: New file, from Gettext.
37055         * lib/Makefile.am (INCLUDES): Remove -I../intl.
37056         (libfetish_a_SOURCES): Add gettext.h.
37057
37058 2002-04-16  Jim Meyering  <meyering@lucent.com>
37059
37060         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
37061         ut_pid, ut_id, ut_exit.
37062
37063 2002-04-16  Jim Meyering  <meyering@lucent.com>
37064
37065         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
37066         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
37067         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
37068
37069 2002-04-12  Jim Meyering  <meyering@lucent.com>
37070
37071         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
37072         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
37073         existence of the getmntinfo function.  Needed for Darwin 5.3.
37074
37075         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
37076         This is necessary at least on Darwin 5.3.
37077
37078         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
37079         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
37080         strnlen.o in the library, and that makes some versions of ranlib
37081         object.
37082
37083 2002-04-12  Jim Meyering  <meyering@lucent.com>
37084
37085         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
37086
37087 2002-04-09  Jim Meyering  <meyering@lucent.com>
37088
37089         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
37090         to be more precise.  Rather than saying we're checking whether the
37091         function `works', say what we're testing.
37092         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
37093         Reported by Bruno Haible.
37094
37095 2002-03-10  Jim Meyering  <meyering@lucent.com>
37096
37097         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
37098         Suggestion from Santiago Vila.
37099
37100 2002-03-08  Jim Meyering  <meyering@lucent.com>
37101
37102         * lib/rename.c: Mention that this wrapper is needed also on
37103         mips-dec-ultrix4.4 systems.
37104
37105 2002-03-02  Jim Meyering  <meyering@lucent.com>
37106
37107         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
37108         not HAVE_CLOCK_SETTIME.
37109
37110 2002-02-27  Paul Eggert  <eggert@twinsun.com>
37111
37112         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
37113         Check for clock_settime.
37114
37115 2002-02-27  Paul Eggert  <eggert@twinsun.com>
37116
37117         * lib/nanosleep.h: Rename to....
37118         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
37119
37120         * lib/gettime.c: New file.
37121         * lib/settime.c: New file.
37122         * lib/stime.c: Remove.
37123
37124         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
37125         timespec.h.  Remove nanosleep.h.
37126
37127 2002-02-25  Paul Eggert  <eggert@twinsun.com>
37128
37129         * m4/acl.m4: New file.
37130         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
37131         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
37132
37133 2002-02-25  Paul Eggert  <eggert@twinsun.com>
37134
37135         * lib/acl.c, lib/acl.h: New files.
37136         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
37137
37138 2002-02-24  Jim Meyering  <meyering@lucent.com>
37139
37140         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
37141         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
37142         cause trouble.  Reported by Nelson Beebe.
37143
37144 2002-02-23  Paul Eggert  <eggert@twinsun.com>
37145
37146         * lib/path-concat.c (xpath_concat): Reorder code to pacify
37147         compilers that don't know that xalloc_die never returns.
37148
37149 2002-02-20  Jim Meyering  <meyering@lucent.com>
37150
37151         * lib/getdate.c: Regenerate using bison-1.33.
37152
37153 2002-02-17  Jim Meyering  <meyering@lucent.com>
37154
37155         * config/config.guess (main): Don't use `head -1'; it's no longer
37156         portable. Use `sed 1q' instead.
37157
37158 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
37159
37160         * m4/codeset.m4: Upgrade to gettext-0.11.
37161         * m4/gettext.m4: Upgrade to gettext-0.11.
37162         * m4/glibc21.m4: Upgrade to gettext-0.11.
37163         * m4/iconv.m4: Upgrade to gettext-0.11.
37164         * m4/isc-posix.m4: Upgrade to gettext-0.11.
37165         * m4/lcmessage.m4: Upgrade to gettext-0.11.
37166         * m4/lib-ld.m4: New file, from gettext-0.11.
37167         * m4/lib-link.m4: New file, from gettext-0.11.
37168         * m4/lib-prefix.m4: New file, from gettext-0.11.
37169         * m4/progtest.m4: Upgrade to gettext-0.11.
37170
37171 2002-02-15  Paul Eggert  <eggert@twinsun.com>
37172
37173         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
37174         (jm_PREREQ): Use it.
37175
37176 2002-02-15  Paul Eggert  <eggert@twinsun.com>
37177
37178         * lib/posixver.c, lib/posixver.h: New files.
37179         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
37180
37181 2002-02-02  Paul Eggert  <eggert@twinsun.com>
37182             Bruno Haible  <bruno@clisp.org>
37183
37184         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
37185         (fwrite_success_callback): New declaration.
37186         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
37187         print_unicode_char. Call failure callback instead of error.
37188         (fwrite_success_callback): New function.
37189         (exit_failure_callback): New function.
37190         (fallback_failure_callback): New function.
37191         (print_unicode_char): Call unicode_to_mb.
37192
37193 2002-01-26  Jim Meyering  <meyering@lucent.com>
37194
37195         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
37196         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
37197
37198 2002-01-26  Jim Meyering  <meyering@lucent.com>
37199
37200         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
37201
37202 2002-01-22  Paul Eggert  <eggert@twinsun.com>
37203
37204         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
37205
37206 2002-01-22  Jim Meyering  <meyering@lucent.com>
37207
37208         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
37209         Otherwise, some versions of automake would omit the rule that makes
37210         Makefile from Makefile.in.
37211
37212 2002-01-21  Paul Eggert  <eggert@twinsun.com>
37213
37214         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
37215         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
37216         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
37217         (memcoll): Set errno to zero if there is no error.
37218
37219         * lib/quotearg.c (quotearg_buffer_restyled):
37220         Fix bug with quoting buffers containing NUL when backslashing escapes.
37221         This bug was exposed by the other changes in this patch.
37222         (quotearg_n_options): New arg ARGSIZE.
37223         All callers changed.
37224         (quoting_options_from_style): New function.
37225         (quotearg_n_style): Use it.
37226         (quotearg_n_style_mem): New function.
37227
37228         * lib/quotearg.h (quotearg_n_style_mem): New function.
37229
37230 2002-01-19  Jim Meyering  <meyering@lucent.com>
37231
37232         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
37233         Remove useless quotes: DF_PROG="df".
37234         * m4/strnlen.m4: New file.
37235
37236 2002-01-16  Paul Eggert  <eggert@twinsun.com>
37237
37238         * lib/backupfile.c (ISDIGIT): Comment fix.
37239         * lib/getdate.y (ISDIGIT): Likewise.
37240         * lib/posixtm.c (ISDIGIT, year): Likewise.
37241         * lib/strverscmp.c (ISDIGIT): Likewise.
37242         * lib/userspec.c (ISDIGIT): Likewise.
37243
37244 2002-01-16  Jim Meyering  <meyering@lucent.com>
37245
37246         * lib/getdate.y: Add three semicolons, each just before a closing
37247         brace. Bison (as of version 1.31) no longer papers over that mistake.
37248
37249 2002-01-05  Jim Meyering  <meyering@lucent.com>
37250
37251         * lib/version-etc.c (version_etc_copyright): Update copyright year.
37252
37253 2001-12-19  Paul Eggert  <eggert@twinsun.com>
37254
37255         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
37256         not silently exit merely because the output buffer happens to
37257         have nothing pending.
37258
37259 2001-12-18  Paul Eggert  <eggert@twinsun.com>
37260
37261         See the big note in ../ChangeLog.
37262         * lib/human.c (suffixes): Prefer K to k for 1024.
37263         (generate_suffix_backwards): New function.
37264         (human_readable_inexact): Use it.
37265         * lib/xstrtol.c (__xstrtol): If there is no number but there
37266         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
37267         Accept 'K' as well as 'k'.
37268
37269 2001-12-15  Jim Meyering  <meyering@lucent.com>
37270
37271         * lib/regex.h (__restrict_arr): Update from libc.
37272
37273         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
37274         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
37275         (STREQ): Define.
37276
37277 2001-12-14  Jim Meyering  <meyering@lucent.com>
37278
37279         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
37280         Suggestion from Bruno Haible.
37281
37282 2001-12-10  Jim Meyering  <meyering@lucent.com>
37283
37284         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
37285         xrealloc, Instead, include "xalloc.h".
37286         (initbuffer): Don't cast xmalloc return value to char*.
37287         (readline): Reword comment.
37288         Don't cast xrealloc return value to char*
37289         Return NULL, not 0.
37290
37291 2001-12-09  Jim Meyering  <meyering@lucent.com>
37292
37293         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
37294         about `signed and unsigned type in conditional expression'.
37295         * lib/posixtm.c (posix_time_parse): Likewise.
37296
37297         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
37298
37299         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
37300         to avoid a pedantic warning.
37301
37302         * lib/getstr.c: Don't include assert.h.
37303         (getstr): Remove warning-evoking assertions.
37304         Return -1 if offset parameter is out of bounds.
37305         Change the type of a local from int to size_t.
37306
37307         * lib/strftime.c (my_strftime_localtime_r): Include this function
37308         definition in the `#if ! HAVE_TM_GMTOFF' block.
37309
37310         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
37311         Include xalloc.h instead.
37312
37313 2001-12-02  Jim Meyering  <meyering@lucent.com>
37314
37315         * lib/tempname.c: Don't declare getenv, thus reverting the change of
37316         2001-11-18.  It's no longer necessary, now that stdlib.h is always
37317         included.
37318
37319         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
37320         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
37321
37322 2001-11-30  Akim Demaille  <akim@epita.fr>
37323
37324         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
37325         before being defined.
37326
37327 2001-11-27  Paul Eggert  <eggert@twinsun.com>
37328
37329         * lib/quotearg.h (quotearg_n, quotearg_n_style):
37330         First arg is int, not unsigned.
37331         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
37332         (SIZE_MAX, UINT_MAX): New macros.
37333         (quotearg_n_options): Abort if N is negative.
37334         Avoid overflow check on hosts where size_t is 64 bits and int
37335         is 32 bits, as overflow is impossible there.
37336         Fix off-by-one typo that caused unnecessary reallocation.
37337
37338 2001-11-27  Jim Meyering  <meyering@lucent.com>
37339
37340         * lib/tempname.c: Merge with version from libc.
37341         * lib/regex.c: Likewise.
37342
37343         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
37344         systems for which STDC_HEADERS is 0, it was not included, resulting in
37345         a warning about an integer-to-pointer conversion problem with getenv.
37346         Reported by Volker Borchert.
37347
37348 2001-11-26  Jim Meyering  <meyering@lucent.com>
37349
37350         * lib/gtod.h: Remove file.
37351         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
37352         * lib/gettimeofday.c: Don't include gtod.h.
37353         (GTOD_init): Remove function.
37354         (rpl_gettimeofday): Do its job here instead, rather than aborting.
37355         Suggestion from Volker Borchert.
37356
37357 2001-11-23  Jim Meyering  <meyering@lucent.com>
37358
37359         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
37360         it.
37361         * lib/hash.c (struct hash_table): Define it here instead.
37362
37363 2001-11-22  Jim Meyering  <meyering@lucent.com>
37364
37365         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
37366
37367 2001-11-20  Jim Meyering  <meyering@lucent.com>
37368
37369         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
37370         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
37371
37372 2001-11-19  Jim Meyering  <meyering@lucent.com>
37373
37374         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
37375         directory.  Use "conftestXXXXXX" as the template.
37376         Suggestion from Paul Eggert.
37377
37378         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
37379         immediately, so the test doesn't mistakenly hit the max-open-files
37380         limit.
37381
37382 2001-11-18  Paul Eggert  <eggert@twinsun.com>
37383
37384         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
37385         (TEMPORARIES): New macro.
37386         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
37387         removes an artificial limitation (e.g. HP-UX 10.20, where
37388         TMP_MAX is 17576).
37389
37390 2001-11-18  Jim Meyering  <meyering@lucent.com>
37391
37392         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
37393
37394 2001-11-18  Jim Meyering  <meyering@lucent.com>
37395
37396         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
37397         on SunOS 4.
37398
37399         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
37400         files will be created before anything else.
37401
37402 2001-11-17  Paul Eggert  <eggert@twinsun.com>
37403
37404         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
37405         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
37406
37407 2001-11-17  Jim Meyering  <meyering@lucent.com>
37408
37409         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
37410         Prompted by a report from Bob Proulx.
37411
37412         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
37413         Instead, require UTILS_FUNC_MKSTEMP.
37414
37415 2001-11-17  Jim Meyering  <meyering@lucent.com>
37416
37417         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
37418         Now, that's done as part of AC_FUNC_STRTOD.
37419
37420 2001-11-17  Jim Meyering  <meyering@lucent.com>
37421
37422         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
37423         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
37424         rather than group writable.  Patch by Juan F. Codagnone.
37425
37426         * lib/readtokens.c: Remove explicit declarations of xmalloc and
37427         xrealloc, Instead, include "xalloc.h".
37428
37429         * lib/mountlist.c: Include unlocked-io.h after all system headers.
37430         Remove explicit declarations of xmalloc, xrealloc,
37431         and xstrdup.  Instead, include "xalloc.h".
37432
37433         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
37434         unlocked-io.h.
37435         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
37436         Likewise.
37437         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
37438
37439         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
37440         Reported by Padraig Brady.
37441
37442         * lib/mkstemp.c: #undef mkstemp.
37443         Include config.h.
37444         (rpl_mkstemp): Rename from mkstemp.
37445         Protoize.
37446
37447 2001-11-16  Jim Meyering  <meyering@lucent.com>
37448
37449         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
37450         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
37451         determine the amount of total physical memory, use pstat_getstatic.
37452         HPUX-11 doesn't define _SC_PHYS_PAGES.
37453         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
37454         If sysconf couldn't be used to determine the amount of available
37455         physical memory, use both pstat_getstatic and pstat_getdynamic.
37456         Based on a patch from Bob Proulx.
37457
37458 2001-11-10  Jim Meyering  <meyering@lucent.com>
37459
37460         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
37461         (jm_PREREQ): Use it.
37462
37463 2001-11-09  Jim Meyering  <meyering@lucent.com>
37464
37465         * m4/jm-macros.m4: Require autoconf-2.52f.
37466         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
37467         Use these AC_-prefixed names, not the AM_-prefixed ones.
37468
37469         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
37470
37471 2001-11-05  Jim Meyering  <meyering@lucent.com>
37472
37473         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
37474
37475 2001-11-04  Jim Meyering  <meyering@lucent.com>
37476
37477         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
37478         $DEFS.
37479
37480 2001-11-03  Jim Meyering  <meyering@lucent.com>
37481
37482         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
37483         of AC_DEFUN.
37484
37485         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
37486         know the name of the variable in the macro definition.
37487
37488 2001-11-03  Jim Meyering  <meyering@lucent.com>
37489
37490         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
37491         in argmatch_to_argument call.
37492
37493         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
37494         argument.
37495
37496         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
37497         e.g., a fault due to an attempt to free a NULL pointer.
37498
37499 2001-11-01  Jim Meyering  <meyering@lucent.com>
37500
37501         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
37502         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
37503
37504 2001-11-01  Jim Meyering  <meyering@lucent.com>
37505
37506         * lib/dirfd.c, lib/dirfd.h: New files.
37507         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
37508
37509         * lib/hash.c (hash_print) [TESTING]: Clean up.
37510
37511 2001-10-22  Paul Eggert  <eggert@twinsun.com>
37512
37513         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
37514         to avoid a warning if -Wall.
37515
37516 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
37517
37518         * README: New file
37519         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
37520         (per RMS's instructions, this is now the canonical source)
37521         * lgpl/, gpl/: New directories.
37522
37523 2001-10-21  Paul Eggert  <eggert@twinsun.com>
37524
37525         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
37526
37527 2001-10-21  Jim Meyering  <meyering@lucent.com>
37528
37529         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
37530         this code would end up calling gettext even in packages built
37531         with --disable-nls.
37532         * lib/getopt.c (_): Likewise.
37533         * lib/regex.c (_): Likewise.
37534
37535 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37536
37537         * m4/error.m4 (jm_PREREQ_ERROR):
37538         Do not invoke AC_CHECK_FUNCS with strerror_r, as
37539         AC_FUNC_STRERROR_R does that.
37540         Check for strerror declaration.
37541
37542         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
37543         are supposed to have them these days.
37544         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
37545         Merge changes from latest Autoconf CVS.
37546         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
37547         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
37548         POSIX decided to standardize on the int flavor of strerror_r.
37549
37550 2001-10-20  Paul Eggert  <eggert@twinsun.com>
37551
37552         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
37553         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
37554         Use strerror_r that is only a macro, even if it is not a function.
37555         (strerror): Check for HAVE_DECL_STRERROR before declaring.
37556         (private_strerror): Use prototypes, not old-style function definition.
37557         (print_errno_message): New function.
37558         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
37559         char*-flavored one.
37560         (error_tail, error, error_at_line): Use it.
37561
37562 2001-10-11  Jim Meyering  <meyering@lucent.com>
37563
37564         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
37565         and quote_n (1, ... to avoid clobbering a buffer.
37566
37567 2001-10-05  Jim Meyering  <meyering@lucent.com>
37568
37569         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
37570         hash-pjw.h.
37571         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
37572         * lib/hash-pjw.h: New file.
37573
37574 2001-09-30  Jim Meyering  <meyering@lucent.com>
37575
37576         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
37577         `struct fsstat' has the `f_fstypename' member.
37578         Use that to define FS_TYPE, which is now used to make
37579         the getfsstat link test tighter.
37580
37581 2001-09-30  Jim Meyering  <meyering@lucent.com>
37582
37583         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
37584         Include <sys/ucred.h>, for Apple Darwin.
37585         Include sys/mount.h and sys/fs_types.h only if available.
37586         (FS_TYPE): Define.
37587         (read_filesystem_list): Use FS_TYPE.
37588
37589 2001-09-29  Paul Eggert  <eggert@twinsun.com>
37590
37591         * lib/exclude.c (excluded_filename): 0 -> false, since it's
37592         a boolean context.
37593
37594 2001-09-29  Jim Meyering  <meyering@lucent.com>
37595
37596         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37597         [one-argument getmntent function]): Include stdio.h before mntent.h.
37598         SunOS 4.1.x needs it for the declaration of `FILE'.
37599         Patch by Volker Borchert.
37600
37601         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
37602         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
37603         sys/fs_types.h, and make the link-test for getfsstat guard #include
37604         directives with appropriate #if HAVE_*_H tests so that we can
37605         detect getfsstat on Apple Darwin1.3.7 systems.
37606         Reported by Nelson Beebe.
37607         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
37608
37609 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37610
37611         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37612         #defines strtoimax.  Also treat the other strto* functions
37613         like strtoimax.
37614
37615         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
37616         Check for strtoul and strtoumax,
37617         as those declarations are made even in the signed case.
37618         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
37619         Likewise, for strtol and strtoimax.
37620
37621 2001-09-28  Paul Eggert  <eggert@twinsun.com>
37622
37623         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
37624         #defines strtoimax.  Also treat the other strto* functions
37625         like strtoimax.
37626
37627         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
37628         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
37629         (strtoimax, strtoumax): Do not declare if already defined as a macro.
37630
37631 2001-09-26  Jim Meyering  <meyering@lucent.com>
37632
37633         Most macros in unlocked-io.h had the wrong number of arguments.
37634         * lib/gen-uio: New script.
37635         (USE_UNLOCKED_IO): Define to 1 if not already defined.
37636         * lib/unlocked-io.hin: Remove file.
37637         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
37638         rather than trying to embed it here.
37639         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
37640         Reported by Padraig Brady.
37641
37642 2001-09-25  Volker Borchert  <bt@teknon.de>
37643
37644         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
37645         `result'.
37646
37647 2001-09-24  Jim Meyering  <meyering@lucent.com>
37648
37649         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
37650
37651 2001-09-23  Jim Meyering  <meyering@lucent.com>
37652
37653         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
37654         instead of the mere test for existence of mntent.h.  The latter
37655         would get a false-positive on AIX 3.4 systems.
37656         In the outer getmntent if-block, don't die if neither of the getmntent
37657         tests succeeds.  Instead, just fall through and continue with the
37658         remaining tests.
37659
37660 2001-09-23  Jim Meyering  <meyering@lucent.com>
37661
37662         * lib/mountlist.c: Remove useless parentheses in #if directives.
37663         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
37664         the deprecated MOUNTED symbol is no longer defined in mntent.h.
37665
37666 2001-09-22  Jim Meyering  <meyering@lucent.com>
37667
37668         * m4/gettext.m4: New file.  From gettext.
37669         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
37670         * m4/progtest.m4: Likewise
37671         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
37672         * m4/glibc21.m4: Likewise.
37673
37674         * m4/libintl.m4: Remove.  No longer used.
37675
37676 2001-09-22  Jim Meyering  <meyering@lucent.com>
37677
37678         * lib/localcharset.c: Update from latest gettext.
37679         * lib/config.charset: Likewise.
37680
37681 2001-09-20  Jim Meyering  <meyering@lucent.com>
37682
37683         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
37684         strtoimax.
37685         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
37686         strtoumax.
37687
37688 2001-09-20  Jim Meyering  <meyering@lucent.com>
37689
37690         * lib/xstrtol.c (strtoimax): Guard declaration with
37691         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
37692         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
37693         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
37694         (strtoumax): Likewise, for completeness (it wasn't necessary).
37695
37696 2001-09-17  Paul Eggert  <eggert@twinsun.com>
37697
37698         * lib/strtoimax.c (HAVE_LONG_LONG):
37699         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
37700         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
37701         to work around bug in IBM C compiler.
37702
37703 2001-09-17  Jim Meyering  <meyering@lucent.com>
37704
37705         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
37706         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
37707         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
37708         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
37709         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
37710         whenever the right hand side need not be expanded by the shell.
37711
37712 2001-09-16  Paul Eggert  <eggert@twinsun.com>
37713
37714         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
37715         library.  It's not correct, as some older glibcs are buggy.
37716         fnmatch wasn't fixed until glibc 2.2.
37717
37718         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
37719         special shell magic here.
37720
37721 2001-09-16  Jim Meyering  <meyering@lucent.com>
37722
37723         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
37724         * m4/jm-macros.m4: Require it.
37725
37726 2001-09-16  Jim Meyering  <meyering@lucent.com>
37727
37728         * lib/mkdir.c: New file.
37729
37730 2001-09-15  Jim Meyering  <meyering@lucent.com>
37731
37732         * m4/jm-macros.m4: Check for help2man.
37733
37734 2001-09-11  Jim Meyering  <meyering@lucent.com>
37735
37736         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
37737         The body, by Paul Eggert, was moved here from configure.in.
37738         * m4/jm-macros.m4: Require UTILS_HOST_OS.
37739
37740 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37741
37742         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
37743         (jm_PREREQ): Use it.
37744
37745 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37746
37747         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
37748         Use ssize_t, not int, to store result of readlink.
37749         Check for ssize_t overflow as well as size_t overflow,
37750         as POSIX says the result of readlink is implementation-defined
37751         when ssize_t overflows.
37752         Remove unnecessary cast to char*.
37753         Use free+malloc instead of realloc, as the storage doesn't need
37754         to be preserved and it's clearer and can be more efficient that way.
37755         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
37756         * lib/xreadlink.h (xreadlink): Update prototype.
37757
37758 2001-09-04  Paul Eggert  <eggert@twinsun.com>
37759
37760         * lib/xgetcwd.c: Revert some of the previous change; intead,
37761         fix the HAVE_GETCWD_NULL code to behave more like the
37762         !HAVE_GETCWD_NULL code used to.
37763
37764         Include "xalloc.h".
37765         (xgetcwd): Do not return NULL when memory is exhausted; instead,
37766         invoke xalloc_die.
37767
37768 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37769
37770         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
37771         sys/param.h, as pathmax.h includes them.
37772
37773 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37774
37775         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
37776         (jm_PREREQ_XGETCWD): New macro.
37777
37778         * m4/getcwd.m4: New file.
37779
37780 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37781
37782         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
37783         like the HAVE_GETCWD_NULL code.
37784         Include pathmax.h if not HAVE_GETCWD.
37785         Do not include xalloc.h.
37786         (INITIAL_BUFFER_SIZE): New symbol.
37787         Do not use xmalloc / xrealloc, since the caller is responsible for
37788         handling errors.  Preserve errno around `free' during failure.
37789         Do not overrun buffer when using getwd.
37790
37791 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37792
37793         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
37794         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
37795         getcwd (NULL, 0).
37796
37797 2001-09-03  Paul Eggert  <eggert@twinsun.com>
37798
37799         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
37800         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
37801         spotted by Jim Meyering.
37802
37803 2001-09-03  Jim Meyering  <meyering@lucent.com>
37804
37805         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
37806         failure.
37807
37808 2001-09-02  Jim Meyering  <meyering@lucent.com>
37809
37810         * lib/error.c: Update from GNU libc.
37811
37812 2001-09-01  Jim Meyering  <meyering@lucent.com>
37813
37814         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
37815         Used by df.
37816
37817 2001-09-01  Jim Meyering  <meyering@lucent.com>
37818
37819         * lib/xreadlink.c: New file.
37820         * lib/xreadlink.h: New file.
37821         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
37822         xreadlink.h.
37823
37824         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
37825         doesn't conflict with sparc Solaris 7's definition in
37826         /usr/include/sys/int_types.h.
37827
37828         * lib/exclude.c: Use `""', not `<>' to #include non-system header
37829         files.
37830         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
37831         and strncasecmp as r-values.  Unixware didn't have declarations.
37832
37833 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37834
37835         * lib/xstrtol.h: Add copyright notice.
37836         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
37837         LONGINT_INVALID_SUFFIX_CHAR.
37838
37839 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37840
37841         * lib/xstrtol.c (strtoimax): New decl.
37842
37843 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37844
37845         * lib/xgetcwd.c: Don't include pathmax.h.
37846         Include stdlib.h and unistd.h if available.
37847         Include xalloc.h.
37848         (xmalloc, xstrdup, free): Remove decls.
37849         (xgetcwd): Don't assume sizes fit in unsigned.
37850         Check for overflow when computing sizes.
37851         Simplify reallocation code.
37852
37853 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37854
37855         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
37856         a directory's st_size can have an arbitrary value, so the old
37857         usage could waste an arbitrary amount of memory.  All uses
37858         changed.
37859         * lib/savedir.h: Update prototype.
37860
37861 2001-08-31  Paul Eggert  <eggert@twinsun.com>
37862
37863         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
37864
37865         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
37866         old strtoimax.c.
37867
37868         Also, make the following further changes to make this file's
37869         configuration more similar to that of strtol.c:
37870         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
37871         (strtoumax, uintmax_t, strtoull, strtol): Remove.
37872         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
37873         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
37874         changed to signed values.
37875
37876         And make the following changes as well:
37877         Fix copyright notice, as 1999 was missing.
37878         (verify): New macro.
37879         (strtoimax): Check sizes at compile-time, not run-time.
37880         Prefer strtol to strtoll if both work.
37881         (main): Remove; it was not that useful and was a pain to maintain.
37882
37883         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
37884
37885 2001-08-31  Jim Meyering  <meyering@lucent.com>
37886
37887         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
37888         Use an initial, malloc'd, buffer of length 128 rather than
37889         a statically allocated one of length 1024.
37890
37891 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37892
37893         Simplify code, partly by assuming autoconf 2.52 semantics.
37894
37895         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
37896
37897         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
37898         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
37899         All uses removed.
37900         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
37901         Move AC_REQUIRE to next-to-top level, to avoid confusion.
37902         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
37903         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
37904         jm_AC_HEADER_INTTYPES_H.
37905         * m4/jm-macros.m4 (jm_MACROS): Likewise.
37906
37907         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
37908
37909         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
37910         Quote first arg of AC_DEFUN.
37911         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
37912         since they are needed to parse the include file even if we need
37913         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
37914         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
37915         but with opposite signedness.
37916
37917 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37918
37919         Merge 'exclude' changes from tar 1.13.22.
37920         This fixes one or two unlikely storage allocation overflow bugs,
37921         but doesn't change user-visible behavior otherwise.
37922
37923 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37924
37925         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
37926         (jm_PREREQ_EXCLUDE): New macro.
37927
37928 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37929
37930         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
37931         tm to be declared.
37932
37933 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37934
37935         * lib/hash.c: Remove '2001' from copyright notice.
37936
37937 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37938
37939         * lib/full-write.h: New file.
37940         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
37941         * lib/full-write.c: Correct credits, as cccp.c no longer
37942         exists and anyway it was so heavily changed from the old cccp
37943         code as to be unrecognizable.  Include full-write.h.
37944         (full_write) Return size_t, with short writes meaning failure.
37945         All callers changed.  This fixes a bug with large buffers
37946         on 64-bit hosts.
37947         * lib/utime.c: Include full-write.h.
37948
37949 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37950
37951         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
37952         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
37953         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
37954         Include if available.
37955         (<xalloc.h>): Include
37956         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
37957         (verify): New macro.  Use it to verify that EXCLUDE macros do not
37958         collide with FNM macros.
37959         (struct patopts): New struct.
37960         (struct exclude): Use it, as exclude patterns now come with options.
37961         (new_exclude): Support above changes.
37962         (new_exclude, add_exclude_file):
37963         Initial size must now be a power of two to simplify overflow checking.
37964         (free_exclude, fnmatch_no_wildcards): New function.
37965         (excluded_filename): No longer requires options arg, as the options
37966         are determined by add_exclude.  Now returns bool, not int.
37967         (excluded_filename, add_exclude):
37968         Add support for the fancy new exclusion options.
37969         (add_exclude, add_exclude_file): Now takes int options arg.
37970         Check for arithmetic overflow when computing sizes.
37971         (add_exclude_file): xrealloc might modify errno, so don't
37972         realloc until after errno might be used.
37973
37974         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
37975         New macros.
37976         (free_exclude): New decl.
37977         (add_exclude, add_exclude_file): Now takes int options arg.
37978         (excluded_filename): No longer requires options arg, as the options
37979         are determined by add_exclude.  Now returns bool, not int.
37980
37981 2001-08-30  Paul Eggert  <eggert@twinsun.com>
37982
37983         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
37984
37985 2001-08-27  Jim Meyering  <meyering@lucent.com>
37986
37987         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
37988
37989         * lib/version-etc.c (N_): Remove definition.
37990         Revert most of last change.
37991         Instead, simply don't mark the `Copyright...' string for translation.
37992         Based on advice from Paul Eggert.
37993
37994         * lib/strtoxmax.c: Tweak comment.
37995
37996 2001-08-26  Jim Meyering  <meyering@lucent.com>
37997
37998         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
37999
38000         * m4/xstrtoimax.m4: New file.
38001         * m4/xstrtoumax.m4: Add comments explaining why we
38002         AC_REPLACE_FUNCS(strtol).
38003
38004 2001-08-26  Jim Meyering  <meyering@lucent.com>
38005
38006         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
38007         of copyright with `%s' so translators don't get an untranslated
38008         message in 2002.
38009         (COPYRIGHT_YEAR): Define.
38010         (version_etc): Use fprintf rather than fputs.
38011         Suggestion from Ulrich Drepper.
38012
38013         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
38014
38015         * lib/strtoll.c: New file, from GNU libc.
38016         * lib/xstrtoimax.c: New file.
38017
38018         * lib/xstrtol.h: Add xstrtoimax.
38019         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
38020         * lib/strtoimax.c: New file.  Likewise, but first define
38021         STRTOUXMAX_SIGNED.
38022
38023         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
38024         ...
38025         * lib/strtoxmax.c: ... then renamed to this.
38026
38027 2001-08-18  Paul Eggert  <eggert@twinsun.com>
38028
38029         * m4/inttypes.m4: Add AC_PREREQ(2.13).
38030         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
38031         (jm_AC_TYPE_INTMAX_T): New macro.
38032         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
38033
38034         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
38035
38036         * m4/longlong.m4: Renamed from ulonglong.m4.
38037         * m4/inttypes.m4: Renamed from inttypes_h.m4.
38038         * m4/uintmax_t.m4: Removed.
38039
38040 2001-08-13  Paul Eggert  <eggert@twinsun.com>
38041
38042         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
38043         Port to Solaris 8, where 'sed' requires a space after the 'r'
38044         command, and where sh dislikes "$/".  Clean up the spacing a bit.
38045         Redirect output to $tmp just once.
38046
38047 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
38048
38049         * lib/addext.c (<errno.h>): Include.
38050         (errno): Declare if not defined.
38051         (addext): Work correctly when pathconf returns -1 and leaves
38052         errno alone because there is no limit.  Also, work even if
38053         pathconf returns a value greater than SIZE_MAX.
38054
38055 2001-08-12  Jim Meyering  <meyering@lucent.com>
38056
38057         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
38058         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
38059         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
38060         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
38061         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
38062         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
38063         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
38064         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
38065         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
38066         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
38067         utime.m4, utimes.m4, xstrtoumax.m4:
38068         Quote the first argument in each use of AC_DEFUN.
38069
38070 2001-08-12  Jim Meyering  <meyering@lucent.com>
38071
38072         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
38073         Simply `return getcwd (NULL, 0);'.
38074         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
38075         Use 1300 as initial value for length, not PATH_MAX.
38076
38077         * lib/pathmax.h: Clean up cpp syntax.
38078
38079 2001-08-12  Jim Meyering  <meyering@lucent.com>
38080
38081         * lib/gettimeofday.c: New file.
38082         * lib/gtod.h: New file.
38083         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
38084
38085 2001-08-05  Jim Meyering  <meyering@lucent.com>
38086
38087         * m4/jm-macros.m4: Require autoconf-2.52.
38088
38089 2001-08-04  Jim Meyering  <meyering@lucent.com>
38090
38091         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
38092         stmt, to get in sync with glibc.
38093
38094 2001-08-03  Paul Eggert  <eggert@twinsun.com>
38095
38096         The following changes are from gettext 0.10.39 as maintained by
38097         Bruno Haible.
38098
38099         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
38100         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
38101         with inverted sense.  All uses changed.
38102
38103         * lib/mbswidth.c: Don't include <limits.h>.
38104         Include <stdlib.h> and <string.h> unconditionally.
38105         (iswcntrl, mbsinit, ISCNTRL): New macros.
38106         (mbsnwidth): Use K&R style function declarations.
38107         Don't bother checking for MB_LEN_MAX == 1, since the compiler
38108         can optimize it when MB_CUR_MAX == 1.
38109         The width of control characters is zero, not 1.
38110
38111 2001-08-03  Paul Eggert  <eggert@twinsun.com>
38112
38113         The following changes are from gettext 0.10.39 as maintained by
38114         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
38115
38116         * m4/codeset.m4: Upgrade to serial AM1.
38117         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
38118         all uses changed.  Quote first arg of AC_DEFUN.
38119         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
38120
38121         * m4/iconv.m4: Upgrade to serial AM2.
38122         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
38123         Add --with-libconv-prefix.
38124         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
38125         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
38126         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
38127         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
38128         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
38129
38130         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
38131         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
38132         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
38133         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
38134         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
38135         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
38136         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
38137         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
38138         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
38139
38140         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
38141         string.h any more.
38142
38143         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
38144         not the default value.
38145
38146         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
38147         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
38148         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
38149         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
38150         Also check for iswcntrl, used for wcwidth fallback.
38151         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
38152         to Autoconf 2.13.
38153
38154 2001-08-03  Jim Meyering  <meyering@lucent.com>
38155
38156         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
38157         as it was in the original.  Reported by Paul Eggert.
38158
38159 2001-07-16  Jim Meyering  <meyering@lucent.com>
38160
38161         * m4/gettimeofday.m4: New file.
38162         Prompted by a report from Bernhard Baehr.
38163
38164 2001-07-15  Jim Meyering  <meyering@lucent.com>
38165
38166         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
38167         stuff. Now it's in ../Makefile.cfg.
38168
38169 2001-07-15  Jim Meyering  <meyering@lucent.com>
38170
38171         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
38172         (BUILT_SOURCES): Add unlocked-io.h.
38173         (io_functions): Define.
38174         (unlocked-io.h): New rule.
38175         (DISTCLEANFILES): Add unlocked-io.h.
38176         (all-local): Depend on unlocked-io.h, to ensure it is created.
38177
38178         * lib/unlocked-io.hin: New file
38179
38180         * lib/regex.c: Update from glibc.
38181
38182 2001-07-05  Jim Meyering  <meyering@lucent.com>
38183
38184         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
38185         recommendation.
38186         (libfetish_a_SOURCES): Put all .h files here instead.
38187         Remove a thus-exposed (better checks in automake) duplicate and
38188         two unnecessary .h files.
38189
38190 2001-07-04  Jim Meyering  <meyering@lucent.com>
38191
38192         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
38193         that generates jm-glibc-io.m4 so that it doesn't trigger any make
38194         distcheck failure.
38195
38196 2001-07-02  Jim Meyering  <meyering@lucent.com>
38197
38198         The following changes were prompted by suggestions from Bruno Haible.
38199
38200         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
38201         is now generated.
38202         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
38203         definition of EXTRA_DIST.
38204         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
38205         ensure that the generated file is created/updated whenever the list
38206         of $(unlocked_functions) is changed.
38207         (jm-glibc-io.m4): New rule.
38208         (unlocked-io.h): New rule -- currently unused.
38209
38210 2001-06-24  Jim Meyering  <meyering@lucent.com>
38211
38212         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
38213         unmatched right bracket, rather than kludging it with an extra,
38214         falsely-matching quote in a comment.  Patch by Akim Demaille.
38215
38216 2001-06-11  Jim Meyering  <meyering@lucent.com>
38217
38218         * lib/regex.c: Update from GNU libc.
38219
38220 2001-05-27  Jim Meyering  <meyering@lucent.com>
38221
38222         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
38223         Check for ut_type in struct utmp.
38224
38225 2001-05-27  Jim Meyering  <meyering@lucent.com>
38226
38227         * lib/readutmp.h (UT_TYPE): Define.
38228
38229 2001-05-24  Jim Meyering  <meyering@lucent.com>
38230
38231         * lib/argmatch.c: Include "quote.h".
38232         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
38233         quote function.  Reported by Göran Uddeborg.
38234
38235 2001-05-22  Jim Meyering  <meyering@lucent.com>
38236
38237         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
38238         now that we use the package-supplied version unconditionally.
38239         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
38240
38241 2001-05-21  Jim Meyering  <meyering@lucent.com>
38242
38243         * m4/regex.m4: Change a couple backticks to single quotes to avoid
38244         shell syntax errors.
38245
38246 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
38247
38248         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
38249
38250 2001-05-20  Paul Eggert  <eggert@twinsun.com>
38251
38252         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
38253         Don't bother to check library strftime, since
38254         we'll be using our own my_strftime function anyway.
38255         Define my_strftime instead of strftime.
38256
38257 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
38258
38259         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
38260         which is not yet declared.
38261
38262 2001-05-15  Jim Meyering  <meyering@lucent.com>
38263
38264         * m4/regex.m4: Use proper quoting so brackets appear in the test
38265         program.
38266         Reported by, and with help from, Bruno Haible.
38267
38268 2001-05-13  Jim Meyering  <meyering@lucent.com>
38269
38270         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
38271         undefined.
38272
38273 2001-05-11  Paul Eggert  <eggert@twinsun.com>
38274
38275         dirname code cleanup.  base_name now behaves more compatibly
38276         with POSIX basename when given file names that have trailing
38277         slashes, and similarly for dir_name.  Add new primitives
38278         base_len and dir_len.  Put the directory-name-related decls
38279         into dirname.h.
38280
38281         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
38282         * lib/backupfile.c (base_name): Likewise.
38283         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
38284         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
38285         * lib/makepath.c (strip_trailing_slashes): Likewise.
38286         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
38287         ISSLASH): Likewise.
38288         * lib/rename.c (strip_trailing_slashes): Likewise.
38289         * lib/same.c (base_name): Likewise.
38290         * lib/stripslash.c (ISSLASH): Likewise.
38291
38292         * lib/addext.c: Include <dirname.h> after size_t is defined.
38293         * lib/backupfile.c: Likewise.
38294
38295         * lib/addext.c (addext): Use base_len to trim redundant
38296         trailing slashes instead of doing it ourselves.
38297         But do not trim the last slash if it is not redundant.
38298
38299         * lib/backupfile.c (find_backup_file_name,
38300         max_backup_version): Use base_len instead of rolling it ourselves.
38301         Handle the case of "" and (on DOS) "C:" correctly.
38302
38303         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
38304         needed. Include <string.h>, <dirname.h>.
38305         (base_name): Allow file names ending in slashes, other than names
38306         that are all slashes.  In this case, return the basename followed
38307         by the slashes.  This is more general, and can be used in places
38308         where the original base_name purposely had an assertion failure.
38309         (base_len): New function.
38310
38311         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
38312         Do not include <assert.h>; no longer needed.
38313         Include xalloc.h.
38314         (memrchr): Remove decl.
38315         (dir_name_r): Remove.
38316         (dir_len): Renamed from dirlen.  All callers changed.
38317         Rewrite in terms of base_name, for simplicity and consistency.
38318         (dir_name): Never return NULL.  All callers changed.
38319         Do not include <stdlib.h> in test program; no longer needed.
38320         return 0; is fine for test program.
38321
38322         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
38323         New macros.
38324         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
38325
38326         * lib/path-concat.c (path_concat): Use base_len to compute
38327         base length, not strlen; this means we cannot rely on memcpy
38328         to null-terminate.
38329
38330         * lib/same.c (STREQ): Remove.
38331         (same_name): Handle the case where the basename ends in trailing '/'.
38332
38333         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
38334         a slash was stripped.  Do not strip the last slash after a
38335         file system prefix.
38336
38337 2001-05-11  Paul Eggert  <eggert@twinsun.com>
38338
38339         * lib/Makefile.am (libfetish_a_SOURCES):
38340         Add strftime.c, since we now compile it on all hosts.
38341
38342         * lib/strftime.c (my_strftime):
38343         Define to nstrftime if emacs, but only if my_strftime is not defined.
38344         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
38345         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
38346         Add one more extra argument: a nanoseconds value.
38347         All uses changed.
38348         (ns): New macro.
38349         (my_strftime function): Add %N format.
38350         (emacs_strftimeu): Renamed from emacs_strftime,
38351         with extra ut argument.
38352
38353 2001-05-09  Paul Eggert  <eggert@twinsun.com>
38354
38355         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
38356
38357 2001-04-21  Jim Meyering  <meyering@lucent.com>
38358
38359         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
38360         doesn't interfere.
38361
38362 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
38363
38364         * m4/ftruncate.m4: Check for chsize.
38365         Link with ftruncate.o unconditionally if ftruncate is missing.
38366         This was required when cross-compiling to i586-mingw32msvc.
38367
38368 2001-04-08  Jim Meyering  <meyering@lucent.com>
38369
38370         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
38371         recomputed; that's necessary when the offset spans a DST transition.
38372         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
38373
38374 2001-04-02  Jim Meyering  <meyering@lucent.com>
38375
38376         * lib/regex.h, regex.c: Update from GNU libc.
38377
38378 2001-03-24  Jim Meyering  <meyering@lucent.com>
38379
38380         * m4/jm-macros.m4: Require autoconf-2.49d.
38381
38382 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
38383
38384         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
38385
38386 2001-03-19  Paul Eggert  <eggert@twinsun.com>
38387
38388         * lib/version-etc.c (version_etc_copyright): Update to 2001.
38389
38390 2001-03-17  Jim Meyering  <meyering@lucent.com>
38391
38392         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
38393         now that the version in autoconf is equivalent.
38394         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
38395
38396         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
38397         Suggestion from Akim Demaille.
38398
38399         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
38400         (jm_PREREQ_TEMPNAME): New function.
38401
38402 2001-03-16  Paul Eggert  <eggert@twinsun.com>
38403
38404         * lib/tempname.c (uint64_t): Define to uintmax_t if
38405         not defined, and if UINT64_MAX is not defined.
38406         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
38407         Reported by John David Anglin.
38408
38409 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
38410
38411         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
38412         resolve alias if codeset is empty.
38413         * lib/config.charset (BeOS): Use wildcard syntax.
38414
38415 2001-03-13  Jim Meyering  <meyering@lucent.com>
38416
38417         * lib/path-concat.c (path_concat)
38418         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
38419         concatenating e.g., `C:' and `foo'.
38420         From Bruno Haible.
38421
38422 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
38423
38424         * lib/localcharset.c (locale_charset): Don't use
38425         setlocale(LC_CTYPE,NULL). Don't return NULL.
38426         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
38427
38428 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
38429
38430         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
38431         support for DOS/DJGPP.
38432
38433 2001-03-01  Paul Eggert  <eggert@twinsun.com>
38434
38435         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
38436         lacks mkstemp.  Compile our own tempname.c if we compile our own
38437         mkstemp.c, as mkstemp relies on tempname.
38438
38439 2001-03-01  Jim Meyering  <meyering@lucent.com>
38440
38441         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
38442         AH_VERBATIM really does output its argument verbatim.
38443
38444 2001-02-28  Paul Eggert  <eggert@twinsun.com>
38445
38446         * lib/Makefile.am (libfetish_a_SOURCES):
38447         Add dup-safer.c, fopen-safer.c.
38448         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
38449
38450         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
38451         * lib/unistd-safer.h: New files.
38452
38453 2001-02-25  Paul Eggert  <eggert@twinsun.com>
38454
38455         The mkstemp replacement is taken from glibc 2.2.2, with some
38456         portability fixes for use outside glibc, as follows:
38457
38458         * lib/tempname.c (struct_stat64): New macro.
38459         (direxists, __gen_tempname): Use it.
38460         This avoids a portability problem with Solaris 8.
38461
38462         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
38463         (<stddef.h>, <stdint.h>, <string.h>):
38464         Include only if STDC_HEADERS || _LIBC.
38465         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
38466         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
38467         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
38468         (__set_errno): Define this macro if <errno.h> doesn't.
38469         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
38470         Define these macros if <stdio.h> doesn't.
38471         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
38472         Define these macros if <sys/stat.h>
38473         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
38474         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
38475         __xstat64): Define if not _LIBC.
38476         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
38477         (__gen_tempname): Invoke gettimeofday only if
38478         HAVE_GETTIMEOFDAY || _LIBC;
38479         otherwise, fall back on plain "time".
38480         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
38481
38482         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
38483
38484         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
38485
38486 2001-02-18  Paul Eggert  <eggert@twinsun.com>
38487
38488         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
38489
38490 2001-02-17  Paul Eggert  <eggert@twinsun.com>
38491
38492         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
38493         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
38494         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
38495         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
38496
38497 2001-02-17  Paul Eggert  <eggert@twinsun.com>
38498
38499         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
38500         Remove workaround macros for hosts that have mbrtowc but not
38501         mbstate_t, as we now insist on proper declarations for both
38502         before using mbrtowc.
38503
38504 2001-02-17  Jim Meyering  <meyering@lucent.com>
38505
38506         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
38507         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
38508         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
38509         UnixWare 7.1.1.
38510
38511         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
38512         rather than AC_CACHE_VAL.
38513
38514 2001-02-17  Jim Meyering  <meyering@lucent.com>
38515
38516         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
38517         around included file name.
38518
38519         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
38520
38521         * lib/strftime.c: Update from GNU libc (the only changes were to
38522         comments).
38523
38524 2001-02-17  Jim Meyering  <meyering@lucent.com>
38525
38526         * lib/regex.c: Update from libc.
38527
38528 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
38529
38530         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
38531         clash.
38532
38533 2001-02-16  Paul Eggert  <eggert@twinsun.com>
38534
38535         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
38536         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
38537         Reported by Mark Hounschell via Paul Eggert.
38538
38539 2001-02-07  Jim Meyering  <meyering@lucent.com>
38540
38541         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
38542
38543 2001-02-05  Jim Meyering  <meyering@lucent.com>
38544
38545         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
38546         it includes the patch required for `large file' support with at least
38547         HP-UX's 10.20 /bin/cc.
38548
38549 2001-02-03  Jim Meyering  <meyering@lucent.com>
38550
38551         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
38552         AS_IF, now that it works once again (mysteriously).
38553         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38554
38555 2001-01-30  Jim Meyering  <meyering@lucent.com>
38556
38557         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
38558         * m4/chown.m4: Rename conftestchown to conftest.chown.
38559         * m4/rename.m4: s/conftestdir/conftest.d1/ and
38560         s/conftestdir2/conftest.d2/.
38561         * m4/utimes.m4: s/conftestdata/conftest.data/
38562         Inspired by Pavel Roskin's change in autoconf.
38563
38564 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
38565
38566         * lib/config.charset: Update for FreeBSD 4.2.
38567
38568 2001-01-27  Jim Meyering  <meyering@lucent.com>
38569
38570         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
38571         a use of AS_IF.
38572         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
38573
38574 2001-01-26  Jim Meyering  <meyering@lucent.com>
38575
38576         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
38577         quotearg.c includes it.
38578
38579 2001-01-26  Jim Meyering  <meyering@lucent.com>
38580
38581         * lib/quotearg.c: Include stddef.h.
38582         * lib/quote.c: Include stddef.h.
38583         Reported by Axel Kittenberger.
38584
38585         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
38586         line in double quotes so that it evokes a better diagnostic.
38587         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
38588         Reported by Axel Kittenberger.
38589
38590 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
38591
38592         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
38593         as if it was a `charset'.
38594
38595 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38596
38597         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
38598         has const.
38599
38600 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
38601
38602         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
38603         to avoid a warning.  Add back 'const' to inptr.
38604
38605 2001-01-20  Jim Meyering  <meyering@lucent.com>
38606
38607         Be sure that headers are checked before used in code compiled
38608         for the type checks.
38609         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
38610         In place of that, invoke jm_CHECK_ALL_TYPES.
38611         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
38612         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
38613         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
38614         The check for ssize_t was mistakenly run before the test for unistd.h.
38615
38616         The configure-time check for stdbool.h was missing.
38617         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
38618         (jm_PREREQ_HASH): New function.
38619
38620 2001-01-17  Jim Meyering  <meyering@lucent.com>
38621
38622         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
38623         for autoconf-2.49c.
38624         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
38625
38626 2001-01-16  Jim Meyering  <meyering@lucent.com>
38627
38628         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
38629         From Bruno Haible.
38630
38631 2001-01-14  Jim Meyering  <meyering@lucent.com>
38632
38633         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
38634         foo and bar.  Create conftestdir/ in the script, not in the C code.
38635         Remove directories in the script, not in the C code.
38636         Remove conftestdir{,2} before trying to create the directory.
38637         Make the entire configure script fail if the mkdir fails.
38638
38639 2001-01-14  Jim Meyering  <meyering@lucent.com>
38640
38641         * lib/rename.c: New file.  From Volker Borchert.
38642         Include stdlib.h, string.h or strings.h, and xalloc.h.
38643         Use strip_trailing_slashes rather than open-coding it.
38644
38645 2001-01-03  Paul Eggert  <eggert@twinsun.com>
38646
38647         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
38648
38649 2001-01-03  Jim Meyering  <meyering@lucent.com>
38650
38651         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
38652         of local `inptr' to avoid warning with some system declarations of
38653         iconv.
38654
38655 2001-01-02  Volker Borchert  <bt@teknon.de>
38656
38657         * m4/rename.m4: New file.
38658         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
38659
38660 2001-01-01  Jim Meyering  <meyering@lucent.com>
38661
38662         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
38663         even on systems with utmpx.h.  It's necessary for the declaration of
38664         utmp's ut_user member.  Reported by Andreas Jaeger.
38665
38666         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
38667         available. They are required for the declarations of getgrgid and
38668         getpwuid resp.
38669         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
38670         Reported by Andreas Jaeger.
38671
38672 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
38673
38674         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
38675         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
38676         so `make install' also works in VPATH builds.
38677
38678 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
38679
38680         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
38681         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
38682         can be used in subdirectories.
38683
38684 2000-12-29  Paul Eggert  <eggert@twinsun.com>
38685
38686         * lib/modechange.c: Do not assume that mode_t uses the
38687         traditional octal encoding.  E.g. "chmod 1 FOO" should set
38688         the other-execute bit of FOO even if S_IXOTH != 1.
38689
38690         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
38691         WOTH, XOTH, ALLM): New macros.
38692         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
38693          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
38694         Use them.
38695         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
38696         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
38697         (mode_compile):
38698         No need to use uintmax_t; unsigned long is long enough.
38699         Don't bother to get suffix since we don't use it.
38700
38701 2000-12-26  Jim Meyering  <meyering@lucent.com>
38702
38703         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
38704         better with autoheader.
38705
38706 2000-12-24  Jim Meyering  <meyering@lucent.com>
38707
38708         * lib/hash.c (is_prime): Return explicit boolean values.
38709         (hash_get_first): Return NULL to appease Irix5.6's 89.
38710         Reported by Nelson Beebe.
38711
38712 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
38713
38714         * lib/localcharset.c (locale_charset): Add support for Win32.
38715
38716 2000-12-18  Paul Eggert  <eggert@twinsun.com>
38717
38718         * lib/physmem.h, lib/physmem.c: New files.
38719
38720         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
38721         (noinst_HEADERS): Add physmem.h.
38722
38723         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
38724         't' for compatibility with Solaris 8 sort.
38725
38726 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
38727
38728         * lib/config.charset: Add support for BeOS.
38729
38730 2000-12-17  Jim Meyering  <meyering@lucent.com>
38731
38732         * m4/dos.m4 (jm_AC_DOS): New file and macro.
38733         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
38734
38735 2000-12-16  Jim Meyering  <meyering@lucent.com>
38736
38737         This bug had a serious impact on chown: `chown N:M FILE' (for integer
38738         N and M) would have treated it like `chown N:N FILE'.
38739
38740         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
38741
38742 2000-12-16  Jim Meyering  <meyering@lucent.com>
38743
38744         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
38745         SHELLS_FILE to a file name that's useful on djgpp systems.
38746         Include stdlib.h.
38747         (ADDITIONAL_DEFAULT_SHELLS): Define.
38748         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
38749         Based mostly on a patch from Prashant TR.
38750
38751 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
38752
38753         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
38754         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
38755         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
38756
38757 2000-12-08  Andreas Schwab  <schwab@suse.de>
38758
38759         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
38760         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
38761
38762 2000-12-07  Jim Meyering  <meyering@lucent.com>
38763
38764         * lib/stripslash.c (ISSLASH): Define.
38765         (strip_trailing_slashes): Use ISSLASH rather than comparing against
38766         `/'.
38767         From Prashant TR.
38768
38769         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
38770         (dir_name_r): Declare this function as static.
38771         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
38772         manifest itself on a name containing a mix of slashes and
38773         backslashes.
38774         Make this function work with names starting with a DOS-style
38775         drive letter and colon prefix.
38776         (dir_name): Append `.' if necessary.
38777         Based mostly on patches from Prashant TR and Eli Zaretskii.
38778
38779         * lib/dirname.h (dir_name_r): Remove prototype.
38780
38781 2000-12-06  Paul Eggert  <eggert@twinsun.com>
38782
38783         * m4/off_t-format.m4: Remove this file.
38784         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
38785
38786 2000-12-06  Jim Meyering  <meyering@lucent.com>
38787
38788         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
38789         replacement strtoull, we may well need the replacement strtoul, too.
38790         Check for declarations of strtoul and strtoull.
38791         Check for strtol.  Mainly as a cue to cause automake to include
38792         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
38793         Check for limits.h -- strtol.c needs it.
38794
38795 2000-12-05  Jim Meyering  <meyering@lucent.com>
38796
38797         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
38798
38799 2000-12-04  Jim Meyering  <meyering@lucent.com>
38800
38801         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
38802         Also include memory.h, stdlib.h, unistd.h if appropriate.
38803         Reported by Andreas Jaeger (conflicting declaration of malloc).
38804
38805 2000-12-02  Jim Meyering  <meyering@lucent.com>
38806
38807         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
38808         * m4/jm-macros.m4 (jm_MACROS): require it.
38809
38810 2000-12-02  Jim Meyering  <meyering@lucent.com>
38811
38812         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
38813
38814 2000-12-01  Paul Eggert  <eggert@twinsun.com>
38815
38816         * lib/memrchr.c: Include <config.h> before any system include file.
38817
38818 2000-11-30  Jim Meyering  <meyering@lucent.com>
38819
38820         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
38821
38822 2000-11-30  Jim Meyering  <meyering@lucent.com>
38823
38824         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
38825
38826 2000-11-29  Paul Eggert  <eggert@twinsun.com>
38827
38828         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
38829
38830 2000-11-26  Jim Meyering  <meyering@lucent.com>
38831
38832         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
38833
38834 2000-11-22  Paul Eggert  <eggert@twinsun.com>
38835
38836         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
38837         size of (size_t) -1; it's not portable.
38838
38839 2000-11-17  Jim Meyering  <meyering@lucent.com>
38840
38841         * lib/strstr.c: Update from GNU libc.
38842
38843 2000-11-17  Akim Demaille  <akim@epita.fr>
38844
38845         * lib/obstack.h: Formatting changes.
38846         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
38847         prevent type checking.
38848         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
38849         cast the value to (void *): assigning a `foo *' to a `void *'
38850         variable is valid.
38851         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
38852
38853 2000-11-16  Jim Meyering  <meyering@lucent.com>
38854
38855         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
38856
38857 2000-11-11  Jim Meyering  <meyering@lucent.com>
38858
38859         * lib/error.c: Add a couple #includes, merging from GNU libc version.
38860
38861 2000-11-10  Jim Meyering  <meyering@lucent.com>
38862
38863         * lib/obstack.h: Update from GNU libc.
38864         * lib/obstack.c: Likewise.
38865
38866 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
38867
38868         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
38869
38870 2000-11-06  Paul Eggert  <eggert@twinsun.com>
38871
38872         * lib/getusershell.c (setusershell): Use rewind rather than
38873         fseek/fseeko, to avoid configuration hassles with fseeko.
38874         Don't bother opening SHELLS_FILE if shellstream is NULL;
38875         it's not necessary.
38876
38877 2000-11-05  Jim Meyering  <meyering@lucent.com>
38878
38879         * lib/makepath.h (make_dir): Declare.
38880         * lib/makepath.c (make_dir): Remove `static' attribute.
38881         Tweak a comment.
38882
38883 2000-11-04  Jim Meyering  <meyering@lucent.com>
38884
38885         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
38886
38887 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
38888
38889         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
38890         last one in a bucket, advance to the next bucket.
38891
38892 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
38893
38894         * lib/fnmatch.c: Do not comment out all the code if we are using
38895         the GNU C library, because in some cases we are replacing buggy
38896         code in the GNU C library itself.
38897
38898 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
38899
38900         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
38901         (regex_compile): Catch bogus \(\1\).
38902
38903 2000-10-30  Paul Eggert  <eggert@twinsun.com>
38904
38905         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
38906         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
38907         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
38908
38909 2000-10-30  Paul Eggert  <eggert@twinsun.com>
38910
38911         * lib/error.h, getline.h, modechange.h:
38912         Remove "2000" from Copyright line, as the file hasn't been
38913         changed this year other than in the copyright notice.
38914
38915         * lib/xalloc.h: Add "2000" to Copyright line, as this file
38916         was changed this year.
38917
38918 2000-10-29  Jim Meyering  <meyering@lucent.com>
38919
38920         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
38921         renaming.
38922         * m4/ls-mntd-fs.m4: Likewise
38923
38924 2000-10-29  Jim Meyering  <meyering@lucent.com>
38925
38926         * lib/xstat.in: Fix grammar in comment.
38927
38928 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
38929
38930         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
38931         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
38932         doesn't define __restrict_arr.
38933
38934 2000-10-28  Jim Meyering  <meyering@lucent.com>
38935
38936         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
38937         (jm_PREREQ_MEMCHR): New function.
38938
38939 2000-10-28  Jim Meyering  <meyering@lucent.com>
38940
38941         * lib/memchr.c: Update from libc.
38942         Adjust for portability:
38943         [HAVE_STDLIB_H]: Include stdlib.h.
38944         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
38945         Undef __memchr, too.
38946         [!weak_alias]: Define __memchr to memchr.
38947
38948         * lib/regex.c: Update from libc.
38949         * lib/regex.h: Likewise.
38950         * lib/getopt1.c: Likewise.
38951         * lib/memcmp.c: Likewise.
38952
38953         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
38954         Avoid using fseek, when possible -- it's broken by design.
38955         Patch by Ulrich Drepper.
38956
38957 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
38958
38959         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
38960         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
38961         Giving in to popular pressure to shut up the compiler with casts.
38962
38963 2000-10-26  Jim Meyering  <meyering@lucent.com>
38964
38965         * lib/strftime.c: Update from libc.
38966
38967 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
38968
38969         * regex.c: More `unsigned char' -> `re_char' changes.
38970         Also change several `int' into `re_wchar_t'.
38971         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
38972         (PUSH_FAILURE_POINTER): Don't cast any more.
38973         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
38974         We want GCC to complain, since this piece of code makes
38975         re_match non-reentrant, which *should* be fixed.
38976         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
38977         (EXTEND_BUFFER): Use RETALLOC.
38978         (SET_LIST_BIT): Don't cast.
38979         (re_wchar_t): New type.
38980         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
38981         that those two functions will always properly return.
38982         (IMMEDIATE_QUIT_CHECK): Cast to void.
38983         (analyse_first): Use recursion rather than an explicit stack.
38984         (re_compile_fastmap): Can't fail anymore.
38985         (re_search_2): Don't check re_compile_fastmap for failure.
38986         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
38987         Now also sets the new value (passed in a new argument).
38988         (re_match_2_internal): Use it.
38989         Also, use a new var `reg' of type size_t when looping through regs
38990         rather than reuse the inappropriate `mcnt'.
38991
38992 2000-10-25  Jim Meyering  <meyering@lucent.com>
38993
38994         * lib/obstack.c: Update from libc.
38995
38996 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
38997
38998         * regex.c (regex_compile): Change the way of handling a range from
38999         a char less than 256 to a char not less than 256.
39000
39001 2000-10-24  Andrew Innes  <andrewi@gnu.org>
39002
39003         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
39004         NT-Emacs only.
39005         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
39006         so that re_search functions only quit when callers expect them to.
39007
39008 2000-10-23  Jim Meyering  <meyering@lucent.com>
39009
39010         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
39011         wrong.  That set_locale call must not have any side effects.
39012         From Paul Eggert.
39013
39014 2000-10-22  Jim Meyering  <meyering@lucent.com>
39015
39016         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
39017         [CYCLIC]: Remove now-unused definition.
39018
39019         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
39020         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
39021         Suggestion from Ulrich Drepper.
39022
39023 2000-10-21  Jim Meyering  <meyering@lucent.com>
39024
39025         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
39026         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
39027         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
39028
39029 2000-10-21  Jim Meyering  <meyering@lucent.com>
39030
39031         * lib/dirname.c (memrchr): Declare if necessary.
39032         (dir_name): Remove the restriction that there be no
39033         trailing slashes.  Now, this code skips past them, effectively
39034         ignoring them.
39035         [TEST_DIRNAME] (main): New unit tests.
39036
39037         * lib/memrchr.c: New file from GNU libc.
39038         Undef __memrchr, too.
39039         [!weak_alias]: Define __memrchr to memrchr.
39040         Guard weak_alias use with `#ifdef weak_alias'.
39041
39042 2000-10-21  Jim Meyering  <meyering@lucent.com>
39043
39044         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
39045         (dir_name): Use dir_name_r.
39046         * lib/dirname.h (dir_name_r): Declare it.
39047
39048 2000-10-17  Jim Meyering  <meyering@lucent.com>
39049
39050         * lib/quote.h (PARAMS): Define and use.
39051         Reported by Akim Demaille.
39052
39053         * lib/getopt.c: Update from libc.
39054
39055 2000-10-16  Jim Meyering  <meyering@lucent.com>
39056
39057         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
39058         setlocale.
39059         From Jan Fedak.
39060
39061 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
39062
39063         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
39064
39065 2000-09-25  Jim Meyering  <meyering@lucent.com>
39066
39067         * lib/md5.h (rol): Define (from GnuPG).
39068
39069         * lib/sha.c: Give credit (GnuPG) where due.
39070         (M): Use rol rather than open-coding it.
39071         Add a FIXME comment.
39072
39073 2000-09-21  Jim Meyering  <meyering@lucent.com>
39074
39075         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
39076         Reported by Michael Stone.
39077
39078 2000-09-20  Jim Meyering  <meyering@lucent.com>
39079
39080         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
39081         (noinst_HEADERS): Add sha.h.
39082         Based on code from Scott G. Miller and from GnuPG.
39083
39084 2000-09-18  Jim Meyering  <meyering@lucent.com>
39085
39086         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
39087         LIBS. Otherwise, everyone ends up linking with -lelf for some
39088         configurations.
39089         Reported by Mike Stone.
39090
39091 2000-09-15  Jim Meyering  <meyering@lucent.com>
39092
39093         * lib/regex.c: Update from libc.
39094
39095 2000-09-10  Jim Meyering  <meyering@lucent.com>
39096
39097         * lib/getopt.c (_getopt_internal): Update from glibc.
39098
39099 2000-09-09  Jim Meyering  <meyering@lucent.com>
39100
39101         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
39102         think it should be used as a general replacement for isascii.
39103         * lib/fnmatch.c: Likewise.
39104         * lib/mbswidth.c: Likewise
39105         * lib/regex.c: Likewise.
39106
39107         Don't use atoi.
39108         * lib/userspec.c: Include sys/param.h and limits.h.
39109         Include xstrtol.h.
39110         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
39111         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
39112         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
39113         UID, GID.  Check range.
39114
39115 2000-09-06  Jim Meyering  <meyering@lucent.com>
39116
39117         * lib/getopt.c (_getopt_internal): Update from glibc.
39118
39119 2000-08-30  Jim Meyering  <meyering@lucent.com>
39120
39121         * lib/strftime.c: Merge in changes from GNU libc.
39122
39123 2000-08-26  Jim Meyering  <meyering@lucent.com>
39124
39125         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
39126         * m4/fpending.m4: New file.
39127
39128 2000-08-26  Jim Meyering  <meyering@lucent.com>
39129
39130         * lib/closeout.c: Include "__fpending.h".
39131         (close_stdout_status): Return right away if there's nothing to flush.
39132
39133         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
39134         * lib/__fpending.c: New file.
39135         * lib/__fpending.h: New file.
39136
39137 2000-08-20  Jim Meyering  <meyering@lucent.com>
39138
39139         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
39140         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
39141         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
39142
39143 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
39144
39145         Improve fileutils installation on systems where running
39146         programs (like install) can't be unlinked.
39147         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
39148         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
39149
39150 2000-08-07  Paul Eggert  <eggert@twinsun.com>
39151
39152         Standardize on "memory exhausted" instead of "Memory exhausted"
39153         or "virtual memory exhausted".
39154         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
39155         "virtual memory exhausted".
39156         * lib/same.c (same_name): Invoke xalloc_die instead of printing
39157         our own message.
39158         * lib/userspec.c (parse_user_spec): Likewise.
39159         * lib/bumpalloc.h: comment fix
39160         * lib/same.c, userspec.c: Include xalloc.h.
39161
39162         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
39163         not char *const and pointing to a constant array.
39164         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
39165         (xrealloc): Comment fix.
39166
39167         * lib/userspec.c (parse_user_spec):
39168         Don't translate a message until just before returning,
39169         to avoid unnecessary translation.
39170
39171 2000-08-07  Jim Meyering  <meyering@lucent.com>
39172
39173         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
39174         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
39175         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
39176         getgroups.c, gethostname.c, getopt.h, group-member.c,
39177         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
39178         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
39179         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
39180         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
39181         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
39182         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
39183         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
39184         yesno.c: Back out Copyright date changes for each file with no change
39185         this year.  This eases coordination with other programs using the same
39186         source code modules.  From Paul Eggert.
39187
39188 2000-08-06  Paul Eggert  <eggert@twinsun.com>
39189
39190         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
39191         not char, for compatibility with glibc 2.1.3 strftime.c.
39192
39193 2000-08-03  Greg McGary  <greg@mcgary.org>
39194
39195         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
39196         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
39197         (EXTEND_BUFFER): Use them.
39198
39199 2000-08-01  Jim Meyering  <meyering@lucent.com>
39200
39201         * lib/dirname.c (ISSLASH): Define.
39202         (BACKSLASH_IS_PATH_SEPARATOR): Define.
39203         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
39204         both `\' and `/' may be use as path separators.
39205         Based on a patch from Prashant TR.
39206
39207 2000-07-31  Paul Eggert  <eggert@twinsun.com>
39208
39209         * lib/quotearg.c (quotearg_n_options): Don't make the initial
39210         slot vector a constant, since it might get modified.
39211
39212 2000-07-31  Jim Meyering  <meyering@lucent.com>
39213
39214         * lib/xmalloc.c: Use `virtual memory exhausted', not
39215         `Memory exhausted'.
39216         * lib/obstack.c (print_and_abort): Likewise.
39217
39218 2000-07-30  Paul Eggert  <eggert@twinsun.com>
39219
39220         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
39221         buffer, so that the caller can always quote one small
39222         component of a "memory exhausted" message in slot 0.
39223         From a suggestion by Jim Meyering.
39224
39225 2000-07-30  Jim Meyering  <meyering@lucent.com>
39226
39227         * lib/makepath.c (make_path): Quote the other instance, too.
39228
39229         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
39230         (STATIC_BUF_SIZE): Define.
39231         (quotearg_n_options): Use only statically allocated storage when
39232         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
39233         than STATIC_BUF_SIZE.
39234
39235 2000-07-29  Jim Meyering  <meyering@lucent.com>
39236
39237         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
39238         * lib/dirname.c (dir_name): Likewise.
39239
39240         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
39241         `/'.
39242
39243         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
39244         (dir_name): Assert that there are no trailing slashes.
39245
39246 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
39247
39248         * lib/mbswidth.h (mbswidth): Add a flags argument.
39249         (mbswidth): New declaration.
39250         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
39251         * lib/mbswidth.c (mbswidth): Add a flags argument.
39252         (mbsnwidth): New function.
39253
39254 2000-07-24  Jim Meyering  <meyering@lucent.com>
39255
39256         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
39257
39258 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39259
39260         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
39261
39262 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39263
39264         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
39265         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
39266         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
39267         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
39268         invoke multibyte primitives.
39269
39270 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39271
39272         * lib/quotearg.c:
39273         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
39274         so that mbstate_t is always defined.
39275
39276         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
39277         be 1 in at least one GCC installation, and this configuration
39278         error is likely to be common.  Ignoring MB_LEN_MAX hurts
39279         performance on hosts that have mbrtowc but have only unibyte
39280         locales, but I assume these hosts are rare.
39281
39282 2000-07-23  Paul Eggert  <eggert@twinsun.com>
39283
39284         * lib/mbswidth.c (_XOPEN_SOURCE):
39285         Don't define; this causes problems on Solaris 7.
39286         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
39287
39288 2000-07-23  Jim Meyering  <meyering@lucent.com>
39289
39290         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
39291         too: getgrgid, getpwuid, getuid.
39292
39293 2000-07-23  Jim Meyering  <meyering@lucent.com>
39294
39295         * lib/basename.c (base_name): Add an assertion.
39296
39297 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
39298
39299         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
39300         shadow its mbsinit function.
39301
39302 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
39303
39304         * lib/mbswidth.h: New file.
39305         * lib/mbswidth.c: New file.
39306         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
39307         (noinst_HEADERS): Add mbswidth.h.
39308
39309 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
39310
39311         * lib/config.charset: Add support for FreeBSD. Improve support for
39312         HP-UX and IRIX 6.
39313
39314 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
39315
39316         * m4/mbswidth.m4: New file.
39317         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
39318
39319 2000-07-15  Jim Meyering  <meyering@lucent.com>
39320
39321         * lib/makepath.c: Include quote.h.
39322         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
39323         corresponding argument in a `quote (...)' call.
39324         Give better diagnostics.
39325
39326         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
39327         (noinst_HEADERS): Add quote.h.
39328
39329         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
39330         from tar's src/misc.c.
39331         * lib/quote.h: New file.  Prototypes for same.
39332
39333 2000-07-14  Paul Eggert  <eggert@twinsun.com>
39334
39335         From a suggestion by Bruno Haible.
39336         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
39337         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
39338         to decide whether to define the BeOS workaround macro;
39339         this adjusts to the change to AC_MBSTATE_T.
39340
39341 2000-07-14  Jim Meyering  <meyering@lucent.com>
39342
39343         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
39344         jm_AC_TYPE_UINTMAX_T.
39345
39346 2000-07-13  Paul Eggert  <eggert@twinsun.com>
39347
39348         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
39349
39350         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
39351         quotearg_buffer_restyled): Add support for
39352         clocale_quoting_style.  Undo previous change to
39353         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
39354         and "{RIGHT QUOTATION MARK}" msgids.
39355
39356 2000-07-10  Paul Eggert  <eggert@twinsun.com>
39357
39358         From a suggestion by Bruno Haible.
39359         * m4/mbstate_t.m4 (AC_MBSTATE_T):
39360         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
39361         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
39362         and mbstate_t, to a single-part test that simply defines mbstate_t.
39363         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
39364         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
39365
39366 2000-07-10  Jim Meyering  <meyering@lucent.com>
39367
39368         * m4/strerror_r.m4: Mirror the correction made in autoconf.
39369
39370         * m4/gnu-source.m4: Output to confdefs.h directly.
39371         Suggestion from Akim Demaille.
39372
39373 2000-07-09  Paul Eggert  <eggert@twinsun.com>
39374
39375         The old behavior of quoting `like this' doesn't look good with
39376         newer, ISO-style fonts.  See:
39377         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
39378
39379         Instead, quote "like this" by default.  Let the translator
39380         tailor the locale-specific quoting behavior by providing
39381         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
39382
39383         * lib/quotearg.c (N_): New macro.
39384         (gettext_default): New function.
39385         (quotearg_buffer_restyled): Use
39386         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
39387         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
39388
39389 2000-07-09  Jim Meyering  <meyering@lucent.com>
39390
39391         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
39392         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
39393
39394         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
39395         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
39396
39397 2000-07-09  Jim Meyering  <meyering@lucent.com>
39398
39399         * lib/Most files: Update copyright dates to include 2000.
39400
39401 2000-07-08  Jim Meyering  <meyering@lucent.com>
39402
39403         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
39404         if not defined.
39405         (xgethostname): Remove now-unnecessary #ifdef.
39406         Move declaration of `err' into loop where it's used.
39407
39408 2000-07-05  Paul Eggert  <eggert@twinsun.com>
39409         and Bruno Haible  <haible@clisp.cons.org>
39410
39411         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
39412         only if the test for an object-type mbstate_t fails.  This
39413         prevents us from mistakenly reporting that mbstate_t is a
39414         system object type after we "#define mbstate_t int" to work
39415         around its lack.
39416
39417 2000-07-05  Paul Eggert  <eggert@twinsun.com>
39418         and Bruno Haible  <haible@clisp.cons.org>
39419
39420         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
39421
39422 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39423
39424         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
39425         to strerror_r.
39426         Include <ctype.h> for use of isalpha.
39427
39428 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39429
39430         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
39431         by allocating a larger buffer. Test the gethostname return value for
39432         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
39433         returns an error and ENAMETOOLONG isn't defined.
39434
39435 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
39436
39437         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
39438         dimension.
39439
39440 2000-07-04  Jim Meyering  <meyering@lucent.com>
39441
39442         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
39443         of the deprecated AC_CHECKING.
39444
39445 2000-07-04  Jim Meyering  <meyering@lucent.com>
39446
39447         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
39448         Reported by Bruno Haible.
39449
39450 2000-07-04  Jim Meyering  <meyering@lucent.com>
39451
39452         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
39453         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
39454         lacks mbrtowc.
39455
39456 2000-07-03  Paul Eggert  <eggert@twinsun.com>
39457
39458         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
39459         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
39460
39461 2000-07-03  Paul Eggert  <eggert@twinsun.com>
39462         and Bruno Haible  <haible@clisp.cons.org>
39463
39464         * lib/quotearg.c (mbrtowc):
39465         Assign to *pwc, and return 1 only if result is nonzero.
39466         (iswprint): Use ISPRINT when substituting our own mbrtowc.
39467
39468 2000-07-03  Jim Meyering  <meyering@lucent.com>
39469
39470         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
39471
39472 2000-07-03  Jim Meyering  <meyering@lucent.com>
39473
39474         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
39475         This is necessary to get a definition of e.g., UTMP_FILE on
39476         HP-UX 10.20.
39477         From Bob Proulx.
39478
39479 2000-07-02  Jim Meyering  <meyering@lucent.com>
39480
39481         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
39482
39483         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
39484         AC_LIBOBJ(function_name).
39485         * m4/chown.m4: Likewise.
39486         * m4/fnmatch.m4: Likewise.
39487         * m4/ftruncate.m4: Likewise.
39488         * m4/getgroups.m4: Likewise.
39489         * m4/getline.m4: Likewise.
39490         * m4/group-member.m4: Likewise.
39491         * m4/jm-macros.m4: Likewise.
39492         * m4/lstat.m4: Likewise.
39493         * m4/malloc.m4: Likewise.
39494         * m4/memcmp.m4: Likewise.
39495         * m4/nanosleep.m4: Likewise.
39496         * m4/putenv.m4: Likewise.
39497         * m4/realloc.m4: Likewise.
39498         * m4/regex.m4: Likewise.
39499         * m4/stat.m4: Likewise.
39500         * m4/strftime.m4: Likewise.
39501
39502 2000-07-02  Jim Meyering  <meyering@lucent.com>
39503
39504         * lib/quotearg.c (mbstate_t): Don't define here.
39505
39506 2000-07-02  Jim Meyering  <meyering@lucent.com>
39507
39508         * lib/nanosleep.c (SIGCONT): Define if not already defined.
39509
39510 2000-07-01  Jim Meyering  <meyering@lucent.com>
39511
39512         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
39513
39514 2000-07-01  Jim Meyering  <meyering@lucent.com>
39515
39516         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
39517         problem.
39518
39519 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39520
39521         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
39522         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
39523
39524 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
39525
39526         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
39527         per change in ../m4/ls-mntd-fs.m4.
39528         (read_filesystem_list): Ignore symbolic links.
39529
39530 2000-06-29  Jim Meyering  <meyering@lucent.com>
39531
39532         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
39533         for declaration of strcmp.
39534
39535         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
39536
39537         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
39538         Avoid warning by casting result to `char *' to remove `const'.
39539
39540 2000-06-28  Jim Meyering  <meyering@lucent.com>
39541
39542         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
39543         included by quotearg.c, for which we perform this test.  From
39544         Bruno Haible.
39545
39546 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39547
39548         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
39549         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
39550         <utmpx.h> exists, put readutmp.o into LIBOBJS.
39551
39552 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
39553
39554         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
39555
39556 2000-06-26  Paul Eggert  <eggert@twinsun.com>
39557
39558         savedir now sets errno on failure and invokes xmalloc to get memory.
39559         Fix a couple of other minor bugs while we're at it.
39560
39561         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
39562         (NAMLEN): Remove macro.
39563         (malloc, realloc): Remove decls.
39564         (stpcpy): Likewise.
39565         ("xalloc.h"): Include.
39566         (NAME_SIZE_DEFAULT): New macro.
39567         (savedir): Use xmalloc / xrealloc to allocate memory.
39568         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
39569         Skip "" directory entries.
39570         Use strlen to calculate directory entry length, since the old method
39571         is rarely used these days and isn't worth supporting.
39572         Don't use a pointer after freeing it.
39573         Check for integer overflow when calculating allocation size.
39574         Use memcpy to copy entries, instead of stpcpy.
39575         Set errno properly when returning NULL.
39576         Check for readdir error.
39577
39578 2000-06-26  Jim Meyering  <meyering@lucent.com>
39579
39580         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
39581
39582 2000-06-25  Jim Meyering  <meyering@lucent.com>
39583
39584         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
39585         Linux header bug when _XOPEN_SOURCE is defined to 500.
39586
39587 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39588
39589         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
39590         deficiency.
39591
39592 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
39593
39594         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
39595         Include xalloc.h.
39596         Don't include <stdlib.h>.  Don't declare malloc, realloc.
39597
39598 2000-06-24  Jim Meyering  <meyering@lucent.com>
39599
39600         * m4/strerror_r.m4: Revive this file -- to try out an experimental
39601         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
39602         for which strerror does return char*, but which lacks a conveniently
39603         accessible declaration of the function.  If the compile-test says
39604         strerror_r doesn't work, then resort to a `run'-test that works on
39605         BeOS and segfaults on DEC Unix.
39606
39607 2000-06-24  Jim Meyering  <meyering@lucent.com>
39608
39609         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
39610
39611 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39612
39613         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
39614         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
39615
39616 2000-06-23  Paul Eggert  <eggert@twinsun.com>
39617
39618         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
39619         (mbrtowc, mbstate_t): Define substitutes if
39620         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
39621         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
39622         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
39623
39624 2000-06-23  Jim Meyering  <meyering@lucent.com>
39625
39626         * m4/afs.m4: Add missing AC_MSG_RESULT.
39627         Reported by Bruno Haible.
39628
39629         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
39630         Suggestion from Bruno Haible.
39631
39632 2000-06-23  Jim Meyering  <meyering@lucent.com>
39633
39634         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
39635
39636 2000-06-21  Jim Meyering  <meyering@lucent.com>
39637
39638         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
39639
39640 2000-06-21  Jim Meyering  <meyering@lucent.com>
39641
39642         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
39643         (noinst_HEADERS): Add getstr.h.
39644
39645         * lib/getline.c (getstr): Move into a separate file.
39646         * lib/getstr.c (getstr): New file, extracted from getline.c, with
39647         the following changes: new parameter, delim2; both delim[12]
39648         parameters have type `int', not `char'.  The latter would lose
39649         with 8-bit delimiters.
39650         * lib/getstr.h: New file.
39651
39652 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39653
39654         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
39655         than 1024, return a memory chunk of least possible size, instead
39656         of size PATH_MAX + 2. In the loop, increment the size proportionally.
39657         Use free/xmalloc instead of xrealloc to avoid copying for very long
39658         paths.
39659
39660 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39661
39662         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
39663         the empty string.
39664
39665 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
39666
39667         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
39668         address, not strdup.  Include <stdlib.h> and don't declare free().
39669
39670 2000-06-19  Jim Meyering  <meyering@lucent.com>
39671
39672         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
39673
39674 2000-06-18  Jim Meyering  <meyering@lucent.com>
39675
39676         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
39677
39678         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
39679         `checking whether...' message to be consistent with that of the
39680         lstat test.
39681
39682 2000-06-18  Jim Meyering  <meyering@lucent.com>
39683
39684         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
39685         Besides, these days every porting target provides a mkdir function.
39686
39687         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
39688         needed. (this snippet comes from src/system.h).
39689
39690 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
39691
39692         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
39693
39694 2000-06-15  Paul Eggert  <eggert@twinsun.com>
39695
39696         * lib/human.c (adjust_value): New function.
39697         (human_readable_inexact): Apply rounding style even when
39698         printing approximate values.
39699
39700 2000-06-14  Paul Eggert  <eggert@twinsun.com>
39701
39702         * lib/human.c (human_readable_inexact): Allow an input block
39703         size that is not a multiple of the output block size, and vice versa.
39704         Reported by Piergiorgio Sartor.
39705
39706 2000-06-14  Paul Eggert  <eggert@twinsun.com>
39707
39708         * lib/getdate.y (get_date): Apply relative times after time
39709         zone indicator, not before.  Reported by Todd A. Jacobs.
39710
39711 2000-06-13  Jim Meyering  <meyering@lucent.com>
39712
39713         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
39714
39715         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
39716
39717 2000-06-12  Paul Eggert  <eggert@twinsun.com>
39718
39719         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
39720
39721 2000-06-12  Jim Meyering  <meyering@lucent.com>
39722
39723         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
39724         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
39725         optional argument.
39726         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
39727         the optional argument, `lib'.
39728
39729 2000-06-08  Jim Meyering  <meyering@lucent.com>
39730
39731         * m4/largefile.m4: Remove file (now that it's part of autoconf).
39732
39733 2000-06-04  Paul Eggert  <eggert@twinsun.com>
39734
39735         Rewrite largefile configuration so that we don't need to run
39736         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
39737         AC_CANONICAL_HOST in configure.in -- jmm]
39738
39739         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
39740         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
39741         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
39742         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
39743         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
39744         All uses changed.
39745         Instead of inspecting the output of getconf, try to compile the
39746         test program without and with the macro definition.
39747         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
39748         for getconf.  Instead, check for the needed flags by compiling
39749         test programs.
39750
39751 2000-06-04  Paul Eggert  <eggert@twinsun.com>
39752
39753         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
39754
39755 2000-06-04  Jim Meyering  <meyering@lucent.com>
39756
39757         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
39758         SunOS 4.1.4 for which gid_t is an unsigned type.
39759
39760 2000-06-03  Jim Meyering  <meyering@lucent.com>
39761
39762         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
39763         now that autoconf requires that.
39764
39765         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
39766         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
39767         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
39768
39769 2000-06-03  Jim Meyering  <meyering@lucent.com>
39770
39771         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
39772
39773 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
39774
39775         * m4/glibc21.m4: New file.
39776         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
39777
39778 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
39779
39780         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
39781         newer, don't install charset.alias.
39782         * lib/config.charset: Change the Linux/glibc rules so they become empty
39783         on glibc-2.1 or newer.
39784
39785 2000-06-02  Jim Meyering  <meyering@lucent.com>
39786
39787         * lib/mountlist.c: Back out last change.  Instead, do this...
39788         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
39789         me_dummy member using the same `ignore'-testing code.
39790         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
39791         fs_type strings.
39792         From Mark D. Roth.
39793
39794 2000-05-29  Jim Meyering  <meyering@lucent.com>
39795
39796         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
39797         mounts with the `ignore' attribute.  Based on a patch from
39798         Mark D. Roth.
39799
39800 2000-05-28  Jim Meyering  <meyering@lucent.com>
39801
39802         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
39803         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
39804         * m4/stat.m4: Likewise.
39805         * m4/lstat.m4: Likewise.
39806         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
39807
39808         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
39809         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
39810
39811 2000-05-26  Jim Meyering  <meyering@lucent.com>
39812
39813         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
39814
39815 2000-05-24  Jim Meyering  <meyering@lucent.com>
39816
39817         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
39818         autoconf requires that.
39819         * m4/lib-check.m4: Likewise.
39820         * m4/jm-macros.m4: Likewise.
39821         * m4/strftime.m4: Likewise.
39822
39823         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
39824         AC_CHECK_DECLS, now that autoconf requires that.
39825
39826 2000-05-22  Jim Meyering  <meyering@lucent.com>
39827
39828         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
39829         * m4/lstat.m4: Likewise.
39830
39831 2000-05-22  Jim Meyering  <meyering@lucent.com>
39832
39833         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
39834
39835 2000-05-20  Jim Meyering  <meyering@lucent.com>
39836
39837         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
39838         (jm_PREREQ): Use it.
39839
39840 2000-05-18  Jim Meyering  <meyering@lucent.com>
39841
39842         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
39843         back, too, since it may have been modified by allocate_entry.
39844         (hash_delete): Rewrite to use neither the assignment operator
39845         nor the comma operator in an if-expression.
39846
39847 2000-05-15  Paul Eggert  <eggert@twinsun.com>
39848
39849         * lib/closeout.c:
39850         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
39851         Remove; no longer needed.
39852         "quotearg.h": Add include.
39853         (file_name): Do not bother to explicitly initialize to NULL; it's less
39854         efficient on some hosts.
39855         (close_stdout_status): Remove test as to whether stdout was already
39856         closed; it breaks for the case "echo x | sort >&-".
39857         Quote file name colons.
39858         Do not assume that _("write error") lacks format strings.
39859
39860 2000-05-15  Jim Meyering  <meyering@lucent.com>
39861
39862         * lib/version-etc.c (version_etc_copyright): Update the copyright
39863         string used in all --version output.
39864
39865 2000-05-14  Jim Meyering  <meyering@lucent.com>
39866
39867         * lib/closeout.c (close_stdout_set_file_name): New function.
39868         (close_stdout_status): Use new file-scoped global.
39869         Return right away if fstat says the stdout file descriptor is invalid.
39870         * lib/closeout.h (close_stdout_set_file_name): Declare.
39871
39872 2000-05-10  Jim Meyering  <meyering@lucent.com>
39873
39874         * lib/closeout.c [default_exit_status]: New file-scoped variable.
39875         (close_stdout_set_status): New function.
39876         * lib/closeout.h (close_stdout_set_status): Declare.
39877
39878 2000-05-09  Jim Meyering  <meyering@lucent.com>
39879
39880         * m4/gettext.m4: Rename this...
39881         * m4/libintl.m4: ...to this.
39882
39883 2000-05-08  Jim Meyering  <meyering@lucent.com>
39884
39885         * lib/long-options.c: Don't include closeout.h.
39886         (parse_long_options): Don't call close_stdout for --version.
39887
39888 2000-05-06  Paul Eggert  <eggert@twinsun.com>
39889
39890         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
39891         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
39892         2.1.3 bug.  This avoids a clash when files like regex.c define
39893         _GNU_SOURCE.
39894
39895 2000-05-06  Jim Meyering  <meyering@lucent.com>
39896
39897         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
39898         (AC_REPLACE_FUNCS): Add strnlen.
39899
39900         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
39901         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
39902
39903         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
39904         AC_SEARCH_LIBS call for nanosleep.
39905         (LIB_NANOSLEEP): Set and AC_SUBST.
39906
39907 2000-05-06  Jim Meyering  <meyering@lucent.com>
39908
39909         * lib/strnlen.c: Undefine __strnlen and strnlen.
39910         [!weak_alias]: Define __strnlen to strnlen.
39911
39912         * lib/atexit.c: New file, from libiberty.
39913
39914 2000-05-06  Jim Meyering  <meyering@lucent.com>
39915
39916         * lib/closeout.c (close_stdout_status): Also check for errors on the
39917         stderr stream.
39918
39919 2000-05-05  Jim Meyering  <meyering@lucent.com>
39920
39921         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
39922         AC_SEARCH_LIBS call for clock_gettime.
39923         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
39924
39925         * m4/search-libs.m4: Update from autoconf.
39926
39927         su doesn't work on Solaris 2.6.
39928         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
39929         <shadow.h>.  Reported by Dragos Harabor.
39930
39931 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
39932
39933         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
39934         memcpy instead of xmalloc, xrealloc, path_concat.
39935         (locale_charset): Treat empty environment variables as absent.
39936         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
39937
39938 2000-05-04  Jim Meyering  <meyering@lucent.com>
39939
39940         * lib/getopt.c: Update from glibc.
39941         * lib/obstack.c: Likewise.
39942         * lib/obstack.h: Likewise.
39943         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
39944         file
39945
39946         * lib/regex.h: Likewise.
39947         * lib/strndup.c: Likewise.
39948         * lib/strnlen.c: New file, from glibc.
39949
39950 2000-05-03  Jim Meyering  <meyering@lucent.com>
39951
39952         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
39953
39954 2000-05-02  Paul Eggert  <eggert@twinsun.com>
39955
39956         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
39957         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
39958         compile-time test, rather than inspecting host and OS, to
39959         decide whether to define _LARGEFILE_SOURCE.
39960
39961 2000-05-01  Jim Meyering  <meyering@lucent.com>
39962
39963         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
39964
39965         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
39966         Based on a patch from Bruno Haible.
39967
39968 2000-05-01  Jim Meyering  <meyering@lucent.com>
39969
39970         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
39971
39972 2000-04-29  Jim Meyering  <meyering@lucent.com>
39973
39974         * lib/path-concat.c: Declare strdup only if it's not defined.
39975         * lib/canon-host.c: Likewise.
39976
39977 2000-04-28  Jim Meyering  <meyering@lucent.com>
39978
39979         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
39980         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
39981         is included first, then limits.h is included by locale.h by libintl.h.
39982         From John David Anglin.
39983
39984 2000-04-25  Jim Meyering  <meyering@lucent.com>
39985
39986         * lib/makepath.c (S_IRWXUGO): Define.
39987         (make_path): Always perform explicit chmod if MODE specifies any
39988         of the `special' permission bits.  Prompted by a bug report against
39989         install from Mate Wierdl and Joost van Baal.
39990
39991 2000-04-18  Jim Meyering  <meyering@lucent.com>
39992
39993         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
39994         (jm_PREREQ): Use it.
39995
39996 2000-04-18  Jim Meyering  <meyering@lucent.com>
39997
39998         * lib/README: New file.
39999
40000         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
40001         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
40002
40003 2000-04-17  Jim Meyering  <meyering@lucent.com>
40004
40005         Get it right :-)
40006         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
40007         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
40008         Suggestion from Akim Demaille.
40009
40010 2000-04-17  Jim Meyering  <meyering@lucent.com>
40011
40012         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
40013         the definition of it to rpl_strftime also defined-away the system's
40014         declaration.
40015
40016 2000-04-15  Jim Meyering  <meyering@lucent.com>
40017
40018         Use `C' to denote so-called `contiguous' files, the same way
40019         that tar does.
40020         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
40021         (ftypelet): Use S_ISCTG.
40022         From Michael Deutschmann.
40023
40024 2000-04-14  Jim Meyering  <meyering@lucent.com>
40025
40026         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
40027         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
40028         clobbered.
40029
40030 2000-04-14  Jim Meyering  <meyering@lucent.com>
40031
40032         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
40033
40034 2000-04-13  Jim Meyering  <meyering@lucent.com>
40035
40036         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
40037         AH_VERBATIM to insert required #ifndef into config.h.in.
40038         Suggestion from Akim Demaille.
40039
40040 2000-04-12  Jim Meyering  <meyering@lucent.com>
40041
40042         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
40043         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
40044         Christian Krackowizer.
40045
40046         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
40047         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
40048         (AC_SYS_LARGEFILE): Require.
40049         (AM_C_PROTOTYPES): Require.
40050
40051 2000-04-08  Jim Meyering  <meyering@lucent.com>
40052
40053         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
40054         names don't conflict.  Reported by Eli Zaretskii.
40055
40056 2000-04-07  Jim Meyering  <meyering@lucent.com>
40057
40058         * lib/putenv.c: Move inclusion of errno.h so it follows that of
40059         sys/types.h, to work around system header problems on AIX 3.2.5.
40060         From Bruno Haible.
40061
40062 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
40063
40064         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
40065         bug.  Deal with the different error behavior of Irix iconv.
40066
40067 2000-04-05  Paul Eggert  <eggert@twinsun.com>
40068
40069         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
40070         IRIX if the installer said otherwise.
40071
40072 2000-04-05  Jim Meyering  <meyering@lucent.com>
40073
40074         Portability tweaks required for ultrix4.3.
40075         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
40076         (jm_CHECK_DECLS): Add getutent to the list of functions.
40077         (_jm_DECL_HEADERS): Add utmpx.h.
40078         From John David Anglin.
40079
40080         * m4/strftime.m4: Back out the 2000-04-02 change.
40081         Instead of that change, simply undefine putenv in the test program.
40082
40083 2000-04-05  Jim Meyering  <meyering@lucent.com>
40084
40085         Portability tweaks required for ultrix4.3.
40086         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
40087         getutent.
40088         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
40089         * lib/canon-host.c: Declare strdup.
40090         * lib/path-concat.c: Likewise.
40091         From John David Anglin.
40092
40093 2000-04-04  Jim Meyering  <meyering@lucent.com>
40094
40095         Be more DOS 8.3-friendly.
40096         * lib/ref-add.sin: Renamed from ref-add.sed.in.
40097         * lib/ref-del.sin: Renamed from ref-del.sed.in.
40098         * lib/Makefile.am: Reflect renaming.
40099         Reported by Eli Zaretskii.
40100
40101         Use a temporary file name that won't clash with `charset.alias'
40102         in the DOS 8.3 name space.
40103         * lib/Makefile.am (charset_tmp): Define.
40104         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
40105         (uninstall-local): Likewise.
40106         Reported by Eli Zaretskii.
40107
40108 2000-04-03  Jim Meyering  <meyering@lucent.com>
40109
40110         * m4/gettext.m4: Fix typo in comment.
40111
40112         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
40113         textutils/configure.in).  Suggestion from Paul Eggert.
40114         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
40115
40116 2000-04-02  Paul Eggert  <eggert@twinsun.com>
40117
40118         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
40119         variable in the shell rather than using putenv, which isn't
40120         portable.  This avoids the configure-time inter-test dependency
40121         on the potentially-renamed putenv function.
40122
40123 2000-03-30  Paul Eggert  <eggert@twinsun.com>
40124
40125         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
40126         before checking struct stat.st_blksize, so that
40127         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
40128
40129 2000-03-29  Paul Eggert  <eggert@twinsun.com>
40130
40131         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
40132         since strftime.c uses HAVE_STRFTIME to decide whether to use
40133         the underlying strftime.
40134
40135 2000-03-29  Paul Eggert  <eggert@twinsun.com>
40136
40137         * lib/time/strftime.c (my_strftime): Make sure we call the system
40138         strftime, not ourselves, when invoking the underlying strftime.
40139
40140 2000-03-24  Jim Meyering  <meyering@lucent.com>
40141
40142         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
40143         (charset_alias): Define.
40144         (install-exec-local): Factor out common code.
40145         (uninstall-local): Split lines longer than 80.
40146         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
40147         (SUFFIXES): Define.
40148         (.sed.in.sed): New rule.  Don't redirect directly to $@.
40149         (CLEANFILES): Add ref-add.sed and ref-del.sed.
40150
40151 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
40152
40153         * lib/config.charset: Output a line containing "Packages using this
40154         file".
40155         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
40156         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
40157         ref-del.sed): New rules.
40158
40159 2000-03-17  Jim Meyering  <meyering@lucent.com>
40160
40161         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
40162         Otherwise, include <strings.h>
40163
40164 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
40165
40166         * lib/unicodeio.c (utf8_wctomb): New function.
40167         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
40168         format instead of in UCS-4 with platform dependent endianness.
40169
40170 2000-03-10  Jim Meyering  <meyering@lucent.com>
40171
40172         * m4/lib-check.m4: Look for getspnam in -lgen, too.
40173         From Marco Franzen.
40174
40175 2000-03-07  Paul Eggert  <eggert@twinsun.com>
40176
40177         * lib/savedir.c (savedir): Work even if directory size is
40178         negative; this can happen with some screwy NFS configurations.
40179
40180 2000-03-06  Jim Meyering  <meyering@lucent.com>
40181
40182         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
40183         if it's NULL (because we ran out of memory).  From Bruno Haible.
40184
40185 2000-03-05  Jim Meyering  <meyering@lucent.com>
40186
40187         * lib/localcharset.c ("path-concat.h"): Include.
40188         (get_charset_aliases): Use path_concat instead of ANSI string
40189         concatenation.
40190
40191         * lib/unicodeio.h (PARAMS): Define.
40192         Use it to guard prototype.
40193
40194 2000-03-04  Jim Meyering  <meyering@lucent.com>
40195
40196         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
40197         for lib/localcharset.c.
40198
40199 2000-03-04  Jim Meyering  <meyering@lucent.com>
40200
40201         * lib/Makefile.am (install-exec-local): Create $(libdir) before
40202         installing into it.
40203         (uninstall-local): Uncomment this rule so `make distcheck' works
40204         once again.
40205
40206         * lib/unicodeio.c (<errno.h>): Include it.
40207         (errno): Declare if not defined.
40208
40209         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
40210
40211         * lib/config.charset: New version, incorporating remarks from a linux
40212         i18n mailing list.  From Bruno Haible.
40213
40214 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
40215
40216         * m4/codeset.m4: New file.
40217         * m4/iconv.m4: New file.
40218         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
40219
40220 2000-03-03  Jim Meyering  <meyering@lucent.com>
40221
40222         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
40223
40224 2000-03-02  Jim Meyering  <meyering@lucent.com>
40225
40226         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
40227         the messages come out on separate lines.
40228
40229         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
40230         rather than jm_CHECK_DECLARATIONS.
40231         * m4/decl.m4: Remove now-unused file.
40232
40233         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
40234         geteuid.
40235
40236 2000-03-02  Jim Meyering  <meyering@lucent.com>
40237
40238         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
40239
40240 2000-03-01  Jim Meyering  <meyering@lucent.com>
40241
40242         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
40243         * lib/unicodeio.c: Likewise.
40244
40245 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
40246
40247         * lib/config.charset: New file.
40248         * lib/localcharset.c: New file.
40249         * lib/unicodeio.h, lib/unicodeio.c: New files.
40250         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
40251         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
40252         (noinst_HEADERS): Add unicodeio.h.
40253         (all-local, install-exec-local, charset.alias): New targets.
40254
40255 2000-02-28  Paul Eggert  <eggert@twinsun.com>
40256
40257         * lib/quotearg.c (ALERT_CHAR): New macro.
40258         (quotearg_buffer_restyled): Use it.
40259
40260 2000-02-27  Jim Meyering  <meyering@lucent.com>
40261
40262         * m4/check-decl.m4: Add getenv to the list.
40263
40264 2000-02-27  Jim Meyering  <meyering@lucent.com>
40265
40266         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
40267         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
40268
40269         * lib/backupfile.c: Guard inclusion of stdlib.h with
40270         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
40271         Declare malloc if needed.
40272
40273         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
40274         `#ifndef HAVE_DECL..'
40275         now that autoconf always defines the HAVE_DECL_ symbols.
40276         * lib/human.c: Likewise.
40277         * lib/same.c: Likewise.
40278         * lib/strtoumax.c: Likewise.
40279
40280         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
40281         declaration check was not run.
40282         * lib/hash.c: Likewise.
40283         * lib/human.c: Likewise.
40284         * lib/same.c: Likewise.
40285         * lib/strtoumax.c: Likewise.
40286
40287         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
40288         `.', then first look up the entire `.'-containing string as a login
40289         name.
40290
40291 2000-02-23  Jim Meyering  <meyering@lucent.com>
40292
40293         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
40294         in place of my hack.
40295
40296 2000-02-18  Paul Eggert  <eggert@twinsun.com>
40297
40298         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
40299         (textint): New typedef.
40300         (parser_control): Member year changed from int to textint.
40301         All uses changed.
40302         (YYSTYPE): Removed; replaced by %union with int and textint members.
40303         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
40304         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
40305         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
40306         (tSNUMBER, tUNUMBER): Now of type <textintval>.
40307         (date, number, to_year): Use width of number in digits, not its value,
40308         to determine whether it's a 2-digit year, or a 2-digit time.
40309         (yylex): Store number of digits of numeric tokens.
40310         Reported by John Kendall.
40311
40312         (parser_control): Changed from struct parser_control to typedef (for
40313         consistency).  All uses changed.
40314
40315         (tID): Removed; not used.
40316         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
40317
40318 2000-02-14  Paul Eggert  <eggert@twinsun.com>
40319
40320         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
40321         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
40322
40323 2000-02-12  Jim Meyering  <meyering@lucent.com>
40324
40325         * lib/userspec.c (ISDIGIT): Define it.
40326         (isdigit): Remove definition.
40327         (is_number): Use ISDIGIT, not isdigit.
40328         <libintl.h>: Include.
40329         (_ and N_): Define.
40330         (parse_user_spec): Mark translatable strings.
40331
40332 2000-02-10  Jim Meyering  <meyering@lucent.com>
40333
40334         With these changes, nanosleep.[ch] are finally enough like the other
40335         lib/* replacement files to compile on a few more losing systems.
40336
40337         * lib/nanosleep.h: Don't include config.h.
40338         Remove prototype from declaration of nanosleep.
40339         (PARAMS): Remove now-unneeded definition.
40340         * lib/nanosleep.c: #undef nanosleep.
40341         (rpl_nanosleep): Rename from nanosleep.
40342
40343 2000-02-10  Jim Meyering  <meyering@lucent.com>
40344
40345         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
40346         gnu_nanosleep to rpl_nanosleep.
40347
40348 2000-02-09  Jim Meyering  <meyering@lucent.com>
40349
40350         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
40351         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
40352
40353 2000-02-08  Akim Demaille  <akim@epita.fr>
40354
40355         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
40356         `[' and `]' and remove uses of `changequote'.
40357         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
40358         (AC_SYS_LARGEFILE): Likewise.
40359         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
40360         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
40361         of changequote.
40362         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
40363         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
40364         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
40365         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
40366
40367 2000-02-05  Jim Meyering  <meyering@lucent.com>
40368
40369         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
40370         Remove explicit use of AC_HEADER_TIME.  It is required by
40371         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
40372         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
40373         in autoconf whereby the expansion of the latter ended up preceding
40374         the expansion of its prerequisite, AC_HEADER_TIME.
40375         Reported by Volker Borchert.
40376
40377 2000-02-03  Jim Meyering  <meyering@lucent.com>
40378
40379         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
40380
40381 2000-02-03  Jim Meyering  <meyering@lucent.com>
40382
40383         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
40384         rather than with `#if HAVE_UTMPNAME'.
40385
40386 2000-02-02  Jim Meyering  <meyering@lucent.com>
40387
40388         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
40389         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
40390         Reported by Eli Zaretskii.
40391
40392 2000-02-01  Jim Meyering  <meyering@lucent.com>
40393
40394         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
40395
40396 2000-01-31  Jim Meyering  <meyering@lucent.com>
40397
40398         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
40399         functions.  Add the time.h and sys/time.h headers along with the
40400         AC_REQUIRE'ment of AC_HEADER_TIME.
40401
40402 2000-01-31  Jim Meyering  <meyering@lucent.com>
40403
40404         * lib/nanosleep.h (nanosleep): Guard declaration with
40405         `#if ! HAVE_DECL_NANOSLEEP'.
40406         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
40407         the declaration in that vendor's sys/timers.h.
40408         Reported by Christian Krackowizer.
40409
40410         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
40411         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
40412         (ISPRINT): Likewise.
40413         Reported by Tom Tromey.
40414
40415 2000-01-30  Jim Meyering  <meyering@lucent.com>
40416
40417         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
40418
40419         * m4/prereq.m4 (utmp_includes): Define.
40420         Check for ut_user and ut_name members in both struct utmpx
40421         and struct utmp.
40422
40423 2000-01-30  Jim Meyering  <meyering@lucent.com>
40424
40425         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
40426         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
40427         header files where only utmpx.ut_user is declared.
40428
40429         * lib/readutmp.h (UT_USER): Define.
40430
40431 2000-01-29  Jim Meyering  <meyering@lucent.com>
40432
40433         * m4/lib-check.m4: New file containing library-related checks from
40434         fileutils and sh-utils (textutils had none).
40435
40436 2000-01-28  Jim Meyering  <meyering@lucent.com>
40437
40438         * m4/perl.m4: Change format of warning message to look more like that
40439         from the missing script.  Suggestion from François Pinard.
40440
40441 2000-01-25  Jim Meyering  <meyering@lucent.com>
40442
40443         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
40444         well as time.h in the compile check.
40445         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
40446         Fix typo in cross-compiling case: s/yes/no/.
40447
40448 2000-01-23  Jim Meyering  <meyering@lucent.com>
40449
40450         * m4/jm-macros.m4: Move df-related tests here from
40451         fileutils/configure.in
40452
40453         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
40454         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
40455
40456         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
40457         s/space/ac_fsusage_space/.
40458         (jm_FILE_SYSTEM_USAGE): Take two parameters.
40459
40460         * m4/ftruncate.m4: New file (derived from part of
40461         fileutils/configure.in).
40462         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
40463         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
40464
40465         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
40466         AC_SUBST these here, rather than just in sh-util/configure.in, so
40467         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
40468         all the same.
40469         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
40470         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
40471         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
40472         (AC_SUBST(POW_LIBM)): Likewise.
40473         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
40474
40475 2000-01-23  Jim Meyering  <meyering@lucent.com>
40476
40477         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
40478         obstack.c.
40479
40480 2000-01-22  Jim Meyering  <meyering@lucent.com>
40481
40482         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
40483
40484         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
40485
40486         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
40487         configure.in
40488         (AC_CHECK_HEADERS): Likewise for sh-utils.
40489         (AC_CHECK_HEADERS): Likewise for textutils.
40490         Merge the three lists of headers.
40491
40492         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
40493         from fileutils' configure.in.
40494
40495         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
40496         code. Moved tests into their own function (_jm_DECL_HEADERS) in
40497         check-decl.m4.
40498
40499         * m4/check-decl.m4: Use #if rather than #ifdef.
40500         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
40501         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
40502         (_jm_DECL_HEADERS): Define new function.
40503         (jm_CHECK_DECLARATIONS): Require it.
40504
40505 2000-01-22  Jim Meyering  <meyering@lucent.com>
40506
40507         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
40508         [! HAVE_DECL_STRTOULL]: Declare strtoull.
40509         Required for some AIX systems.  Reported by Christian Krackowizer.
40510         [TESTING] (main): New function.
40511
40512         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
40513         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
40514         letters.
40515
40516         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
40517         iswprint.
40518
40519         * lib/strverscmp.c (ISDIGIT): Define.
40520         (strverscmp): Use ISDIGIT, not isdigit.
40521
40522 2000-01-19  Jim Meyering  <meyering@lucent.com>
40523
40524         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
40525         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
40526         defines `struct timespec' in <sys/time.h>
40527
40528         * m4/c-bs-a.m4: Remove uses of changequote altogether.
40529         Thanks to Akim for explaining.
40530
40531 2000-01-17  Paul Eggert  <eggert@twinsun.com>
40532
40533         * lib/nanosleep.c (nanosleep):
40534         Don't use SA_INTERRUPT to decide whether to call sigaction, as
40535         POSIX.1 doesn't require SA_INTERRUPT and some systems
40536         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
40537         it's been part of POSIX.1 since day 1 (in 1988).
40538
40539 2000-01-17  Jim Meyering  <meyering@lucent.com>
40540
40541         * lib/interlock: Remove unused file.  Reported by François Pinard.
40542
40543 2000-01-16  Paul Eggert  <eggert@twinsun.com>
40544
40545         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
40546         alert, backslash, formfeed, and vertical tab unnecessarily in
40547         shell quoting style.
40548
40549 2000-01-16  Jim Meyering  <meyering@lucent.com>
40550
40551         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
40552         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
40553         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
40554         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
40555
40556 2000-01-16  Jim Meyering  <meyering@lucent.com>
40557
40558         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
40559         because the latter didn't work.
40560
40561 2000-01-15  Jim Meyering  <meyering@lucent.com>
40562
40563         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
40564         (AC_REPLACE_FUNCS): Add memcpy and memset.
40565         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
40566         Add strpbrk.
40567         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
40568
40569 2000-01-12  Jim Meyering  <meyering@lucent.com>
40570
40571         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
40572         (jm_PREREQ): Use it.
40573         (jm_PREREQ_READUTMP): New macro.
40574         (jm_PREREQ): Use it.
40575
40576 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40577
40578         Quote multibyte characters correctly.
40579         * m4/c-bs-a.m4: New file.
40580         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
40581         (jm_PREREQ): Use it.
40582
40583 2000-01-11  Paul Eggert  <eggert@twinsun.com>
40584
40585         * m4/uintmax_t.m4: Port to autoconf 2.13.
40586
40587 2000-01-08  Jim Meyering  <meyering@ascend.com>
40588
40589         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
40590         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
40591
40592 2000-01-04  Jim Meyering  <meyering@ascend.com>
40593
40594         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
40595         jm_STRUCT_DIRENT_D_TYPE.
40596         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
40597         jm_STRUCT_DIRENT_D_INO.
40598         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
40599         jm_STRUCT_UTIMBUF.
40600         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
40601         renamings.
40602         * m4/utime.m4: Likewise.
40603
40604         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
40605         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
40606
40607 2000-01-03  Paul Eggert  <eggert@twinsun.com>
40608
40609         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
40610         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
40611
40612 2000-01-02  Jim Meyering  <meyering@ascend.com>
40613
40614         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
40615         remember if this is necessary.
40616
40617 1999-12-26  Jim Meyering  <meyering@ascend.com>
40618
40619         * m4/jm-macros.m4: Use it here.
40620         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
40621
40622 1999-12-23  Jim Meyering  <meyering@ascend.com>
40623
40624         * m4/jm-macros.m4: Check for clock_gettime (moved from
40625         fileutils/configure.in)
40626         Check for gettimeofday.
40627
40628 1999-12-20  Jim Meyering  <meyering@ascend.com>
40629
40630         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
40631         autoconf-2.14a-1999-12-20.
40632
40633 1999-12-19  Jim Meyering  <meyering@ascend.com>
40634
40635         * m4/lstat-slash.m4: New file.
40636         * m4/jm-macros.m4: Use the new macro:
40637         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40638
40639 1999-12-07  Jim Meyering  <meyering@ascend.com>
40640
40641         * m4/perl.m4: Require that File::Compare be available, too.
40642         Too many systems seem to lack it.
40643
40644         * m4/strftime.m4: Add checks for most of the cpp macros tested in
40645         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
40646
40647 1999-11-18  Paul Eggert  <eggert@twinsun.com>
40648
40649         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
40650         problem with the QNX 4.25 shell, which doesn't propagate exit
40651         status of failed commands inside shell assignments.
40652
40653 1999-11-17  Jim Meyering  <meyering@ascend.com>
40654
40655         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
40656
40657 1999-11-07  Jim Meyering  <meyering@ascend.com>
40658
40659         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
40660
40661 1999-11-06  Jim Meyering  <meyering@ascend.com>
40662
40663         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
40664         * m4/jm-macros.m4 (jm_MACROS): Use it here.
40665
40666 1999-11-05  Jim Meyering  <meyering@ascend.com>
40667
40668         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
40669         configure.in of textutils, fileutils, and sh-utils into this one
40670         (shared between those packages) file.
40671         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
40672         AC_STRUCT_ST_BLKSIZE.
40673
40674 1999-11-03  Jim Meyering  <meyering@ascend.com>
40675
40676         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
40677         of AC_CHECK_TYPE checks includes unistd.h.
40678         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
40679         Suggestion from Akim Demaille.
40680
40681 1999-10-30  Jim Meyering  <meyering@ascend.com>
40682
40683         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
40684         m4-quoted string.
40685         * m4/ls-mntd-fs.m4: Likewise.
40686         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
40687         * m4/jm-winsz1.m4: Likewise.
40688
40689         * m4/const.m4: Remove file, since the fix made it into the experimental
40690         version of autoconf.
40691         * m4/mktime.m4: Likewise.
40692
40693         * m4/check-type.m4: Remove file, now that the latest version of
40694         AC_CHECK_TYPE takes a third arg to specify additional #includes.
40695
40696         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
40697         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
40698         AC_CHECK_TYPE.
40699
40700 1999-10-04  Jim Meyering  <meyering@ascend.com>
40701
40702         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
40703
40704 1999-09-22  Paul Eggert  <eggert@twinsun.com>
40705
40706         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
40707         2.95.1 bug with HP-UX 10.20.
40708
40709 1999-09-17  Jim Meyering  <meyering@ascend.com>
40710
40711         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
40712         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
40713         due to missing strdup (against sh-utils-2.0).
40714
40715 1999-08-29  Jim Meyering  <meyering@ascend.com>
40716
40717         * m4/jm-macros.m4: Require jm_BISON.
40718         * m4/bison.m4: New file.
40719
40720 1999-08-17  Paul Eggert  <eggert@twinsun.com>
40721
40722         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
40723         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
40724
40725 1999-08-05  Jim Meyering  <meyering@ascend.com>
40726
40727         * m4/getline.m4: Rename test file from conftestdata to conftest.data
40728         to avoid conflicts with `conftest' on 8+3 filesystems.
40729         Suggestion from Eli Zaretskii.
40730
40731 1999-08-04  Jim Meyering  <meyering@ascend.com>
40732
40733         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
40734         fileutils and sh-utils (textutils's getline test was inadequate).
40735         (AM_FUNC_GETLINE): Run this test.
40736         (AC_CHECK_FUNCS): Check for getdelim.
40737         Reported by Bob Proulx.
40738
40739 1999-08-02  Jim Meyering  <meyering@ascend.com>
40740
40741         * m4/jm-macros.m4: Add a comment.
40742
40743 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40744
40745         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
40746         <inttypes.h> defines strtoumax as a macro (and not as a
40747         function).
40748
40749 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40750
40751         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
40752         that we can shift, multiply and divide unsigned long long
40753         values; Ultrix cc can't do it.
40754
40755 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40756
40757         * m4/mktime.m4: New file, which is a preview of what should appear
40758         in the next public autoconf release.
40759
40760 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40761
40762         * m4/lfs.m4: Remove this file.
40763         * m4/largefile.m4: New file.  It contains the old contents of
40764         lfs.m4, except that all names with prefix AC_LFS have been
40765         changed to use the prefix AC_SYS_LARGEFILE instead, to be
40766         compatible with future autoconf versions.  Also, some minor m4
40767         quoting problems have been fixed.
40768
40769 1999-08-01  Paul Eggert  <eggert@twinsun.com>
40770
40771         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
40772         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
40773         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
40774         and simplify the shell code.
40775
40776 1999-08-01  Jim Meyering  <meyering@ascend.com>
40777
40778         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
40779         m4.
40780
40781 1999-07-20  Jim Meyering  <meyering@ascend.com>
40782
40783         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
40784
40785 1999-07-15  Jim Meyering  <meyering@ascend.com>
40786
40787         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
40788
40789 1999-05-22  Jim Meyering  <meyering@ascend.com>
40790
40791         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
40792
40793 1999-05-20  Jim Meyering  <meyering@ascend.com>
40794
40795         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
40796         Add a colon after each `then' in case $4 is empty.
40797
40798 1999-05-16  Jim Meyering  <meyering@ascend.com>
40799
40800         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
40801
40802 1999-05-10  Jim Meyering  <meyering@ascend.com>
40803
40804         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
40805
40806         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
40807         AC_FUNC_MKTIME.
40808
40809 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
40810
40811         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
40812
40813 1999-05-04  Paul Eggert  <eggert@twinsun.com>
40814
40815         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
40816         not CPPFLAGS, so that linking works correctly in IRIX.
40817
40818 1999-04-30  Paul Eggert  <eggert@twinsun.com>
40819
40820         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
40821
40822 1999-04-20  Paul Eggert  <eggert@twinsun.com>
40823
40824         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
40825         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
40826         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
40827         jm_AC_TYPE_UNSIGNED_LONG_LONG.
40828         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
40829
40830         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
40831
40832 1999-04-20  Jim Meyering  <meyering@ascend.com>
40833
40834         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
40835         AC_REPLACE xstroull if necessary.  From Paul Eggert.
40836         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
40837
40838 1999-04-18  Jim Meyering  <meyering@ascend.com>
40839
40840         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
40841         * m4/jm-macros.m4: Use it.
40842
40843 1999-04-06  Jim Meyering  <meyering@ascend.com>
40844
40845         * m4/strftime.m4: Remove test for %f.
40846
40847 1999-03-29  Jim Meyering  <meyering@ascend.com>
40848
40849         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
40850         superset of the AC_TYPE_* checks in the textutils, fileutils,
40851         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
40852         AC_TYPE_PID_T.
40853
40854 1999-03-28  Jim Meyering  <meyering@ascend.com>
40855
40856         * m4/jm-macros.m4: Define GNU_PACKAGE here.
40857         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
40858         replaced e.g., in the *.sh files of the sh-utils.
40859
40860 1999-03-20  Jim Meyering  <meyering@ascend.com>
40861
40862         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
40863         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
40864         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
40865
40866 1999-03-19  Jim Meyering  <meyering@ascend.com>
40867
40868         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
40869
40870 1999-03-12  Jim Meyering  <meyering@ascend.com>
40871
40872         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
40873
40874 1999-03-07  Jim Meyering  <meyering@ascend.com>
40875
40876         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
40877         declared.
40878
40879 1999-02-17  Jim Meyering  <meyering@ascend.com>
40880
40881         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
40882         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
40883
40884 1999-02-07  Jim Meyering  <meyering@ascend.com>
40885
40886         * m4/group-member.m4: New file -- extracted from sh-utils'
40887         configure.in.
40888
40889         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
40890         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
40891
40892 1999-02-06  Jim Meyering  <meyering@ascend.com>
40893
40894         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
40895         * m4/fnmatch.m4: Likewise.
40896         * m4/getgroups.m4: Likewise.
40897         * m4/lstat.m4: Likewise.
40898         * m4/malloc.m4: Likewise.
40899         * m4/putenv.m4: Likewise.
40900         * m4/realloc.m4: Likewise.
40901         * m4/regex.m4: Likewise.
40902         * m4/stat.m4: Likewise.
40903         * m4/strftime.m4: Likewise.
40904         Suggestion from Alain Magloire.
40905
40906         * m4/chown.m4: Use `.$ac_objext', not `.o'.
40907         * m4/fnmatch.m4: Likewise.
40908         * m4/getgroups.m4: Likewise.
40909         * m4/getline.m4: Likewise.
40910         * m4/lstat.m4: Likewise.
40911         * m4/malloc.m4: Likewise.
40912         * m4/memcmp.m4: Likewise.
40913         * m4/putenv.m4: Likewise.
40914         * m4/realloc.m4: Likewise.
40915         * m4/regex.m4: Likewise.
40916         * m4/stat.m4: Likewise.
40917         * m4/strftime.m4: Likewise.
40918         Suggestion from Alain Magloire.
40919
40920         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
40921         an argument.
40922
40923         * m4/regex.m4: Add a run-time Test for proper operation of
40924         re_compile_pattern.
40925
40926 1999-01-31  Jim Meyering  <meyering@ascend.com>
40927
40928         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
40929
40930 1999-01-30  Jim Meyering  <meyering@ascend.com>
40931
40932         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
40933
40934         * m4/jm-mktime.m4: Make this a wrapper around the official
40935         AM_FUNC_MKTIME rather than my private copy, now that the official one
40936         is up to date.
40937         * m4/mktime.m4: Remove file.
40938
40939         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
40940         * m4/uptime.m4: Likewise.
40941         * m4/uintmax_t.m4: Likewise.
40942
40943 1999-01-28  Jim Meyering  <meyering@ascend.com>
40944
40945         * m4/jm-macros.m4: Use jm_AFS.
40946         * m4/afs.m4: New file (from fileutils' configure.in).
40947
40948         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
40949         * m4/chown.m4: Likewise.
40950         * m4/d-ino.m4: Likewise.
40951         * m4/d-type.m4: Likewise.
40952         * m4/fnmatch.m4: Likewise.
40953         * m4/getgroups.m4: Likewise.
40954         * m4/gettext.m4: Likewise.
40955         * m4/jm-mktime.m4: Likewise.
40956         * m4/jm-winsz2.m4: Likewise.
40957         * m4/lcmessage.m4: Likewise.
40958         * m4/ls-mntd-fs.m4: Likewise.
40959         * m4/malloc.m4: Likewise.
40960         * m4/memcmp.m4: Likewise.
40961         * m4/putenv.m4: Likewise.
40962         * m4/realloc.m4: Likewise.
40963         * m4/st_mtim.m4: Likewise.
40964         * m4/strftime.m4: Likewise.
40965
40966 1999-01-16  Jim Meyering  <meyering@ascend.com>
40967
40968         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
40969         (ARGMATCH_DIE_DECL): Define.
40970
40971 1999-01-12  Jim Meyering  <meyering@ascend.com>
40972
40973         * m4/Makefile.am.in: Rewrite to avoid using fmt.
40974         Reported by Lars Hecking.
40975
40976 1999-01-10  Jim Meyering  <meyering@ascend.com>
40977
40978         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
40979         gross kludge.
40980         * m4/inttypes_h.m4: Likewise.
40981         * m4/lstat.m4: Likewise.
40982         * m4/malloc.m4: Likewise.
40983         * m4/readdir.m4: Likewise.
40984         * m4/realloc.m4: Likewise.
40985         * m4/st_dm_mode.m4: Likewise.
40986         * m4/stat.m4: Likewise.
40987         * m4/utimbuf.m4: Likewise.
40988         * m4/utimes.m4: Likewise.
40989
40990         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
40991         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
40992         comments in config.h.in are meaningful.
40993
40994         * m4/jm-macros.m4: Require autoconf-2.13 here.
40995
40996         * m4/regex.m4: By default, don't use the included regex.c on systems
40997         with glibc 2.  Suggestion from Uli Drepper.
40998
40999 1999-01-02  Jim Meyering  <meyering@ascend.com>
41000
41001         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
41002
41003 1998-12-18  Jim Meyering  <meyering@ascend.com>
41004
41005         * m4/Makefile.am.in (Makefile.am): Simplify rule.
41006         Based on a suggestion from Lars Hecking.
41007
41008 1998-11-16  Paul Eggert  <eggert@twinsun.com>
41009
41010         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
41011
41012 1998-11-16  Jim Meyering  <meyering@ascend.com>
41013
41014         * m4/lfs.m4: Double-quote the `uname...` expression.
41015
41016 1998-11-14  Jim Meyering  <meyering@ascend.com>
41017
41018         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
41019         * m4/stat.m4: Likewise.
41020
41021 1998-11-03  Jim Meyering  <meyering@ascend.com>
41022
41023         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
41024         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
41025
41026 1998-10-18  Jim Meyering  <meyering@ascend.com>
41027
41028         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
41029
41030 1998-10-17  Jim Meyering  <meyering@ascend.com>
41031
41032         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
41033         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
41034         calls for those previously hard-coded headers.  Instead, take a new
41035         parameter.
41036         (jm_CHECK_DECLARATIONS): Reflect interface change.
41037         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
41038         (jm_CHECK_DECL_LOCALTIME_R): New macro.
41039
41040         * m4/mktime.m4: Test for spring-forward gap before long-running test.
41041
41042 1998-10-14  Jim Meyering  <meyering@ascend.com>
41043
41044         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
41045         instead of "TZ=America/Vancouver".  From Paul Eggert.
41046
41047 1998-10-11  Jim Meyering  <meyering@ascend.com>
41048
41049         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
41050         This adds a test for a recently added compatibility fix for mktime.c.
41051         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
41052
41053 1998-09-27  Jim Meyering  <meyering@ascend.com>
41054
41055         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
41056
41057         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
41058         ../configure.in, including a change from Gordon Matzigkeit to allow
41059         cross-compiling for the Hurd.
41060
41061         * m4/glibc.m4: New file/macro to test for the GNU C Library
41062         versions 1 and 2.  From Gordon Matzigkeit.
41063         Indent.
41064
41065 1998-09-21  Jim Meyering  <meyering@ascend.com>
41066
41067         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
41068
41069 1998-08-18  Paul Eggert  <eggert@twinsun.com>
41070
41071         Port nanosecond-resolution times to UnixWare 2.1.2 and
41072         pedantic Solaris 2.6.
41073
41074         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
41075         AC_STRUCT_ST_MTIM.
41076         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
41077         Generate name of ns member, instead of just 1 or undef.
41078         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
41079
41080 1998-08-15  Jim Meyering  <meyering@ascend.com>
41081
41082         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
41083         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
41084         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
41085         instead of jm_TYPE_SSIZE_T.
41086
41087 1998-08-12  Jim Meyering  <meyering@ascend.com>
41088
41089         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
41090
41091 1998-08-02  Jim Meyering  <meyering@ascend.com>
41092
41093         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
41094         in acconfig.h manually.
41095
41096 1998-07-31  Paul Eggert  <eggert@twinsun.com>
41097
41098         * m4/st_mtim.m4: New file.
41099
41100 1998-07-28  Jim Meyering  <meyering@ascend.com>
41101
41102         * m4/utimes.m4: Undef stat.
41103
41104 1998-07-25  Jim Meyering  <meyering@ascend.com>
41105
41106         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
41107         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
41108
41109 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
41110
41111         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
41112         uid and gid actually remain unchanged.
41113
41114 1998-07-07  Jim Meyering  <meyering@ascend.com>
41115
41116         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
41117
41118 1998-07-04  Jim Meyering  <meyering@ascend.com>
41119
41120         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
41121         to prove that this macro can be used in packages without regex.c.
41122
41123 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
41124
41125         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
41126         is to be used.
41127
41128 1998-07-03  Jim Meyering  <meyering@ascend.com>
41129
41130         * m4/gettext.m4: Add -lintl if it's found to be necessary.
41131
41132         * m4/gettext.m4: New file -- from gettext-0.10.35.
41133         * m4/lcmessage.m4: Likewise.
41134         * m4/progtest.m4: Likewise.
41135
41136         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
41137         * m4/jm-macros.m4: Require the new macro.
41138
41139 1998-06-29  Jim Meyering  <meyering@ascend.com>
41140
41141         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
41142         for the definition of NGROUPS (used in a system header included
41143         by sys/mount.h).
41144
41145 1998-06-28  Jim Meyering  <meyering@ascend.com>
41146
41147         * m4/ls-mntd-fs.m4: New file.
41148         * m4/fstypename.m4: New file.
41149
41150         * m4/jm-macros.m4: Require the new macro.
41151         * m4/jm-glibc-io.m4: New file.
41152
41153 1998-05-19  Jim Meyering  <meyering@ascend.com>
41154
41155         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
41156         * m4/lchown.m4: New file.
41157
41158         * m4/Makefile.am.in: New file.
41159         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
41160
41161 1998-05-14  Jim Meyering  <meyering@ascend.com>
41162
41163         * m4/Makefile.am (EXTRA_DIST): Add them.
41164         * m4/jm-macros.m4: New file.
41165         * m4/utimbuf.m4: New file.
41166
41167 1998-05-12  Jim Meyering  <meyering@ascend.com>
41168
41169         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
41170
41171 1998-05-11  Jim Meyering  <meyering@ascend.com>
41172
41173         * m4/isc-posix.m4: New file.
41174
41175 1998-05-10  Jim Meyering  <meyering@ascend.com>
41176
41177         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
41178
41179 1998-05-09  Jim Meyering  <meyering@ascend.com>
41180
41181         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
41182         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
41183         with automake.
41184
41185         * m4/ssize_t.m4: New file.
41186         * m4/mktime.m4: Remove file -- the new automake has this now.
41187
41188 1998-04-26  Jim Meyering  <meyering@ascend.com>
41189
41190         * m4/assert.m4: New file.
41191         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
41192
41193 1998-04-05  Jim Meyering  <meyering@ascend.com>
41194
41195         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
41196         (jm_PREREQ): Use it here.
41197
41198 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
41199
41200         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
41201         in acconfig.h.
41202
41203 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
41204
41205         * m4/prereq.m4: New file.
41206         * m4/error.m4: New file.
41207         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
41208
41209 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
41210
41211         * m4/getline.m4: Don't set am_cv_func_working_getline before the
41212         cache-check for the same variable -- that defeated the purpose of
41213         the test; the test program was never run.  This was a problem only
41214         on systems with losing getline functions -- HP-UX 10.20 is one.
41215         Reported by Bjorn Helgaas.
41216
41217 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
41218
41219         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
41220
41221 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
41222
41223         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
41224
41225         * m4/const.m4: New file.  Use an initializer in this declaration
41226         typedef int charset[2]; const charset x;
41227         Reported by Bob Glickstein.
41228
41229 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
41230
41231         * m4/chown.m4: Fix reversed types on -1 args to chown.
41232         From Kaveh Ghazi.
41233
41234 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
41235
41236         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
41237         Add lseek and memchr.
41238
41239         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
41240         T.E.Dickey <dickey@clark.net> said that some older preprocessors
41241         have a 20-character limit on names.
41242
41243 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
41244
41245         * m4/inttypes_h.m4: New file.
41246         * m4/uintmax_t.m4: New file.
41247         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
41248
41249
41250         -----
41251
41252         Local Variables:
41253         coding: utf-8
41254         End:
41255
41256         Copyright (C) 1997-2008 Free Software Foundation, Inc.
41257
41258         Copying and distribution of this file, with or without
41259         modification, are permitted provided the copyright notice
41260         and this notice are preserved.