Add support for the GB18030 encoding.
[gnulib.git] / ChangeLog
1 2009-01-25  Bruno Haible  <bruno@clisp.org>
2
3         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
4         multibyte characters also for the GB18030 encoding. Don't crash when
5         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
6
7 2009-01-25  Bruno Haible  <bruno@clisp.org>
8
9         Avoid redefining 'struct random_data' on OSF/1 5.1.
10         * lib/stdlib.in.h: Include <random.h> if it exists.
11         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
12         HAVE_RANDOM_H. Include <random.h> when testing whether
13         'struct random_data' exists.
14         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
15
16 2009-01-25  Bruno Haible  <bruno@clisp.org>
17
18         Don't install charset.alias on MacOS X >= 10.3.
19         * lib/localcharset.c (DARWIN7): New macro.
20         (get_charset_aliases): Hardcode the result for Darwin7.
21         * modules/localcharset (install-exec-local): Don't install
22         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
23
24 2009-01-25  Bruno Haible  <bruno@clisp.org>
25
26         Don't install charset.alias on mingw and Cygwin.
27         * modules/localcharset (install-exec-local): Don't install
28         charset.alias on mingw and Cygwin, if the file does not yet exist.
29         The result for these platforms is hardcoded in localcharset.c.
30
31 2009-01-25  Bruno Haible  <bruno@clisp.org>
32
33         Make it possible again to use AC_GNU_SOURCE together with gnulib.
34         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
35         before requiring AC_USE_SYSTEM_EXTENSIONS.
36
37 2009-01-25  Jim Meyering  <meyering@redhat.com>
38
39         c-strtod: avoid warnings
40         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
41         "assignment discards qualifiers from pointer target type" warnings.
42
43 2009-01-24  Bruno Haible  <bruno@clisp.org>
44
45         Add support for non-UTF-8 locales on MacOS X.
46         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
47         canonical encodings. For Darwin 7 and newer, don't map traditional
48         encodings to UTF-8.
49         Reported by Vincent Lefevre <vincent@vinc17.org>
50         at <http://savannah.gnu.org/bugs/?25235>.
51
52 2009-01-24  Bruno Haible  <bruno@clisp.org>
53
54         * doc/gnulib.texi (Obsolete modules): New section.
55         Reported by Mike Frysinger <vapier@gentoo.org>.
56
57 2009-01-24  Bruno Haible  <bruno@clisp.org>
58
59         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
60         (%.dvi): New rule.
61
62 2009-01-24  Bruno Haible  <bruno@clisp.org>
63
64         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
65         Reported by Eric Blake.
66
67 2009-01-24  Bruno Haible  <bruno@clisp.org>
68
69         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
70         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
71         Reported by Gary V. Vaughan <gary@gnu.org>.
72
73 2009-01-24  Bruno Haible  <bruno@clisp.org>
74
75         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
76
77 2009-01-23  Bruno Haible  <bruno@clisp.org>
78
79         Make c-strtod, c-strtold usable in libraries.
80         * lib/c-strtod.c: Include string.h instead of xalloc.h.
81         (C_STRTOD): Call strdup instead of xstrdup.
82         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
83         * modules/c-strtold (Depends-on): Likewise.
84         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
85         * NEWS: Mention the change.
86         Reported by Michael Gold <mgold@ncf.ca>.
87
88 2009-01-23  Jim Meyering  <meyering@redhat.com>
89
90         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
91         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
92         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
93
94 2009-01-23  Simon Josefsson  <simon@josefsson.org>
95
96         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
97         GNU CoreUtils.
98         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
99         * modules/version-etc (Description): Update.
100
101 2009-01-22  Bruno Haible  <bruno@clisp.org>
102
103         Cache the C locale object.
104         * lib/c-strtod.c (c_locale_cache): New variable.
105         (c_locale): New function.
106         (C_STRTOD): Use it, and don't call freelocale.
107         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
108         Suggested by Paolo Bonzini.
109
110 2009-01-21  Bruno Haible  <bruno@clisp.org>
111
112         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
113         conditions other than overflow.
114
115 2009-01-21  Bruno Haible  <bruno@clisp.org>
116
117         * lib/c-strtod.c: Include errno.h.
118         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
119         value from STRTOD_L and STRTOD.
120
121 2009-01-21  Bruno Haible  <bruno@clisp.org>
122         and Jim Meyering  <meyering@redhat.com>
123
124         nanosleep: skip configure test (fail it) for apple universal builds
125         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
126         universal builds, assume that nanosleep does not work.
127         * modules/nanosleep (Depends-on): Add multiarch.
128
129         mktime: skip configure test (fail it) for apple universal builds
130         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
131         universal builds, assume that mktime does not work.
132         * modules/mktime (Depends-on): Add multiarch.
133
134 2009-01-21  Eric Blake  <ebb9@byu.net>
135
136         multiarch: avoid expand-before-require warning
137         * modules/multiarch (configure.ac): Require, rather than expand,
138         gl_MULTIARCH.
139         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
140         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
141         enforce that all clients require it.  Partial reversion of
142         2008-12-29 patch.
143
144         error: avoid expand-before-require warning
145         * modules/errno (configure.ac): Require, rather than expand,
146         gl_HEADER_ERRNO_H.
147         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
148         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
149         enforce that all clients require it.
150
151         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
152         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
153         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
154         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
155
156 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
157
158         Revert:
159         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
160
161         regex: do not depend on obsolete modules.
162         * modules/regex: Remove memcmp and memmove.
163
164 2009-01-20  Bruno Haible  <bruno@clisp.org>
165
166         Make the 'link' module link on Windows NT 4.
167         * lib/link.c (_WIN32_WINNT): Don't define.
168         (CreateHardLinkFuncType): New type.
169         (CreateHardLinkFunc, initialized): New variables.
170         (initialize): New function.
171         (link): Invoke CreateHardLink indirectly through the function pointer.
172
173 2009-01-20  Bruno Haible  <bruno@clisp.org>
174
175         Fix compilation failure on mingw.
176         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
177
178 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
179
180         * doc/c-strtod.texi: Mention a couple of restrictions.
181
182 2009-01-20  Jim Meyering  <meyering@redhat.com>
183
184         gettimeofday: move more declarations out of functions
185         * lib/gettimeofday.c: Move extern declarations of tzset and
186         gmtime out of containing functions.  Prompted by Bruno Haible.
187
188 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
189
190         regex: do not depend on obsolete modules.
191         * modules/regex: Remove memcmp and memmove.
192
193 2009-01-19  Bruno Haible  <bruno@clisp.org>
194
195         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
196         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
197         gl_BIGENDIAN, not AC_C_BIGENDIAN.
198         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
199         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
200
201 2009-01-19  Bruno Haible  <bruno@clisp.org>
202
203         * tests/test-link.c: Include <errno.h>.
204         (main): Exit with code 77 when a hard link cannot be created due to
205         the file system.
206         * tests/test-link.sh: Skip test when a hard link cannot be created due
207         to the file system.
208         Suggested by Eric Blake.
209
210 2009-01-19  Martin Lambers  <marlam@marlam.de>
211
212         * modules/link-tests: New file.
213         * tests/test-link.sh: New file.
214         * tests/test-link.c: New file.
215
216 2009-01-19  Eric Blake  <ebb9@byu.net>
217
218         doc: mention another function added in cygwin 1.7.0
219         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
220         Another new function in cygwin 1.7.
221
222 2009-01-19  Bruno Haible  <bruno@clisp.org>
223
224         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
225         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
226         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
227         gl_BIGENDIAN, not AC_C_BIGENDIAN.
228         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
229         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
230         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
231         * m4/md4.m4 (gl_MD4): Likewise.
232         * m4/md5.m4 (gl_MD5): Likewise.
233         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
234         * m4/sha1.m4 (gl_SHA1): Likewise.
235         * m4/sha256.m4 (gl_SHA256): Likewise.
236         * m4/sha512.m4 (gl_SHA512): Likewise.
237
238 2009-01-19  Bruno Haible  <bruno@clisp.org>
239
240         * modules/uniname/uniname-tests (Depends-on): Add progname.
241         * tests/uniname/test-uninames.c: Include progname.h.
242         (main): Call set_program_name.
243
244         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
245         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
246         (main): Call set_program_name.
247
248         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
249         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
250         (main): Call set_program_name.
251
252         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
253         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
254         (main): Call set_program_name.
255
256         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
257         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
258         (main): Call set_program_name.
259
260         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
261         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
262         (main): Call set_program_name.
263
264         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
265         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
266         (main): Call set_program_name.
267
268         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
269         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
270         (main): Call set_program_name.
271
272         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
273         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
274         (main): Call set_program_name.
275
276 2009-01-19  Eric Blake  <ebb9@byu.net>
277
278         test-unistd: test previous patch
279         * tests/test-unistd.c: Test *_FILENO macros.
280
281         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
282         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
283         Guarantee a definition.
284         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
285         * modules/unistd-safer (Depends-on): Add dependency on unistd.
286         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
287         * lib/dup-safer.c (STDERR_FILENO): Likewise.
288         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
289         Likewise.
290         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
291         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
292         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
293         Likewise.
294         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
295         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
296         (STDERR_FILENO): Likewise.
297         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
298         (STDERR_FILENO): Likewise.
299         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
300         (STDERR_FILENO): Likewise.
301         Reported by Elbert Pol.
302
303 2009-01-19  Eric Blake  <ebb9@byu.net>
304
305         doc: mention more functions added in cygwin 1.7.0
306         * doc/posix-functions/abort.texi (abort): Update wording related
307         to cygwin.
308         * doc/posix-functions/daylight.texi (daylight): Likewise.
309         * doc/posix-functions/optarg.texi (optarg): Likewise.
310         * doc/posix-functions/optarg.texi (opterr): Likewise.
311         * doc/posix-functions/optarg.texi (optind): Likewise.
312         * doc/posix-functions/optarg.texi (optopt): Likewise.
313         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
314         worked in 1.5.x, and was withdrawn in 1.7.
315         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
316         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
317         cygwin versions.
318         * doc/posix-functions/perror.texi (perror): Likewise.
319         * doc/posix-functions/printf.texi (printf): Likewise.
320         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
321         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
322         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
323         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
324         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
325         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
326         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
327         Likewise.
328         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
329         Likewise.
330         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
331         this function.
332         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
333         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
334         Likewise.
335         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
336         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
337         * doc/posix-functions/confstr.texi (confstr): Likewise.
338         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
339         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
340         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
341         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
342         * doc/posix-functions/fputws.texi (fputws): Likewise.
343         * doc/posix-functions/fwide.texi (fwide): Likewise.
344         * doc/posix-functions/getwc.texi (getwc): Likewise.
345         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
346         * doc/posix-functions/putwc.texi (putwc): Likewise.
347         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
348         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
349         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
350         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
351         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
352         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
353         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
354         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
355         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
356         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
357         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
358
359 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
360
361         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
362         * lib/ioctl.c: Include <sys/ioctl.h>.
363
364 2009-01-19  Simon Josefsson  <simon@josefsson.org>
365
366         * modules/getdate-tests (Depends-on): Add progname.
367         * tests/test-getdate.c: Use progname module, to avoid link errors
368         on non-glibc systems.
369
370 2009-01-18  Simon Josefsson  <simon@josefsson.org>
371
372         * modules/filenamecat-tests (Depends-on): Add progname.
373         * modules/fstrcmp-tests (Depends-on): Likewise.
374
375         * tests/test-filenamecat.c: Use progname module, to avoid link
376         errors on non-glibc systems.
377         * tests/test-fstrcmp.c: Likewise.
378
379 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
380
381         gettimeofday: avoid warning: nested extern declaration of 'localtime'
382         * lib/gettimeofday.c: Move extern declaration out of function.
383
384 2009-01-18  Bruno Haible  <bruno@clisp.org>
385
386         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
387         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
388         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
389
390 2009-01-18  Bruno Haible  <bruno@clisp.org>
391
392         * lib/strftime.c (MEMPCPY): Remove unused macro.
393         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
394
395 2009-01-18  Martin Lambers  <marlam@marlam.de>
396
397         New module 'link'.
398         * lib/unistd.in.h (link): New declaration.
399         * lib/link.c: New file.
400         * m4/link.m4: New file.
401         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
402         HAVE_LINK.
403         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
404         * modules/link: New file.
405         * doc/posix-functions/link.texi: Mention the new module.
406
407 2009-01-18  Bruno Haible  <bruno@clisp.org>
408
409         * tests/test-avltree_list.c (main): Call set_program_name.
410         * tests/test-avltree_oset.c (main): Likewise.
411         * tests/test-obstack-printf.c: Include progname.h.
412         (main): Call set_program_name.
413         * tests/test-quotearg.c: Include progname.h.
414         (main): Call set_program_name.
415         * tests/test-xmemdup0.c: Include progname.h.
416         (main): Call set_program_name.
417
418 2009-01-18  Bruno Haible  <bruno@clisp.org>
419
420         New module 'alphasort'.
421         * lib/dirent.in.h (alphasort): New declaration.
422         * lib/alphasort.c: New file, from glibc with modifications.
423         * m4/alphasort.m4: New file.
424         * modules/alphasort: New file.
425         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
426         HAVE_ALPHASORT.
427         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
428         HAVE_ALPHASORT.
429         * doc/posix-functions/alphasort.texi: Mention the new module and the
430         portability problems.
431
432 2009-01-18  Bruno Haible  <bruno@clisp.org>
433
434         New module 'scandir'.
435         * lib/dirent.in.h (scandir): New declaration.
436         * lib/scandir.c: New file, from glibc with modifications.
437         * m4/scandir.m4: New file.
438         * modules/scandir: New file.
439         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
440         HAVE_SCANDIR.
441         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
442         HAVE_SCANDIR.
443         * doc/posix-functions/scandir.texi: Mention the new module and the
444         portability problems.
445
446 2009-01-17  Bruno Haible  <bruno@clisp.org>
447
448         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
449         Update documentation.
450         (func_remove_suffix): Escape all dots in the suffix. Update
451         documentation.
452         (func_filter_filelist): Update documentation.
453         Reported by Ralf Wildenhues.
454
455 2009-01-17  Bruno Haible  <bruno@clisp.org>
456
457         * modules/dprintf-posix-tests: New file.
458         * tests/test-dprintf-posix.sh: New file.
459         * tests/test-dprintf-posix.c: New file.
460
461         New modules 'dprintf', 'dprintf-posix'.
462         * lib/stdio.in.h (dprintf): New declaration.
463         * lib/dprintf.c: New file.
464         * m4/dprintf.m4: New file.
465         * m4/dprintf-posix.m4: New file.
466         * modules/dprintf: New file.
467         * modules/dprintf-posix: New file.
468         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
469         HAVE_DPRINTF, REPLACE_DPRINTF.
470         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
471         HAVE_DPRINTF, REPLACE_DPRINTF.
472         * doc/posix-functions/dprintf.texi: Mention the new modules.
473
474 2009-01-17  Bruno Haible  <bruno@clisp.org>
475
476         * modules/vdprintf-posix-tests: New file.
477         * tests/test-vdprintf-posix.sh: New file.
478         * tests/test-vdprintf-posix.c: New file.
479
480         New modules 'vdprintf', 'vdprintf-posix'.
481         * lib/stdio.in.h (vdprintf): New declaration.
482         * lib/vdprintf.c: New file.
483         * m4/vdprintf.m4: New file.
484         * m4/vdprintf-posix.m4: New file.
485         * modules/vdprintf: New file.
486         * modules/vdprintf-posix: New file.
487         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
488         HAVE_VDPRINTF, REPLACE_VDPRINTF.
489         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
490         HAVE_VDPRINTF, REPLACE_VDPRINTF.
491         * doc/posix-functions/vdprintf.texi: Mention the new modules.
492
493 2009-01-17  Bruno Haible  <bruno@clisp.org>
494
495         Fix replacement of fopen on mingw.
496         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
497         mingw.
498
499 2009-01-17  Bruno Haible  <bruno@clisp.org>
500
501         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
502         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
503
504 2009-01-17  Bruno Haible  <bruno@clisp.org>
505
506         Avoid test-fflush2.sh failure on mingw.
507         * tests/test-fflush2.c: Include binary-io.h.
508         (main): Put standard input into binary mode.
509         * modules/fflush-tests (Depends-on): Add binary-io.
510
511 2009-01-17  Bruno Haible  <bruno@clisp.org>
512
513         * lib/wchar.in.h: In another particular situation, include only the
514         system's <wchar.h> file.
515         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
516         Reported by Albert Chin-A-Young <china@thewrittenword.com>
517         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
518
519 2009-01-17  Bruno Haible  <bruno@clisp.org>
520
521         Support for stripping executables in --enable-relocatable.
522         * build-aux/install-reloc: Expect one more argument, or an environment
523         variable RELOC_STRIP_PROG. If set, strip the destination program and
524         its wrapper.
525         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
526         RELOC_STRIP_PROG.
527         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
528         to set RELOCATABLE_STRIP.
529         * NEWS: Mention the new Makefile requirement.
530
531 2009-01-17  Bruno Haible  <bruno@clisp.org>
532
533         * build-aux/install-reloc: Remove debugging information left over by
534         C compiler on MacOS X.
535
536 2009-01-17  Bruno Haible  <bruno@clisp.org>
537
538         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
539         * lib/progreloc.c (find_executable): Fix type of pointer passed to
540         _NSGetExecutablePath.
541
542 2009-01-16  Jim Meyering  <meyering@redhat.com>
543
544         strerror: avoid warnings about discarding "const"
545         * lib/strerror.c (rpl_strerror): Instead of returning a const
546         string from each and every "case", use a variable, and add a single
547         cast after the switch.
548
549 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
550
551         * lib/arpa_inet.in.h: Add extern "C" block for C++.
552
553 2009-01-16  Bruno Haible  <bruno@clisp.org>
554
555         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
556         array initializer syntax that also works in C++ mode.
557         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
558
559 2009-01-16  Jim Meyering  <meyering@redhat.com>
560
561         poll: suppress a warning
562         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
563         to ignore "...unsigned expression < 0 is always false" warnings.
564
565 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
566
567         poll: remove declarations of unused variables
568         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
569         sockbuf and optlen.
570
571 2009-01-15  Bruno Haible  <bruno@clisp.org>
572
573         Make fflush-after-ungetc POSIX compliant on BSD systems.
574         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
575         (clear_ungetc_buffer): Implement also for other systems.
576         (rpl_fflush): On glibc systems, invoke
577         clear_ungetc_buffer_preserving_position. Otherwise, invoke
578         clear_ungetc_buffer after fetching the stream's position, not before.
579
580 2009-01-15  Bruno Haible  <bruno@clisp.org>
581
582         Make fflush-after-ungetc POSIX compliant on glibc systems.
583         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
584         after ungetc.
585         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
586         (rpl_fflush): On glibc systems, simply call the system's fflush
587         function after clearing the ungetc buffer.
588         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
589         Instead, lseek only to the end of file, then use the system's fseeko
590         for the rest. On glibc systems, reset the EOF indicator bit.
591
592 2009-01-15  Jim Meyering  <meyering@redhat.com>
593
594         openmp.m4: revert quote-adding change, for portability to older autoconf
595         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
596         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
597         Simon Josefsson noticed the problem when using autoconf-2.61.
598
599 2009-01-15  Bruno Haible  <bruno@clisp.org>
600
601         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
602         * tests/test-fflush2.c (ASSERT): Always fail.
603         (main): Add two tests for fflush() after ungetc(), taking into account
604         the Austin Group's clarification.
605         Suggested by Eric Blake.
606
607 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
608
609         mktime.m4: remove K&R-style function prototypes
610         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
611         for the Sun C++ compiler.
612
613 2009-01-14  Bruno Haible  <bruno@clisp.org>
614
615         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
616         while including <wchar.h>.
617         * lib/wchar.in.h: In two particular situations on HP-UX, include only
618         the system's <wchar.h> file.
619         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
620
621 2009-01-14  Bruno Haible  <bruno@clisp.org>
622
623         * m4/csharp.m4: Don't mention gettext on the serial number line.
624         * m4/csharpexec.m4: Likewise.
625         * m4/eaccess.m4: Likewise.
626         * m4/javaexec.m4: Likewise.
627         * m4/sig_atomic_t.m4: Likewise.
628         * m4/tmpdir.m4: Likewise.
629         * m4/intldir.m4: Bump gettext version.
630         * m4/lib-ld.m4: Likewise.
631
632 2009-01-14  Bruno Haible  <bruno@clisp.org>
633
634         * lib/progname.c (set_program_name): Add more comments.
635         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
636
637 2009-01-14  Simon Josefsson  <simon@josefsson.org>
638
639         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
640         were sys/stat.h does not define it.
641
642 2009-01-14  Jim Meyering  <meyering@redhat.com>
643
644         many *.m4 files: improve m4 quoting
645         99% of this change was performed by running the following commands:
646         git ls-files | grep '\.m4$' | xargs perl -pi \
647           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
648           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
649           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
650           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
651         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
652         The remainder were to add Copyright dates, increment serial numbers,
653         undo some changes in comments, exclude m4/intl.m4, and add quotes
654         around the "1" in ",1" where the unusual spacing prohibited the
655         above regexps from doing the job.  For more details, see
656         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
657         * m4/acl.m4: Modified.
658         * m4/afs.m4: Likewise.
659         * m4/alloca.m4: Likewise.
660         * m4/argp.m4: Likewise.
661         * m4/argz.m4: Likewise.
662         * m4/atexit.m4: Likewise.
663         * m4/bison-i18n.m4: Likewise.
664         * m4/bison.m4: Likewise.
665         * m4/byteswap.m4: Likewise.
666         * m4/c-stack.m4: Likewise.
667         * m4/c-strtod.m4: Likewise.
668         * m4/calloc.m4: Likewise.
669         * m4/canonicalize-lgpl.m4: Likewise.
670         * m4/chown.m4: Likewise.
671         * m4/clock_time.m4: Likewise.
672         * m4/codeset.m4: Likewise.
673         * m4/copy-file.m4: Likewise.
674         * m4/csharp.m4: Likewise.
675         * m4/csharpcomp.m4: Likewise.
676         * m4/csharpexec.m4: Likewise.
677         * m4/d-ino.m4: Likewise.
678         * m4/d-type.m4: Likewise.
679         * m4/dirfd.m4: Likewise.
680         * m4/double-slash-root.m4: Likewise.
681         * m4/eaccess.m4: Likewise.
682         * m4/eealloc.m4: Likewise.
683         * m4/environ.m4: Likewise.
684         * m4/errno_h.m4: Likewise.
685         * m4/euidaccess.m4: Likewise.
686         * m4/execute.m4: Likewise.
687         * m4/fatal-signal.m4: Likewise.
688         * m4/fchdir.m4: Likewise.
689         * m4/fcntl_h.m4: Likewise.
690         * m4/fileblocks.m4: Likewise.
691         * m4/filenamecat.m4: Likewise.
692         * m4/findprog.m4: Likewise.
693         * m4/flexmember.m4: Likewise.
694         * m4/fnmatch.m4: Likewise.
695         * m4/fopen.m4: Likewise.
696         * m4/fpending.m4: Likewise.
697         * m4/fprintf-posix.m4: Likewise.
698         * m4/free.m4: Likewise.
699         * m4/frexp.m4: Likewise.
700         * m4/frexpl.m4: Likewise.
701         * m4/fsusage.m4: Likewise.
702         * m4/ftruncate.m4: Likewise.
703         * m4/gc-camellia.m4: Likewise.
704         * m4/gc-random.m4: Likewise.
705         * m4/gc.m4: Likewise.
706         * m4/getaddrinfo.m4: Likewise.
707         * m4/getcwd-abort-bug.m4: Likewise.
708         * m4/getcwd-path-max.m4: Likewise.
709         * m4/getdate.m4: Likewise.
710         * m4/getdomainname.m4: Likewise.
711         * m4/getgroups.m4: Likewise.
712         * m4/gethostname.m4: Likewise.
713         * m4/gethrxtime.m4: Likewise.
714         * m4/getline.m4: Likewise.
715         * m4/getloadavg.m4: Likewise.
716         * m4/getndelim2.m4: Likewise.
717         * m4/getpass.m4: Likewise.
718         * m4/gettext.m4: Likewise.
719         * m4/gettime.m4: Likewise.
720         * m4/gettimeofday.m4: Likewise.
721         * m4/gnulib-common.m4: Likewise.
722         * m4/group-member.m4: Likewise.
723         * m4/host-os.m4: Likewise.
724         * m4/iconv.m4: Likewise.
725         * m4/iconv_open.m4: Likewise.
726         * m4/inet_ntop.m4: Likewise.
727         * m4/inet_pton.m4: Likewise.
728         * m4/inline.m4: Likewise.
729         * m4/intldir.m4: Likewise.
730         * m4/intlmacosx.m4: Likewise.
731         * m4/intmax.m4: Likewise.
732         * m4/intmax_t.m4: Likewise.
733         * m4/inttypes.m4: Likewise.
734         * m4/inttypes_h.m4: Likewise.
735         * m4/inttypes-pri.m4: Likewise.
736         * m4/isapipe.m4: Likewise.
737         * m4/isnand.m4: Likewise.
738         * m4/isnanf.m4: Likewise.
739         * m4/isnanl.m4: Likewise.
740         * m4/javacomp.m4: Likewise.
741         * m4/javaexec.m4: Likewise.
742         * m4/jm-winsz1.m4: Likewise.
743         * m4/jm-winsz2.m4: Likewise.
744         * m4/lchown.m4: Likewise.
745         * m4/lcmessage.m4: Likewise.
746         * m4/ldexpl.m4: Likewise.
747         * m4/lib-ld.m4: Likewise.
748         * m4/lib-link.m4: Likewise.
749         * m4/libsigsegv.m4: Likewise.
750         * m4/link-follow.m4: Likewise.
751         * m4/localcharset.m4: Likewise.
752         * m4/locale-fr.m4: Likewise.
753         * m4/locale-ja.m4: Likewise.
754         * m4/locale-tr.m4: Likewise.
755         * m4/locale-zh.m4: Likewise.
756         * m4/lock.m4: Likewise.
757         * m4/longlong.m4: Likewise.
758         * m4/ls-mntd-fs.m4: Likewise.
759         * m4/lstat.m4: Likewise.
760         * m4/malloc.m4: Likewise.
761         * m4/mathl.m4: Likewise.
762         * m4/mbrtowc.m4: Likewise.
763         * m4/mbstate_t.m4: Likewise.
764         * m4/mbswidth.m4: Likewise.
765         * m4/memchr.m4: Likewise.
766         * m4/memcmp.m4: Likewise.
767         * m4/memcpy.m4: Likewise.
768         * m4/memmem.m4: Likewise.
769         * m4/memmove.m4: Likewise.
770         * m4/mempcpy.m4: Likewise.
771         * m4/memrchr.m4: Likewise.
772         * m4/memset.m4: Likewise.
773         * m4/minmax.m4: Likewise.
774         * m4/mkdir-slash.m4: Likewise.
775         * m4/mkdtemp.m4: Likewise.
776         * m4/mktime.m4: Likewise.
777         * m4/mmap-anon.m4: Likewise.
778         * m4/mountlist.m4: Likewise.
779         * m4/nanosleep.m4: Likewise.
780         * m4/nls.m4: Likewise.
781         * m4/nocrash.m4: Likewise.
782         * m4/open.m4: Likewise.
783         * m4/openat.m4: Likewise.
784         * m4/openmp.m4: Likewise.
785         * m4/pathmax.m4: Likewise.
786         * m4/perl.m4: Likewise.
787         * m4/physmem.m4: Likewise.
788         * m4/pipe.m4: Likewise.
789         * m4/po.m4: Likewise.
790         * m4/poll.m4: Likewise.
791         * m4/posixtm.m4: Likewise.
792         * m4/posixver.m4: Likewise.
793         * m4/printf-frexp.m4: Likewise.
794         * m4/printf-frexpl.m4: Likewise.
795         * m4/printf-posix.m4: Likewise.
796         * m4/printf-posix-rpl.m4: Likewise.
797         * m4/printf.m4: Likewise.
798         * m4/progtest.m4: Likewise.
799         * m4/putenv.m4: Likewise.
800         * m4/readline.m4: Likewise.
801         * m4/readlink.m4: Likewise.
802         * m4/readutmp.m4: Likewise.
803         * m4/realloc.m4: Likewise.
804         * m4/regex.m4: Likewise.
805         * m4/relocatable.m4: Likewise.
806         * m4/relocatable-lib.m4: Likewise.
807         * m4/rename-dest-slash.m4: Likewise.
808         * m4/rename.m4: Likewise.
809         * m4/rmdir-errno.m4: Likewise.
810         * m4/rmdir.m4: Likewise.
811         * m4/roundf.m4: Likewise.
812         * m4/roundl.m4: Likewise.
813         * m4/rpmatch.m4: Likewise.
814         * m4/save-cwd.m4: Likewise.
815         * m4/selinux-selinux-h.m4: Likewise.
816         * m4/setenv.m4: Likewise.
817         * m4/settime.m4: Likewise.
818         * m4/sig2str.m4: Likewise.
819         * m4/sig_atomic_t.m4: Likewise.
820         * m4/signalblocking.m4: Likewise.
821         * m4/signbit.m4: Likewise.
822         * m4/sigpipe.m4: Likewise.
823         * m4/sockets.m4: Likewise.
824         * m4/sockpfaf.m4: Likewise.
825         * m4/st_dm_mode.m4: Likewise.
826         * m4/stat-time.m4: Likewise.
827         * m4/stdbool.m4: Likewise.
828         * m4/stdint.m4: Likewise.
829         * m4/stdint_h.m4: Likewise.
830         * m4/stpcpy.m4: Likewise.
831         * m4/stpncpy.m4: Likewise.
832         * m4/strcase.m4: Likewise.
833         * m4/strchrnul.m4: Likewise.
834         * m4/strcspn.m4: Likewise.
835         * m4/strdup.m4: Likewise.
836         * m4/strftime.m4: Likewise.
837         * m4/strndup.m4: Likewise.
838         * m4/strnlen.m4: Likewise.
839         * m4/strpbrk.m4: Likewise.
840         * m4/strptime.m4: Likewise.
841         * m4/strsep.m4: Likewise.
842         * m4/strtod.m4: Likewise.
843         * m4/strtoimax.m4: Likewise.
844         * m4/strtok_r.m4: Likewise.
845         * m4/strtol.m4: Likewise.
846         * m4/strtoll.m4: Likewise.
847         * m4/strtoul.m4: Likewise.
848         * m4/strtoull.m4: Likewise.
849         * m4/strtoumax.m4: Likewise.
850         * m4/strverscmp.m4: Likewise.
851         * m4/threadlib.m4: Likewise.
852         * m4/timegm.m4: Likewise.
853         * m4/tm_gmtoff.m4: Likewise.
854         * m4/tmpdir.m4: Likewise.
855         * m4/tmpfile.m4: Likewise.
856         * m4/tzset.m4: Likewise.
857         * m4/uintmax_t.m4: Likewise.
858         * m4/unlinkdir.m4: Likewise.
859         * m4/unlocked-io.m4: Likewise.
860         * m4/uptime.m4: Likewise.
861         * m4/userspec.m4: Likewise.
862         * m4/utimbuf.m4: Likewise.
863         * m4/utime.m4: Likewise.
864         * m4/utimes-null.m4: Likewise.
865         * m4/utimes.m4: Likewise.
866         * m4/vararrays.m4: Likewise.
867         * m4/vasnprintf.m4: Likewise.
868         * m4/vfprintf-posix.m4: Likewise.
869         * m4/vprintf-posix.m4: Likewise.
870         * m4/wait-process.m4: Likewise.
871         * m4/wchar_t.m4: Likewise.
872         * m4/wint_t.m4: Likewise.
873         * m4/write-any-file.m4: Likewise.
874         * m4/yield.m4: Likewise.
875
876 2009-01-13  Bruno Haible  <bruno@clisp.org>
877
878         Avoid test-copy-file.sh failures when ACL support insufficient.
879         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
880         TESTS_ENVIRONMENT.
881         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
882         Reported by Jim Meyering.
883
884 2009-01-13  Bruno Haible  <bruno@clisp.org>
885
886         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
887         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
888         * modules/unistdio/u8-printf-parse (Files): Likewise.
889         * modules/unistdio/u32-printf-parse (Files): Likewise.
890         * modules/unistdio/ulc-printf-parse (Files): Likewise.
891
892 2009-01-13  Simon Josefsson  <simon@josefsson.org>
893
894         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
895         and m4/inttypes_h.m4 too.
896
897 2009-01-12  Eric Blake  <ebb9@byu.net>
898
899         tests: IRIX 6.2 cc can't compile -0.0 into .data
900         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
901         rather than at compile-time.
902         * tests/test-floorl.c (minus_zero): Likewise.
903         * tests/test-frexpl.c (minus_zero): Likewise.
904         * tests/test-isnan.c (minus_zerol): Likewise.
905         * tests/test-isnanl.h (minus_zero): Likewise.
906         * tests/test-ldexpl.c (minus_zero): Likewise.
907         * tests/test-roundl.c (minus_zero): Likewise.
908         * tests/test-signbit.c (minus_zerol): Likewise.
909         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
910         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
911         * tests/test-truncl.c (minus_zero): Likewise.
912         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
913         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
914         Reported by Tom G. Christensen and Nelson H. F. Beebe.
915
916 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
917
918         regex: fix glibc bug 9697
919         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
920         handling.
921
922 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
923
924         regex: fix glibc bug 697
925         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
926         being NULL also if there are no backreferences.
927
928 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
929
930         regex: merge glibc changes
931         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
932         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
933         re_string_skip_chars, re_string_reconstruct): Likewise.
934         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
935
936 2009-01-07  Jim Meyering  <meyering@redhat.com>
937
938         poll: filter through cppi
939         * lib/poll.c: Indent cpp directives to reflect nesting.
940
941 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
942
943         poll: don't return uninitialized
944         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
945
946 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
947
948         avoid compile failure on AIX 6.1
949         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
950         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
951
952 2009-01-04  Jim Meyering  <meyering@redhat.com>
953
954         remove duplicate inclusion of <stdio.h>
955         * tests/test-fprintf-posix.c: Likewise.
956         * tests/test-printf-posix.c: Likewise.
957         * tests/test-snprintf-posix.c: Likewise.
958         * tests/test-sprintf-posix.c: Likewise.
959         * tests/test-vasprintf-posix.c: Likewise.
960         * tests/test-vfprintf-posix.c: Likewise.
961         * tests/test-vprintf-posix.c: Likewise.
962         * tests/test-vsnprintf-posix.c: Likewise.
963         * tests/test-vsprintf-posix.c: Likewise.
964
965 2009-01-03  Jim Meyering  <meyering@redhat.com>
966
967         gnulib-tool: fix sed-based filtering
968         * gnulib-tool (func_filter_filelist): Remove extra backslash
969         in sed_fff_filter definition.
970
971 2009-01-02  Jim Meyering  <meyering@redhat.com>
972
973         strftime: avoid compilation failure on Solaris 2.6
974         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
975         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
976         Don't #define mbrlen or mbsinit, since now they're guaranteed to
977         be available.  Reported by Tom G. Christensen.  Details in
978         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
979
980 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
981             Bruno Haible  <bruno@clisp.org>
982
983         Speed up gnulib-tool by doing more string processing through shell
984         built-ins.
985         * gnulib-tool (fast_func_append): New variable.
986         (func_remove_prefix, func_remove_suffix): New functions.
987         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
988         (func_filter_filelist): New function.
989         (func_get_dependencies): Use func_remove_suffix instead of sed.
990         (func_get_automake_snippet): Use func_filter_filelist instead of a
991         subshell and sed invocation.
992
993 2009-01-01  Bruno Haible  <bruno@clisp.org>
994
995         Fix a security bug.
996         * gnulib-tool (func_import, import, update): Don't allow the characters
997         '"', '$', '`', '\' in macro arguments that become part of commands that
998         are evaluated.
999
1000 2009-01-01  Bruno Haible  <bruno@clisp.org>
1001
1002         * gnulib-tool (func_reset_sigpipe): Add more comments.
1003
1004 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1005
1006         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
1007         func_emit_tests_Makefile_am, func_import): Abort loops early if we
1008         already know the answer.
1009
1010 2009-01-01  Jim Meyering  <meyering@redhat.com>
1011
1012         * lib/version-etc.c (version_etc_va): Update copyright year.
1013
1014 2008-12-30  Bruno Haible  <bruno@clisp.org>
1015
1016         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
1017         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
1018         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1019
1020 2008-12-29  Eric Blake  <ebb9@byu.net>
1021
1022         multiarch: avoid autoconf AC_REQUIRE bug
1023         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
1024         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
1025         2.63 and older.
1026         Reported by Bruno Haible, and analyzed in
1027         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
1028
1029 2008-12-29  Bruno Haible  <bruno@clisp.org>
1030
1031         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
1032         files in subdirectories correctly.
1033         Reported by Ralf Wildenhues.
1034
1035 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1036
1037         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
1038         rather than 'join FILE -', for Solaris join.
1039
1040 2008-12-29  Bruno Haible  <bruno@clisp.org>
1041
1042         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
1043         quoting.
1044         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
1045         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
1046         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
1047         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
1048         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
1049         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
1050         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
1051         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
1052         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
1053         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
1054         * m4/nls.m4 (AM_NLS): Likewise.
1055         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
1056         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
1057         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
1058         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
1059         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
1060         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
1061         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
1062         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
1063         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
1064         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
1065         * m4/xsize.m4 (gl_XSIZE): Likewise.
1066         Suggested by Jim Meyering.
1067
1068 2008-11-17  Bruce Korb  <bkorb@gnu.org>
1069
1070         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
1071         * lib/parse-duration.c: use a switch instead of cascading if's.
1072
1073 2008-12-29  Eric Blake  <ebb9@byu.net>
1074
1075         wchar.h: supply WEOF on Irix 5.3
1076         * lib/wchar.in.h (wint_t): Also supply WEOF.
1077         * lib/wctype.in.h (wint_t): Likewise.
1078         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
1079         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
1080         Reported by Tom G. Christensen.
1081
1082 2008-12-26  Bruno Haible  <bruno@clisp.org>
1083
1084         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
1085         i486, i586, i686.
1086
1087 2008-12-26  Bruno Haible  <bruno@clisp.org>
1088
1089         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
1090
1091 2008-12-26  Bruno Haible  <bruno@clisp.org>
1092
1093         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
1094         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
1095         not __STDC_CONSTANT_MACROS.
1096         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
1097
1098 2008-12-25  Bruno Haible  <bruno@clisp.org>
1099
1100         Add support for universal builds to vasnprintf.
1101         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
1102         universal builds, guess no.
1103         * modules/vasnprintf-posix (Depends-on): Add multiarch.
1104         * modules/vasprintf-posix (Depends-on): Likewise.
1105         * modules/fprintf-posix (Depends-on): Likewise.
1106         * modules/vfprintf-posix (Depends-on): Likewise.
1107         * modules/snprintf-posix (Depends-on): Likewise.
1108         * modules/vsnprintf-posix (Depends-on): Likewise.
1109         * modules/sprintf-posix (Depends-on): Likewise.
1110         * modules/vsprintf-posix (Depends-on): Likewise.
1111         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
1112         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1113         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1114         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1115         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1116         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1117         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1118
1119         Add support for universal builds to <inttypes.h>.
1120         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
1121         _SCNu64_PREFIX): In Apple
1122         universal builds, define directly, using _LP64.
1123         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
1124         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
1125         * modules/inttypes (Depends-on): Add multiarch.
1126         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
1127
1128         Add support for universal builds to <stdint.h>.
1129         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
1130         universal builds, define directly, using _LP64.
1131         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
1132         Apple universal builds, don't test for the size and suffix of ptrdiff_t
1133         and size_t.
1134         * modules/stdint (Depends-on): Add multiarch.
1135         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
1136
1137         New module 'multiarch'.
1138         * modules/multiarch: New file.
1139         * m4/multiarch.m4: New file.
1140
1141 2008-12-25  Bruno Haible  <bruno@clisp.org>
1142
1143         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
1144
1145 2008-12-25  Bruno Haible  <bruno@clisp.org>
1146
1147         * modules/btowc (License): Relicense under LGPLv2+.
1148         * modules/mbsinit (License): Likewise.
1149         * modules/mbrtowc (License): Likewise.
1150         * modules/wcrtomb (License): Likewise.
1151         * modules/streq (License): Likewise.
1152         Reported by David Lutterkort <lutter@redhat.com>.
1153
1154 2008-12-23  Bruno Haible  <bruno@clisp.org>
1155
1156         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
1157
1158 2008-12-23  Bruno Haible  <bruno@clisp.org>
1159
1160         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
1161         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
1162         GETADDRINFO_LIB, not in LIBS.
1163         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
1164         * modules/canon-host (Link): Likewise.
1165         * NEWS: Mention the change.
1166         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
1167         GETADDRINFO_LIB.
1168
1169 2008-12-22  Bruno Haible  <bruno@clisp.org>
1170
1171         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
1172         * doc/posix-functions/iswalpha_l.texi: Likewise.
1173         * doc/posix-functions/iswblank_l.texi: Likewise.
1174         * doc/posix-functions/iswcntrl_l.texi: Likewise.
1175         * doc/posix-functions/iswctype_l.texi: Likewise.
1176         * doc/posix-functions/iswdigit_l.texi: Likewise.
1177         * doc/posix-functions/iswgraph_l.texi: Likewise.
1178         * doc/posix-functions/iswlower_l.texi: Likewise.
1179         * doc/posix-functions/iswprint_l.texi: Likewise.
1180         * doc/posix-functions/iswpunct_l.texi: Likewise.
1181         * doc/posix-functions/iswspace_l.texi: Likewise.
1182         * doc/posix-functions/iswupper_l.texi: Likewise.
1183         * doc/posix-functions/iswxdigit_l.texi: Likewise.
1184         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
1185         * doc/posix-functions/open_wmemstream.texi: Likewise.
1186         * doc/posix-functions/swscanf.texi: Likewise.
1187         * doc/posix-functions/towctrans_l.texi: Likewise.
1188         * doc/posix-functions/towlower.texi: Likewise.
1189         * doc/posix-functions/towlower_l.texi: Likewise.
1190         * doc/posix-functions/towupper.texi: Likewise.
1191         * doc/posix-functions/towupper_l.texi: Likewise.
1192         * doc/posix-functions/vfwprintf.texi: Likewise.
1193         * doc/posix-functions/vfwscanf.texi: Likewise.
1194         * doc/posix-functions/vswscanf.texi: Likewise.
1195         * doc/posix-functions/vwprintf.texi: Likewise.
1196         * doc/posix-functions/vwscanf.texi: Likewise.
1197         * doc/posix-functions/wcpcpy.texi: Likewise.
1198         * doc/posix-functions/wcpncpy.texi: Likewise.
1199         * doc/posix-functions/wcscasecmp.texi: Likewise.
1200         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
1201         * doc/posix-functions/wcscoll_l.texi: Likewise.
1202         * doc/posix-functions/wcsdup.texi: Likewise.
1203         * doc/posix-functions/wcsncasecmp.texi: Likewise.
1204         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
1205         * doc/posix-functions/wcsnlen.texi: Likewise.
1206         * doc/posix-functions/wcsnrtombs.texi: Likewise.
1207         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
1208         * doc/posix-functions/wctrans_l.texi: Likewise.
1209         * doc/posix-functions/wctype_l.texi: Likewise.
1210         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
1211         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
1212         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
1213         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
1214         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
1215         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
1216         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
1217         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
1218         * doc/glibc-functions/wcschrnul.texi: Likewise.
1219         * doc/glibc-functions/wcsftime_l.texi: Likewise.
1220         * doc/glibc-functions/wcstod_l.texi: Likewise.
1221         * doc/glibc-functions/wcstof_l.texi: Likewise.
1222         * doc/glibc-functions/wcstol_l.texi: Likewise.
1223         * doc/glibc-functions/wcstold_l.texi: Likewise.
1224         * doc/glibc-functions/wcstoll_l.texi: Likewise.
1225         * doc/glibc-functions/wcstoq.texi: Likewise.
1226         * doc/glibc-functions/wcstoul_l.texi: Likewise.
1227         * doc/glibc-functions/wcstoull_l.texi: Likewise.
1228         * doc/glibc-functions/wcstouq.texi: Likewise.
1229         * doc/glibc-functions/wmempcpy.texi: Likewise.
1230
1231 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
1232             Eric Blake  <ebb9@byu.net>
1233             Paolo Bonzini  <bonzini@gnu.org>
1234             Bruno Haible  <bruno@clisp.org>
1235
1236         Make c-stack work on Haiku.
1237         * lib/c-stack.c (SA_ONSTACK): Define fallback.
1238         (c_stack_action): Use SA_ONSTACK flag.
1239
1240 2008-12-22  Bruno Haible  <bruno@clisp.org>
1241
1242         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
1243
1244 2008-12-22  Bruno Haible  <bruno@clisp.org>
1245
1246         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
1247         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
1248         being overridden.
1249         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
1250         New macros.
1251         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
1252         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
1253         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
1254         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
1255
1256 2008-12-22  Bruno Haible  <bruno@clisp.org>
1257
1258         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
1259         from test code.
1260
1261 2008-12-22  Eric Blake  <ebb9@byu.net>
1262
1263         Avoid gcc warnings on cygwin.
1264         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
1265         Avoid unused variable.
1266         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
1267         Likewise.
1268
1269 2008-12-22  Bruno Haible  <bruno@clisp.org>
1270
1271         Remove HAVE_MBRTOWC conditionals.
1272         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
1273         (mbscasecmp): Assume mbrtowc function.
1274         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
1275         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
1276         * lib/mbschr.c: Include mbuiter.h unconditionally.
1277         (mbschr): Assume mbrtowc function.
1278         * lib/mbscspn.c: Include mbuiter.h unconditionally.
1279         (mbscspn): Assume mbrtowc function.
1280         * lib/mbslen.c: Include mbuiter.h unconditionally.
1281         (mbslen): Assume mbrtowc function.
1282         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
1283         (mbsncasecmp): Assume mbrtowc function.
1284         * lib/mbsnlen.c: Include mbiter.h unconditionally.
1285         (mbsnlen): Assume mbrtowc function.
1286         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
1287         (mbspbrk): Assume mbrtowc function.
1288         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
1289         (mbspcasecmp): Assume mbrtowc function.
1290         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
1291         (mbsrchr): Assume mbrtowc function.
1292         * lib/mbssep.c: Include mbuiter.h unconditionally.
1293         (mbssep): Assume mbrtowc function.
1294         * lib/mbsspn.c: Include mbuiter.h unconditionally.
1295         (mbsspn): Assume mbrtowc function.
1296         * lib/mbsstr.c: Include mbuiter.h unconditionally.
1297         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
1298         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
1299         (mbstok_r): Assume mbrtowc function.
1300         * lib/propername.c: Include mbuiter.h unconditionally.
1301         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
1302         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
1303         (trim2): Assume mbrtowc function.
1304         * lib/mbswidth.c (mbsinit): Remove fallback definition.
1305         (mbsnwidth): Assume mbrtowc function.
1306         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
1307         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
1308         fallback definitions.
1309         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
1310
1311 2008-12-22  Bruno Haible  <bruno@clisp.org>
1312
1313         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
1314
1315 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
1316
1317         * modules/regex: Request emulations for the mb*/wc* functions we need.
1318         * m4/regex.m4: Don't look for those functions here.
1319         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
1320
1321 2008-12-22  Bruno Haible  <bruno@clisp.org>
1322
1323         * modules/fnmatch (Depends-on): Remove duplicated dependency.
1324
1325 2008-12-21  Bruno Haible  <bruno@clisp.org>
1326
1327         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
1328         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
1329         (Include): Remove conditionalization.
1330         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
1331         (Include): Remove conditionalization.
1332         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
1333         (Include): Remove conditionalization.
1334         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
1335         * m4/mbfile.m4 (gl_MBFILE): Likewise.
1336         * NEWS: Mention the change.
1337         Reported by Alan Hourihane <alanh@fairlite.co.uk>
1338         via Sergey Poznyakoff <gray@gnu.org.ua>.
1339
1340 2008-12-21  Bruno Haible  <bruno@clisp.org>
1341
1342         * MODULES.html.sh (Extended multibyte and wide character utilities
1343         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
1344         wcrtomb, wcsrtombs.
1345         (Support for systems lacking POSIX:2008): Add accept, bind, close,
1346         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
1347         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
1348         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
1349
1350 2008-12-21  Bruno Haible  <bruno@clisp.org>
1351
1352         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
1353
1354 2008-12-21  Bruno Haible  <bruno@clisp.org>
1355
1356         * modules/wcsnrtombs-tests: New file.
1357         * tests/test-wcsnrtombs1.sh: New file.
1358         * tests/test-wcsnrtombs2.sh: New file.
1359         * tests/test-wcsnrtombs3.sh: New file.
1360         * tests/test-wcsnrtombs4.sh: New file.
1361         * tests/test-wcsnrtombs.c: New file.
1362
1363         New module 'wcsnrtombs'.
1364         * lib/wchar.in.h (wcsnrtombs): New declaration.
1365         * lib/wcsnrtombs.c: New file.
1366         * lib/wcsrtombs-state.c: New file.
1367         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
1368         (internal_state): Remove variable.
1369         * m4/wcsnrtombs.m4: New file.
1370         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
1371         compilation units.
1372         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
1373         HAVE_WCSNRTOMBS.
1374         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
1375         HAVE_WCSNRTOMBS.
1376         * modules/wcsnrtombs: New file.
1377         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
1378         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
1379
1380 2008-12-21  Bruno Haible  <bruno@clisp.org>
1381
1382         * modules/wcsrtombs-tests: New file.
1383         * tests/test-wcsrtombs1.sh: New file.
1384         * tests/test-wcsrtombs2.sh: New file.
1385         * tests/test-wcsrtombs3.sh: New file.
1386         * tests/test-wcsrtombs4.sh: New file.
1387         * tests/test-wcsrtombs.c: New file.
1388
1389         New module 'wcsrtombs'.
1390         * lib/wchar.in.h (wcsrtombs): New declaration.
1391         * lib/wcsrtombs.c: New file.
1392         * m4/wcsrtombs.m4: New file.
1393         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
1394         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
1395         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
1396         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
1397         * modules/wcsrtombs: New file.
1398         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
1399         bugs.
1400
1401 2008-12-21  Bruno Haible  <bruno@clisp.org>
1402
1403         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
1404         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
1405         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
1406         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
1407         if not correct.
1408         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
1409         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
1410         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1411         m4/locale-zh.m4, m4/codeset.m4.
1412         * doc/posix-functions/wcrtomb.texi: Document the bug.
1413
1414 2008-12-21  Bruno Haible  <bruno@clisp.org>
1415
1416         Work around a btowc() bug on IRIX 6.5.
1417         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
1418         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
1419         REPLACE_WTOBC if not.
1420         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
1421         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
1422         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
1423
1424 2008-12-21  Bruno Haible  <bruno@clisp.org>
1425
1426         * modules/wcrtomb-tests: New file.
1427         * tests/test-wcrtomb.sh: New file.
1428         * tests/test-wcrtomb.c: New file.
1429
1430         New module 'wcrtomb'.
1431         * lib/wchar.in.h (wcrtomb): New declaration.
1432         * lib/wcrtomb.c: New file.
1433         * m4/wcrtomb.m4: New file.
1434         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
1435         HAVE_WCRTOMB.
1436         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
1437         HAVE_WCRTOMB.
1438         * modules/wcrtomb: New file.
1439         * doc/posix-functions/wcrtomb.texi: Mention the new module.
1440
1441 2008-12-21  Bruno Haible  <bruno@clisp.org>
1442
1443         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
1444         * modules/mbsrtowcs (Files): Likewise.
1445         * modules/wctob (Files): Likewise.
1446         * modules/c-strcase-tests (Files): Likewise.
1447         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
1448         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
1449         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
1450         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
1451         * modules/vasnprintf-posix-tests (Files): Likewise.
1452
1453 2008-12-21  William Pursell  <bill.pursell@gmail.com>
1454
1455         gitlog-to-changelog: pass all command-line arguments to git-log
1456         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
1457         it is sometimes convenient to filter the commits in various ways.
1458         gitlog-to-changelog only allows --since to specify a start date,
1459         but git-log itself supports many other filtering mechanisms.
1460         At the moment, I want to filter by branch name.  Rather than
1461         adding a --branch option to gitlog-to-changelog, it seems more
1462         flexible to simply pass all options directly to git-log and let
1463         git do the work.  Notice that this effectively makes --since a
1464         redundant option for gitlog-to-changelog, but removing it would
1465         require current usage to change since calls would then require
1466         an additional '--'.
1467
1468 2008-12-21  Bruno Haible  <bruno@clisp.org>
1469
1470         * modules/mbsnrtowcs-tests: New file.
1471         * tests/test-mbsnrtowcs1.sh: New file.
1472         * tests/test-mbsnrtowcs2.sh: New file.
1473         * tests/test-mbsnrtowcs3.sh: New file.
1474         * tests/test-mbsnrtowcs4.sh: New file.
1475         * tests/test-mbsnrtowcs.c: New file.
1476
1477         New module 'mbsnrtowcs'.
1478         * lib/wchar.in.h (mbsnrtowcs): New declaration.
1479         * lib/mbsnrtowcs.c: New file.
1480         * lib/mbsrtowcs-state.c: New file.
1481         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
1482         (internal_state): Remove variable.
1483         * m4/mbsnrtowcs.m4: New file.
1484         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
1485         compilation units.
1486         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
1487         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
1488         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
1489         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
1490         * modules/mbsnrtowcs: New file.
1491         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
1492         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
1493         portability problem.
1494
1495 2008-12-21  Bruno Haible  <bruno@clisp.org>
1496
1497         Work around mbsrtowcs bug.
1498         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
1499         (gl_FUNC_MBSRTOWCS): Invoke it.
1500         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1501         m4/locale-zh.m4.
1502         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
1503
1504 2008-12-21  Bruno Haible  <bruno@clisp.org>
1505
1506         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
1507
1508 2008-12-21  Bruno Haible  <bruno@clisp.org>
1509
1510         Update doc for AIX.
1511         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
1512         16-bit wchar_t type.
1513         * doc/posix-functions/btowc.texi: Likewise.
1514         * doc/posix-functions/fgetwc.texi: Likewise.
1515         * doc/posix-functions/fgetws.texi: Likewise.
1516         * doc/posix-functions/fputwc.texi: Likewise.
1517         * doc/posix-functions/fputws.texi: Likewise.
1518         * doc/posix-functions/fwide.texi: Likewise.
1519         * doc/posix-functions/fwprintf.texi: Likewise.
1520         * doc/posix-functions/fwscanf.texi: Likewise.
1521         * doc/posix-functions/getwchar.texi: Likewise.
1522         * doc/posix-functions/getwc.texi: Likewise.
1523         * doc/posix-functions/iswalnum.texi: Likewise.
1524         * doc/posix-functions/iswalpha.texi: Likewise.
1525         * doc/posix-functions/iswblank.texi: Likewise.
1526         * doc/posix-functions/iswcntrl.texi: Likewise.
1527         * doc/posix-functions/iswctype.texi: Likewise.
1528         * doc/posix-functions/iswdigit.texi: Likewise.
1529         * doc/posix-functions/iswgraph.texi: Likewise.
1530         * doc/posix-functions/iswlower.texi: Likewise.
1531         * doc/posix-functions/iswprint.texi: Likewise.
1532         * doc/posix-functions/iswpunct.texi: Likewise.
1533         * doc/posix-functions/iswspace.texi: Likewise.
1534         * doc/posix-functions/iswupper.texi: Likewise.
1535         * doc/posix-functions/iswxdigit.texi: Likewise.
1536         * doc/posix-functions/mbrtowc.texi: Likewise.
1537         * doc/posix-functions/mbsrtowcs.texi: Likewise.
1538         * doc/posix-functions/mbstowcs.texi: Likewise.
1539         * doc/posix-functions/mbtowc.texi: Likewise.
1540         * doc/posix-functions/putwchar.texi: Likewise.
1541         * doc/posix-functions/putwc.texi: Likewise.
1542         * doc/posix-functions/swprintf.texi: Likewise.
1543         * doc/posix-functions/tolower.texi: Likewise.
1544         * doc/posix-functions/toupper.texi: Likewise.
1545         * doc/posix-functions/towctrans.texi: Likewise.
1546         * doc/posix-functions/ungetwc.texi: Likewise.
1547         * doc/posix-functions/vswprintf.texi: Likewise.
1548         * doc/posix-functions/wcrtomb.texi: Likewise.
1549         * doc/posix-functions/wcscat.texi: Likewise.
1550         * doc/posix-functions/wcschr.texi: Likewise.
1551         * doc/posix-functions/wcscmp.texi: Likewise.
1552         * doc/posix-functions/wcscoll.texi: Likewise.
1553         * doc/posix-functions/wcscpy.texi: Likewise.
1554         * doc/posix-functions/wcscspn.texi: Likewise.
1555         * doc/posix-functions/wcsftime.texi: Likewise.
1556         * doc/posix-functions/wcslen.texi: Likewise.
1557         * doc/posix-functions/wcsncat.texi: Likewise.
1558         * doc/posix-functions/wcsncmp.texi: Likewise.
1559         * doc/posix-functions/wcsncpy.texi: Likewise.
1560         * doc/posix-functions/wcspbrk.texi: Likewise.
1561         * doc/posix-functions/wcsrchr.texi: Likewise.
1562         * doc/posix-functions/wcsrtombs.texi: Likewise.
1563         * doc/posix-functions/wcsspn.texi: Likewise.
1564         * doc/posix-functions/wcsstr.texi: Likewise.
1565         * doc/posix-functions/wcstod.texi: Likewise.
1566         * doc/posix-functions/wcstof.texi: Likewise.
1567         * doc/posix-functions/wcstoimax.texi: Likewise.
1568         * doc/posix-functions/wcstok.texi: Likewise.
1569         * doc/posix-functions/wcstold.texi: Likewise.
1570         * doc/posix-functions/wcstoll.texi: Likewise.
1571         * doc/posix-functions/wcstol.texi: Likewise.
1572         * doc/posix-functions/wcstombs.texi: Likewise.
1573         * doc/posix-functions/wcstoull.texi: Likewise.
1574         * doc/posix-functions/wcstoul.texi: Likewise.
1575         * doc/posix-functions/wcstoumax.texi: Likewise.
1576         * doc/posix-functions/wcswidth.texi: Likewise.
1577         * doc/posix-functions/wcsxfrm.texi: Likewise.
1578         * doc/posix-functions/wctob.texi: Likewise.
1579         * doc/posix-functions/wctomb.texi: Likewise.
1580         * doc/posix-functions/wctrans.texi: Likewise.
1581         * doc/posix-functions/wctype.texi: Likewise.
1582         * doc/posix-functions/wcwidth.texi: Likewise.
1583         * doc/posix-functions/wmemchr.texi: Likewise.
1584         * doc/posix-functions/wmemcmp.texi: Likewise.
1585         * doc/posix-functions/wmemcpy.texi: Likewise.
1586         * doc/posix-functions/wmemmove.texi: Likewise.
1587         * doc/posix-functions/wmemset.texi: Likewise.
1588         * doc/posix-functions/wprintf.texi: Likewise.
1589         * doc/posix-functions/wscanf.texi: Likewise.
1590
1591 2008-12-21  Bruno Haible  <bruno@clisp.org>
1592
1593         Update doc for HP-UX 11.11.
1594         * doc/posix-functions/btowc.texi: Clarify that the function is missing
1595         in HP-UX version 11.00, not in all versions of HP-UX 11.
1596         * doc/posix-functions/fwide.texi: Likewise.
1597         * doc/posix-functions/fwprintf.texi: Likewise.
1598         * doc/posix-functions/fwscanf.texi: Likewise.
1599         * doc/posix-functions/inet_ntop.texi: Likewise.
1600         * doc/posix-functions/inet_pton.texi: Likewise.
1601         * doc/posix-functions/mbrlen.texi: Likewise.
1602         * doc/posix-functions/mbrtowc.texi: Likewise.
1603         * doc/posix-functions/mbsinit.texi: Likewise.
1604         * doc/posix-functions/mbsrtowcs.texi: Likewise.
1605         * doc/posix-functions/swprintf.texi: Likewise.
1606         * doc/posix-functions/swscanf.texi: Likewise.
1607         * doc/posix-functions/towctrans.texi: Likewise.
1608         * doc/posix-functions/vfwprintf.texi: Likewise.
1609         * doc/posix-functions/vswprintf.texi: Likewise.
1610         * doc/posix-functions/vwprintf.texi: Likewise.
1611         * doc/posix-functions/wcrtomb.texi: Likewise.
1612         * doc/posix-functions/wcsrtombs.texi: Likewise.
1613         * doc/posix-functions/wcsstr.texi: Likewise.
1614         * doc/posix-functions/wctob.texi: Likewise.
1615         * doc/posix-functions/wctrans.texi: Likewise.
1616         * doc/posix-functions/wmemchr.texi: Likewise.
1617         * doc/posix-functions/wmemcmp.texi: Likewise.
1618         * doc/posix-functions/wmemcpy.texi: Likewise.
1619         * doc/posix-functions/wmemmove.texi: Likewise.
1620         * doc/posix-functions/wmemset.texi: Likewise.
1621         * doc/posix-functions/wprintf.texi: Likewise.
1622         * doc/posix-functions/wscanf.texi: Likewise.
1623
1624 2008-12-21  Bruno Haible  <bruno@clisp.org>
1625
1626         Work around a portability problem.
1627         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
1628         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
1629
1630 2008-12-20  Bruno Haible  <bruno@clisp.org>
1631
1632         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
1633         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
1634         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
1635         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
1636         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
1637
1638         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
1639         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
1640         set.
1641         (GNULIB_defined_mbstate_t): New macro.
1642         (mbsinit): Redefine if REPLACE_MBSINIT is set.
1643         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
1644         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
1645         reuses the system's mbrtowc function but works around the bugs.
1646         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
1647         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
1648         macros.
1649         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
1650         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
1651         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
1652         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
1653         REPLACE_MBSINIT if mbsinit needs to be overridden.
1654         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
1655         REPLACE_MBSINIT, REPLACE_MBRTOWC.
1656         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
1657         REPLACE_MBSINIT, REPLACE_MBRTOWC.
1658         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
1659         m4/locale-zh.m4.
1660         (Depends): Add mbsinit.
1661         * modules/mbsinit (Depends): Add mbrtowc.
1662         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
1663
1664 2008-12-20  Bruno Haible  <bruno@clisp.org>
1665
1666         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
1667         so that there are no conversion errors on AIX.
1668         * tests/test-mbsrtowcs.c (main): LIkewise.
1669
1670 2008-12-20  Bruno Haible  <bruno@clisp.org>
1671
1672         Work around wctob bug on Solaris <= 9.
1673         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
1674         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
1675         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
1676         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
1677         * modules/wctob (Files): Add m4/locale-fr.m4.
1678         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
1679
1680 2008-12-20  Bruno Haible  <bruno@clisp.org>
1681
1682         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
1683         /dev/null.
1684         * tests/test-select-in.sh: Likewise.
1685         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1686
1687 2008-12-20  Bruno Haible  <bruno@clisp.org>
1688
1689         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
1690         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
1691         Cygwin 1.5.x.
1692
1693 2008-12-20  Bruno Haible  <bruno@clisp.org>
1694
1695         Ensure mbstate_t is defined on HP-UX 11.11.
1696         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
1697         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
1698         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
1699         AC_USE_SYSTEM_EXTENSIONS.
1700         * modules/fnmatch (Depends-on): Add extensions.
1701         * modules/mbrlen (Depends-on): Likewise.
1702         * modules/mbrtowc (Depends-on): Likewise.
1703         * modules/mbsinit (Depends-on): Likewise.
1704         * modules/mbsrtowcs (Depends-on): Likewise.
1705         * modules/mbswidth (Depends-on): Likewise.
1706         * modules/quotearg (Depends-on): Likewise.
1707         * modules/strftime (Depends-on): Likewise.
1708
1709 2008-12-20  Bruno Haible  <bruno@clisp.org>
1710
1711         Ensure wctob is declared on IRIX 6.5.
1712         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
1713         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
1714         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
1715         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
1716         of HAVE_WCTOB.
1717         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
1718         HAVE_WCTOB.
1719         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
1720
1721 2008-12-19  Bruno Haible  <bruno@clisp.org>
1722
1723         * modules/mbsrtowcs-tests: New file.
1724         * tests/test-mbsrtowcs1.sh: New file.
1725         * tests/test-mbsrtowcs2.sh: New file.
1726         * tests/test-mbsrtowcs3.sh: New file.
1727         * tests/test-mbsrtowcs4.sh: New file.
1728         * tests/test-mbsrtowcs.c: New file.
1729
1730         New module 'mbsrtowcs'.
1731         * lib/wchar.in.h (mbsrtowcs): New declaration.
1732         * lib/mbsrtowcs.c: New file.
1733         * m4/mbsrtowcs.m4: New file.
1734         * modules/mbsrtowcs: New file.
1735         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
1736         HAVE_MBSRTOWCS.
1737         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
1738         HAVE_MBSRTOWCS.
1739         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
1740
1741 2008-12-19  Bruno Haible  <bruno@clisp.org>
1742
1743         New module 'mbrlen'.
1744         * lib/wchar.in.h (mbrlen): New declaration.
1745         * lib/mbrlen.c: New file.
1746         * m4/mbrlen.m4: New file.
1747         * modules/mbrlen: New file.
1748         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
1749         HAVE_MBRLEN.
1750         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
1751         HAVE_MBRLEN.
1752         * doc/posix-functions/mbrlen.texi: Document the new module.
1753
1754 2008-12-19  Bruno Haible  <bruno@clisp.org>
1755
1756         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
1757         * modules/mbrtowc (Depends-on): Add verify.
1758         Suggested by Paul Eggert.
1759
1760 2008-12-18  Bruno Haible  <bruno@clisp.org>
1761
1762         * modules/mbsinit-tests: New file.
1763         * tests/test-mbsinit.sh: New file.
1764         * tests/test-mbsinit.c: New file.
1765
1766 2008-12-18  Bruno Haible  <bruno@clisp.org>
1767
1768         * modules/mbrtowc-tests: New file.
1769         * tests/test-mbrtowc1.sh: New file.
1770         * tests/test-mbrtowc2.sh: New file.
1771         * tests/test-mbrtowc3.sh: New file.
1772         * tests/test-mbrtowc4.sh: New file.
1773         * tests/test-mbrtowc.c: New file.
1774
1775         New module 'mbrtowc'.
1776         * lib/wchar.in.h (mbstate_t): Override when the system does not have
1777         mbsinit and mbrtowc.
1778         (mbrtowc): New declaration.
1779         * lib/mbrtowc.c: New file.
1780         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
1781         * modules/mbrtowc: New file.
1782         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
1783         HAVE_MBRTOWC.
1784         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
1785         HAVE_MBRTOWC.
1786         * doc/posix-functions/mbrtowc.texi: Document the new module.
1787
1788 2008-12-18  Bruno Haible  <bruno@clisp.org>
1789
1790         New module 'wctob'.
1791         * lib/wchar.in.h (wctob): New declaration.
1792         * lib/wctob.c: New file.
1793         * m4/wctob.m4: New file.
1794         * modules/wctob: New file.
1795         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
1796         HAVE_WCTOB.
1797         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
1798         * doc/posix-functions/wctob.texi: Document the new module.
1799
1800 2008-12-18  Bruno Haible  <bruno@clisp.org>
1801
1802         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
1803         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
1804
1805 2008-12-18  Simon Josefsson  <simon@josefsson.org>
1806
1807         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
1808         G. Christensen" <tgc@jupiterrise.com>.
1809
1810         * lib/flock.c: Need to include errno.h.  Reported by "Tom
1811         G. Christensen" <tgc@jupiterrise.com>.
1812
1813         * lib/flock.c: Need to include string.h.  Reported by "Tom
1814         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
1815         <ebb9@byu.net>.
1816
1817 2008-12-18  Bruno Haible  <bruno@clisp.org>
1818
1819         * m4/locale-ja.m4: New file, from GNU gettext.
1820
1821 2008-12-17  Bruno Haible  <bruno@clisp.org>
1822
1823         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
1824         Suggested by Eric Blake.
1825
1826 2008-12-17  Bruno Haible  <bruno@clisp.org>
1827
1828         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
1829
1830 2008-12-17  Bruno Haible  <bruno@clisp.org>
1831
1832         * lib/mbsinit.c: Include verify.h. Verify an assumption.
1833         * modules/mbsinit (Depends-on): Add verify.
1834         Suggested by Paul Eggert.
1835
1836 2008-12-17  Bruno Haible  <bruno@clisp.org>
1837
1838         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
1839         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
1840         gl_FUNC_MBRTOWC.
1841         * m4/mbiter.m4 (gl_MBITER): LIkewise.
1842         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
1843         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
1844         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
1845         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
1846         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
1847         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
1848         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
1849         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
1850         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
1851         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
1852         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
1853         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
1854         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
1855         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
1856         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
1857         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
1858         * modules/trim (configure.ac): Likewise.
1859
1860 2008-12-17  Bruno Haible  <bruno@clisp.org>
1861
1862         * modules/btowc-tests: New file.
1863         * tests/test-btowc1.sh: New file.
1864         * tests/test-btowc2.sh: New file.
1865         * tests/test-btowc.c: New file.
1866
1867         New module 'btowc'.
1868         * lib/wchar.in.h (btowc): New declaration.
1869         * lib/btowc.c: New file.
1870         * m4/btowc.m4: New file.
1871         * modules/btowc: New file.
1872         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
1873         HAVE_BTOWC.
1874         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
1875         * doc/posix-functions/btowc.texi: Document the new module.
1876
1877 2008-12-17  Bruno Haible  <bruno@clisp.org>
1878
1879         New module 'mbsinit'.
1880         * lib/wchar.in.h (mbsinit): New declaration.
1881         * lib/mbsinit.c: New file.
1882         * m4/mbsinit.m4: New file.
1883         * modules/mbsinit: New file.
1884         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
1885         HAVE_MBSINIT.
1886         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
1887         HAVE_MBSINIT.
1888         * doc/posix-functions/mbsinit.texi: Document the new module.
1889
1890 2008-12-16  Bruno Haible  <bruno@clisp.org>
1891
1892         * lib/unistd.in.h: Add comment.
1893         * tests/test-environ.c: Don't include <stdlib.h>.
1894
1895 2008-12-16  Bruno Haible  <bruno@clisp.org>
1896
1897         * lib/parse-duration.h (parse_duration): Document return value
1898         convention.
1899         * lib/parse-duration.c: Include specification header first. Add
1900         comments.
1901         (_): Remove macro.
1902         (parse_year_month_day, parse_hour_minute_second): Move side effects
1903         outside of strchr call.
1904         (parse_non_iso8601): Move side effects outside of isspace call.
1905         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
1906         call.
1907
1908 2008-12-16  Bruno Haible  <bruno@clisp.org>
1909
1910         * tests/test-parse-duration.sh: Produce no output when the test
1911         succeeds.
1912
1913 2008-12-16  Bruno Haible  <bruno@clisp.org>
1914
1915         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
1916         expressions.
1917
1918 2008-12-15  Bruno Haible  <bruno@clisp.org>
1919
1920         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
1921         * doc/glibc-functions/flistxattr.texi: Likewise.
1922         * doc/glibc-functions/fopencookie.texi: Likewise.
1923         * doc/glibc-functions/fremovexattr.texi: Likewise.
1924         * doc/glibc-functions/fsetxattr.texi: Likewise.
1925         * doc/glibc-functions/getxattr.texi: Likewise.
1926         * doc/glibc-functions/lgetxattr.texi: Likewise.
1927         * doc/glibc-functions/listxattr.texi: Likewise.
1928         * doc/glibc-functions/llistxattr.texi: Likewise.
1929         * doc/glibc-functions/lremovexattr.texi: Likewise.
1930         * doc/glibc-functions/lsetxattr.texi: Likewise.
1931         * doc/glibc-functions/removexattr.texi: Likewise.
1932         * doc/glibc-functions/setxattr.texi: Likewise.
1933         * doc/posix-functions/open_memstream.texi: Likewise.
1934
1935 2008-12-15  Eric Blake  <ebb9@byu.net>
1936
1937         Update doc for cygwin 1.7.
1938         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
1939         functions.
1940         * doc/posix-functions/fchmodat.texi: Likewise.
1941         * doc/posix-functions/fchownat.texi: Likewise.
1942         * doc/posix-functions/fdopendir.texi: Likewise.
1943         * doc/posix-functions/fmemopen.texi: Likewise.
1944         * doc/posix-functions/freeaddrinfo.texi: Likewise.
1945         * doc/posix-functions/fstatat.texi: Likewise.
1946         * doc/posix-functions/futimens.texi: Likewise.
1947         * doc/posix-functions/gai_strerror.texi: Likewise.
1948         * doc/posix-functions/getaddrinfo.texi: Likewise.
1949         * doc/posix-functions/getnameinfo.texi: Likewise.
1950         * doc/posix-functions/if_freenameindex.texi: Likewise.
1951         * doc/posix-functions/if_indextoname.texi: Likewise.
1952         * doc/posix-functions/if_nameindex.texi: Likewise.
1953         * doc/posix-functions/if_nametoindex.texi: Likewise.
1954         * doc/posix-functions/insque.texi: Likewise.
1955         * doc/posix-functions/linkat.texi: Likewise.
1956         * doc/posix-functions/llrint.texi: Likewise.
1957         * doc/posix-functions/llrintf.texi: Likewise.
1958         * doc/posix-functions/llrintl.texi: Likewise.
1959         * doc/posix-functions/lockf.texi: Likewise.
1960         * doc/posix-functions/lrintl.texi: Likewise.
1961         * doc/posix-functions/mkdirat.texi: Likewise.
1962         * doc/posix-functions/mkfifoat.texi: Likewise.
1963         * doc/posix-functions/mknodat.texi: Likewise.
1964         * doc/posix-functions/mq_close.texi: Likewise.
1965         * doc/posix-functions/mq_getattr.texi: Likewise.
1966         * doc/posix-functions/mq_notify.texi: Likewise.
1967         * doc/posix-functions/mq_open.texi: Likewise.
1968         * doc/posix-functions/mq_receive.texi: Likewise.
1969         * doc/posix-functions/mq_send.texi: Likewise.
1970         * doc/posix-functions/mq_setattr.texi: Likewise.
1971         * doc/posix-functions/mq_timedreceive.texi: Likewise.
1972         * doc/posix-functions/mq_timedsend.texi: Likewise.
1973         * doc/posix-functions/mq_unlink.texi: Likewise.
1974         * doc/posix-functions/open_memstream.texi: Likewise.
1975         * doc/posix-functions/openat.texi: Likewise.
1976         * doc/posix-functions/posix_fadvise.texi: Likewise.
1977         * doc/posix-functions/posix_fallocate.texi: Likewise.
1978         * doc/posix-functions/posix_madvise.texi: Likewise.
1979         * doc/posix-functions/posix_memalign.texi: Likewise.
1980         * doc/posix-functions/posix_openpt.texi: Likewise.
1981         * doc/posix-functions/readlinkat.texi: Likewise.
1982         * doc/posix-functions/remque.texi: Likewise.
1983         * doc/posix-functions/renameat.texi: Likewise.
1984         * doc/posix-functions/rintl.texi: Likewise.
1985         * doc/posix-functions/sem_unlink.texi: Likewise.
1986         * doc/posix-functions/shm_open.texi: Likewise.
1987         * doc/posix-functions/shm_unlink.texi: Likewise.
1988         * doc/posix-functions/signgam.texi: Likewise.
1989         * doc/posix-functions/sigset.texi: Likewise.
1990         * doc/posix-functions/stpcpy.texi: Likewise.
1991         * doc/posix-functions/stpncpy.texi: Likewise.
1992         * doc/posix-functions/strerror.texi: Likewise.
1993         * doc/posix-functions/strtod.texi: Likewise.
1994         * doc/posix-functions/symlinkat.texi: Likewise.
1995         * doc/posix-functions/unlinkat.texi: Likewise.
1996         * doc/posix-functions/utimensat.texi: Likewise.
1997         * doc/glibc-functions/bindresvport.texi: Likewise.
1998         * doc/glibc-functions/dn_expand.texi: Likewise.
1999         * doc/glibc-functions/exp10.texi: Likewise.
2000         * doc/glibc-functions/exp10f.texi: Likewise.
2001         * doc/glibc-functions/fgetxattr.texi: Likewise.
2002         * doc/glibc-functions/flistxattr.texi: Likewise.
2003         * doc/glibc-functions/fopencookie.texi: Likewise.
2004         * doc/glibc-functions/freeifaddrs.texi: Likewise.
2005         * doc/glibc-functions/fremovexattr.texi: Likewise.
2006         * doc/glibc-functions/fsetxattr.texi: Likewise.
2007         * doc/glibc-functions/getifaddrs.texi: Likewise.
2008         * doc/glibc-functions/getxattr.texi: Likewise.
2009         * doc/glibc-functions/lgetxattr.texi: Likewise.
2010         * doc/glibc-functions/listxattr.texi: Likewise.
2011         * doc/glibc-functions/llistxattr.texi: Likewise.
2012         * doc/glibc-functions/lremovexattr.texi: Likewise.
2013         * doc/glibc-functions/lsetxattr.texi: Likewise.
2014         * doc/glibc-functions/pow10.texi: Likewise.
2015         * doc/glibc-functions/pow10f.texi: Likewise.
2016         * doc/glibc-functions/rcmd_af.texi: Likewise.
2017         * doc/glibc-functions/removexattr.texi: Likewise.
2018         * doc/glibc-functions/res_init.texi: Likewise.
2019         * doc/glibc-functions/res_mkquery.texi: Likewise.
2020         * doc/glibc-functions/res_query.texi: Likewise.
2021         * doc/glibc-functions/res_querydomain.texi: Likewise.
2022         * doc/glibc-functions/res_send.texi: Likewise.
2023         * doc/glibc-functions/rresvport_af.texi: Likewise.
2024         * doc/glibc-functions/setxattr.texi: Likewise.
2025         * doc/glibc-functions/strcasestr.texi: Likewise.
2026
2027 2008-12-15  Bruno Haible  <bruno@clisp.org>
2028
2029         Fix compilation error on OSF/1 4.0.
2030         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
2031         <sys/time.h>, simply delegate to the system header.
2032         Reported by Daniel Richard G. <oss@teragram.com>.
2033
2034 2008-12-15  Bruno Haible  <bruno@clisp.org>
2035
2036         * doc/posix-functions/openat.texi: Mention the 'openat' module.
2037         * doc/posix-functions/fchmodat.texi: Likewise.
2038         * doc/posix-functions/fchownat.texi: Likewise.
2039         * doc/posix-functions/fdopendir.texi: Likewise.
2040         * doc/posix-functions/fstatat.texi: Likewise.
2041         * doc/posix-functions/mkdirat.texi: Likewise.
2042         * doc/posix-functions/unlinkat.texi: Likewise.
2043
2044 2008-12-14  Bruno Haible  <bruno@clisp.org>
2045
2046         Update doc for POSIX:2008.
2047         * doc/posix-functions/faccessat.texi: New file.
2048         * doc/posix-functions/fchmodat.texi: New file.
2049         * doc/posix-functions/fchownat.texi: New file.
2050         * doc/posix-functions/fdopendir.texi: New file.
2051         * doc/posix-functions/fstatat.texi: New file.
2052         * doc/posix-functions/futimens.texi: New file.
2053         * doc/posix-functions/linkat.texi: New file.
2054         * doc/posix-functions/mkdirat.texi: New file.
2055         * doc/posix-functions/mkfifoat.texi: New file.
2056         * doc/posix-functions/mknodat.texi: New file.
2057         * doc/posix-functions/open_wmemstream.texi: New file.
2058         * doc/posix-functions/openat.texi: New file.
2059         * doc/posix-functions/psiginfo.texi: New file.
2060         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
2061         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
2062         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
2063         * doc/posix-functions/readlinkat.texi: New file.
2064         * doc/posix-functions/renameat.texi: New file.
2065         * doc/posix-functions/strerror_l.texi: New file.
2066         * doc/posix-functions/symlinkat.texi: New file.
2067         * doc/posix-functions/unlinkat.texi: New file.
2068         * doc/posix-functions/utimensat.texi: New file.
2069         * doc/gnulib.texi (Function Substitutes): Add these subsections.
2070
2071 2008-12-14  Bruno Haible  <bruno@clisp.org>
2072
2073         Update doc for POSIX:2008.
2074         * doc/posix-functions/alphasort.texi: Renamed from
2075         doc/glibc-functions/alphasort.texi.
2076         * doc/posix-functions/dirfd.texi: Renamed from
2077         doc/glibc-functions/dirfd.texi.
2078         * doc/posix-functions/dprintf.texi: Renamed from
2079         doc/glibc-functions/dprintf.texi.
2080         * doc/posix-functions/duplocale.texi: Renamed from
2081         doc/glibc-functions/duplocale.texi.
2082         * doc/posix-functions/fexecve.texi: Renamed from
2083         doc/glibc-functions/fexecve.texi.
2084         * doc/posix-functions/fmemopen.texi: Renamed from
2085         doc/glibc-functions/fmemopen.texi.
2086         * doc/posix-functions/freelocale.texi: Renamed from
2087         doc/glibc-functions/freelocale.texi.
2088         * doc/posix-functions/getdate_err.texi: Renamed from
2089         doc/glibc-functions/getdate_err.texi.
2090         * doc/posix-functions/isalnum_l.texi: Renamed from
2091         doc/glibc-functions/isalnum_l.texi.
2092         * doc/posix-functions/isalpha_l.texi: Renamed from
2093         doc/glibc-functions/isalpha_l.texi.
2094         * doc/posix-functions/isblank_l.texi: Renamed from
2095         doc/glibc-functions/isblank_l.texi.
2096         * doc/posix-functions/iscntrl_l.texi: Renamed from
2097         doc/glibc-functions/iscntrl_l.texi.
2098         * doc/posix-functions/isdigit_l.texi: Renamed from
2099         doc/glibc-functions/isdigit_l.texi.
2100         * doc/posix-functions/isgraph_l.texi: Renamed from
2101         doc/glibc-functions/isgraph_l.texi.
2102         * doc/posix-functions/islower_l.texi: Renamed from
2103         doc/glibc-functions/islower_l.texi.
2104         * doc/posix-functions/isprint_l.texi: Renamed from
2105         doc/glibc-functions/isprint_l.texi.
2106         * doc/posix-functions/ispunct_l.texi: Renamed from
2107         doc/glibc-functions/ispunct_l.texi.
2108         * doc/posix-functions/isspace_l.texi: Renamed from
2109         doc/glibc-functions/isspace_l.texi.
2110         * doc/posix-functions/isupper_l.texi: Renamed from
2111         doc/glibc-functions/isupper_l.texi.
2112         * doc/posix-functions/iswalnum_l.texi: Renamed from
2113         doc/glibc-functions/iswalnum_l.texi.
2114         * doc/posix-functions/iswalpha_l.texi: Renamed from
2115         doc/glibc-functions/iswalpha_l.texi.
2116         * doc/posix-functions/iswblank_l.texi: Renamed from
2117         doc/glibc-functions/iswblank_l.texi.
2118         * doc/posix-functions/iswcntrl_l.texi: Renamed from
2119         doc/glibc-functions/iswcntrl_l.texi.
2120         * doc/posix-functions/iswctype_l.texi: Renamed from
2121         doc/glibc-functions/iswctype_l.texi.
2122         * doc/posix-functions/iswdigit_l.texi: Renamed from
2123         doc/glibc-functions/iswdigit_l.texi.
2124         * doc/posix-functions/iswgraph_l.texi: Renamed from
2125         doc/glibc-functions/iswgraph_l.texi.
2126         * doc/posix-functions/iswlower_l.texi: Renamed from
2127         doc/glibc-functions/iswlower_l.texi.
2128         * doc/posix-functions/iswprint_l.texi: Renamed from
2129         doc/glibc-functions/iswprint_l.texi.
2130         * doc/posix-functions/iswpunct_l.texi: Renamed from
2131         doc/glibc-functions/iswpunct_l.texi.
2132         * doc/posix-functions/iswspace_l.texi: Renamed from
2133         doc/glibc-functions/iswspace_l.texi.
2134         * doc/posix-functions/iswupper_l.texi: Renamed from
2135         doc/glibc-functions/iswupper_l.texi.
2136         * doc/posix-functions/iswxdigit_l.texi: Renamed from
2137         doc/glibc-functions/iswxdigit_l.texi.
2138         * doc/posix-functions/isxdigit_l.texi: Renamed from
2139         doc/glibc-functions/isxdigit_l.texi.
2140         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
2141         doc/glibc-functions/mbsnrtowcs.texi.
2142         * doc/posix-functions/mkdtemp.texi: Renamed from
2143         doc/glibc-functions/mkdtemp.texi.
2144         * doc/posix-functions/newlocale.texi: Renamed from
2145         doc/glibc-functions/newlocale.texi.
2146         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
2147         doc/glibc-functions/nl_langinfo_l.texi.
2148         * doc/posix-functions/open_memstream.texi: Renamed from
2149         doc/glibc-functions/open_memstream.texi.
2150         * doc/posix-functions/opterr.texi: Renamed from
2151         doc/glibc-functions/opterr.texi.
2152         * doc/posix-functions/optind.texi: Renamed from
2153         doc/glibc-functions/optind.texi.
2154         * doc/posix-functions/optopt.texi: Renamed from
2155         doc/glibc-functions/optopt.texi.
2156         * doc/posix-functions/psignal.texi: Renamed from
2157         doc/glibc-functions/psignal.texi.
2158         * doc/posix-functions/scandir.texi: Renamed from
2159         doc/glibc-functions/scandir.texi.
2160         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
2161         doc/glibc-functions/sched_get_priority_min.texi.
2162         * doc/posix-functions/signgam.texi: Renamed from
2163         doc/glibc-functions/signgam.texi.
2164         * doc/posix-functions/stpcpy.texi: Renamed from
2165         doc/glibc-functions/stpcpy.texi.
2166         * doc/posix-functions/stpncpy.texi: Renamed from
2167         doc/glibc-functions/stpncpy.texi.
2168         * doc/posix-functions/strcasecmp_l.texi: Renamed from
2169         doc/glibc-functions/strcasecmp_l.texi.
2170         * doc/posix-functions/strcoll_l.texi: Renamed from
2171         doc/glibc-functions/strcoll_l.texi.
2172         * doc/posix-functions/strfmon_l.texi: Renamed from
2173         doc/glibc-functions/strfmon_l.texi.
2174         * doc/posix-functions/strftime_l.texi: Renamed from
2175         doc/glibc-functions/strftime_l.texi.
2176         * doc/posix-functions/strncasecmp_l.texi: Renamed from
2177         doc/glibc-functions/strncasecmp_l.texi.
2178         * doc/posix-functions/strndup.texi: Renamed from
2179         doc/glibc-functions/strndup.texi.
2180         * doc/posix-functions/strnlen.texi: Renamed from
2181         doc/glibc-functions/strnlen.texi.
2182         * doc/posix-functions/strsignal.texi: Renamed from
2183         doc/glibc-functions/strsignal.texi.
2184         * doc/posix-functions/strxfrm_l.texi: Renamed from
2185         doc/glibc-functions/strxfrm_l.texi.
2186         * doc/posix-functions/timer_gettime.texi: Renamed from
2187         doc/glibc-functions/timer_gettime.texi.
2188         * doc/posix-functions/tolower_l.texi: Renamed from
2189         doc/glibc-functions/tolower_l.texi.
2190         * doc/posix-functions/toupper_l.texi: Renamed from
2191         doc/glibc-functions/toupper_l.texi.
2192         * doc/posix-functions/towctrans_l.texi: Renamed from
2193         doc/glibc-functions/towctrans_l.texi.
2194         * doc/posix-functions/towlower_l.texi: Renamed from
2195         doc/glibc-functions/towlower_l.texi.
2196         * doc/posix-functions/towupper_l.texi: Renamed from
2197         doc/glibc-functions/towupper_l.texi.
2198         * doc/posix-functions/uselocale.texi: Renamed from
2199         doc/glibc-functions/uselocale.texi.
2200         * doc/posix-functions/vdprintf.texi: Renamed from
2201         doc/glibc-functions/vdprintf.texi.
2202         * doc/posix-functions/wcpcpy.texi:
2203         Renamed from doc/glibc-functions/wcpcpy.texi.
2204         * doc/posix-functions/wcpncpy.texi: Renamed from
2205         doc/glibc-functions/wcpncpy.texi.
2206         * doc/posix-functions/wcscasecmp.texi: Renamed from
2207         doc/glibc-functions/wcscasecmp.texi.
2208         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
2209         doc/glibc-functions/wcscasecmp_l.texi.
2210         * doc/posix-functions/wcscoll_l.texi: Renamed from
2211         doc/glibc-functions/wcscoll_l.texi.
2212         * doc/posix-functions/wcsdup.texi: Renamed from
2213         doc/glibc-functions/wcsdup.texi.
2214         * doc/posix-functions/wcsncasecmp.texi: Renamed from
2215         doc/glibc-functions/wcsncasecmp.texi.
2216         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
2217         doc/glibc-functions/wcsncasecmp_l.texi.
2218         * doc/posix-functions/wcsnlen.texi: Renamed from
2219         doc/glibc-functions/wcsnlen.texi.
2220         * doc/posix-functions/wcsnrtombs.texi: Renamed from
2221         doc/glibc-functions/wcsnrtombs.texi.
2222         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
2223         doc/glibc-functions/wcsxfrm_l.texi.
2224         * doc/posix-functions/wctrans_l.texi: Renamed from
2225         doc/glibc-functions/wctrans_l.texi.
2226         * doc/posix-functions/wctype_l.texi: Renamed from
2227         doc/glibc-functions/wctype_l.texi.
2228         * doc/gnulib.texi (Function Substitutes): Add these subsections.
2229         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
2230         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
2231         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
2232         these subsections.
2233         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
2234         Remove sections.
2235
2236 2008-12-14  Bruno Haible  <bruno@clisp.org>
2237
2238         Update doc for POSIX:2008.
2239         * doc/posix-functions/*.texi: Update URL of POSIX specification.
2240
2241 2008-12-14  Bruno Haible  <bruno@clisp.org>
2242
2243         Update doc for POSIX:2008.
2244         * doc/pastposix-functions/bcmp.texi: Renamed from
2245         doc/posix-functions/bcmp.texi.
2246         * doc/pastposix-functions/bcopy.texi: Renamed from
2247         doc/posix-functions/bcopy.texi.
2248         * doc/pastposix-functions/bsd_signal.texi: Renamed from
2249         doc/posix-functions/bsd_signal.texi.
2250         * doc/pastposix-functions/bzero.texi: Renamed from
2251         doc/posix-functions/bzero.texi.
2252         * doc/pastposix-functions/ecvt.texi: Renamed from
2253         doc/posix-functions/ecvt.texi.
2254         * doc/pastposix-functions/fcvt.texi: Renamed from
2255         doc/posix-functions/fcvt.texi.
2256         * doc/pastposix-functions/ftime.texi: Renamed from
2257         doc/posix-functions/ftime.texi.
2258         * doc/pastposix-functions/gcvt.texi: Renamed from
2259         doc/posix-functions/gcvt.texi.
2260         * doc/pastposix-functions/getcontext.texi: Renamed from
2261         doc/posix-functions/getcontext.texi.
2262         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
2263         doc/posix-functions/gethostbyaddr.texi.
2264         * doc/pastposix-functions/gethostbyname.texi: Renamed from
2265         doc/posix-functions/gethostbyname.texi.
2266         * doc/pastposix-functions/getwd.texi: Renamed from
2267         doc/posix-functions/getwd.texi.
2268         * doc/pastposix-functions/h_errno.texi: Renamed from
2269         doc/posix-functions/h_errno.texi.
2270         * doc/pastposix-functions/index.texi: Renamed from
2271         doc/posix-functions/index.texi.
2272         * doc/pastposix-functions/makecontext.texi: Renamed from
2273         doc/posix-functions/makecontext.texi.
2274         * doc/pastposix-functions/mktemp.texi: Renamed from
2275         doc/posix-functions/mktemp.texi.
2276         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
2277         doc/posix-functions/pthread_attr_getstackaddr.texi.
2278         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
2279         doc/posix-functions/pthread_attr_setstackaddr.texi.
2280         * doc/pastposix-functions/rindex.texi: Renamed from
2281         doc/posix-functions/rindex.texi.
2282         * doc/pastposix-functions/scalb.texi: Renamed from
2283         doc/posix-functions/scalb.texi.
2284         * doc/pastposix-functions/setcontext.texi: Renamed from
2285         doc/posix-functions/setcontext.texi.
2286         * doc/pastposix-functions/swapcontext.texi: Renamed from
2287         doc/posix-functions/swapcontext.texi.
2288         * doc/pastposix-functions/ualarm.texi: Renamed from
2289         doc/posix-functions/ualarm.texi.
2290         * doc/pastposix-functions/usleep.texi: Renamed from
2291         doc/posix-functions/usleep.texi.
2292         * doc/pastposix-functions/vfork.texi: Renamed from
2293         doc/posix-functions/vfork.texi.
2294         * doc/pastposix-functions/wcswcs.texi: Renamed from
2295         doc/posix-functions/wcswcs.texi.
2296         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
2297         (Function Substitutes): Update.
2298
2299 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2300
2301         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
2302         m4/strerror.m4.
2303
2304 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2305             Bruno Haible  <bruno@clisp.org>
2306
2307         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
2308
2309 2008-12-13  Bruno Haible  <bruno@clisp.org>
2310
2311         * modules/strtoull (Depends-on): Remove unistd.
2312
2313 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2314
2315         * modules/strtoull (Depends-on): Add stdlib.
2316
2317 2008-12-11  Simon Josefsson  <simon@josefsson.org>
2318
2319         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
2320
2321 2008-12-10  Jim Meyering  <meyering@redhat.com>
2322
2323         gl_ASSERT: don't say assertions are disabled when they're not
2324         * m4/assert.m4 (gl_ASSERT): Do not make configure report
2325         "checking whether to enable assertions... no", when they are in
2326         fact enabled.  This is solely a bug in the output of configure.
2327         In spite of saying "no", NDEBUG was not defined in that case.
2328         Also, as noted by Eric Blake, leave assertions enabled upon
2329         --enable-assert=INVALID.
2330
2331 2008-12-10  Bruno Haible  <bruno@clisp.org>
2332
2333         Change MODULES.html to refer to POSIX:2008 where possible.
2334         * MODULES.html.sh (POSIX2008_URL): New variable.
2335         (posix_headers): Remove sys/timeb, ucontext.
2336         (posix2001_headers): New variable.
2337         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
2338         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
2339         index, makecontext, mktemp, pthread_attr_getstackaddr,
2340         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
2341         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
2342         (posix2001_functions): New variable.
2343         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
2344         otherwise.
2345
2346 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2347
2348         add missing include to parse-duration.c
2349         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
2350         * modules/parse-duration (Depends-on): Add xalloc.
2351
2352         fix sed script reading maint.mk
2353         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
2354         (syntax-check-rules): Use it.
2355
2356 2008-12-09  Bruno Haible  <bruno@clisp.org>
2357
2358         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
2359         MacOS X 10.4/PowerPC.
2360         Reported by Simon Josefsson.
2361
2362 2008-12-08  Jim Meyering  <meyering@redhat.com>
2363
2364         work around mingw's lack of some S_IF definitions
2365         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
2366         Reported by Simon Josefsson.
2367
2368 2008-12-08  Bruno Haible  <bruno@clisp.org>
2369
2370         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
2371         applied to variables. Needed on MacOS X 10.4/PowerPC.
2372         Reported by Simon Josefsson.
2373
2374 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
2375         and Eric Blake  <ebb9@byu.net>
2376
2377         assert: honor --enable-assert
2378         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
2379         order to honor --enable-assert, rather than treating it as a
2380         synonym for --disable-assert.
2381
2382 2008-12-08  Jim Meyering  <meyering@redhat.com>
2383
2384         * lib/posixtm.c: Remove now-useless declaration of mktime.
2385
2386         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
2387
2388 2008-12-07  Bruno Haible  <bruno@clisp.org>
2389
2390         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
2391         test_once): Mark functions as static.
2392         * tests/test-tls.c (test_tls): Likewise.
2393
2394 2008-12-07  Bruno Haible  <bruno@clisp.org>
2395
2396         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
2397         iconv_register_autodetect.
2398
2399 2008-12-07  Jim Meyering  <meyering@redhat.com>
2400
2401         posixtm.c: avoid a warning
2402         * lib/posixtm.c (posixtime): Don't initialize tm0.
2403         It's no longer needed to placate gcc4's -Wuninitialized,
2404         and the attempt to placate would elicit a new warning.
2405
2406         unicodeio.c: mark unused parameters
2407         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
2408         (fallback_failure_callback): Likewise.
2409
2410 2008-12-07  Bruno Haible  <bruno@clisp.org>
2411
2412         * gnulib-tool (func_create_testdir): When building the tests
2413         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
2414         Reported by Simon Josefsson.
2415
2416 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2417
2418         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
2419
2420 2008-12-06  Bruno Haible  <bruno@clisp.org>
2421
2422         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
2423         Suggested by Eric Blake.
2424
2425 2008-12-06  Bruno Haible  <bruno@clisp.org>
2426
2427         Fix a c-stack test failure on MacOS X.
2428         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
2429         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
2430         handler for SIGBUS as well.
2431         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
2432         install a signal handler for SIGBUS as well.
2433         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
2434
2435 2008-12-06  Bruno Haible  <bruno@clisp.org>
2436
2437         Advocacy documentation.
2438         * doc/gnulib-intro.texi (Benefits): New section.
2439         * doc/gnulib.texi: Update.
2440
2441 2008-12-06  Bruno Haible  <bruno@clisp.org>
2442
2443         Document the 'manywarnings' module.
2444         * doc/manywarnings.texi: New file.
2445         * doc/gnulib.texi: Include it.
2446
2447 2008-12-05  Eric Blake  <ebb9@byu.net>
2448
2449         tests: silence some gcc warnings
2450         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
2451         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
2452         type mismatches.
2453
2454 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2455             Bruno Haible  <bruno@clisp.org>
2456
2457         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
2458
2459 2008-11-29  Jim Meyering  <meyering@redhat.com>
2460
2461         unicodeio.c: mark unused parameters
2462         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
2463         (fallback_failure_callback): Likewise.
2464
2465         fts: fix a thinko
2466         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
2467         (set_stat_type): Return S_IF*-valued "type" directly.
2468         Prompted by James Youngman's spotting a related bug.
2469         Confirmed by further testing through find.
2470
2471         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
2472         * lib/fts.c (D_TYPE): Define.
2473         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
2474         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
2475         (s_ifmt_shift_bits): New function.
2476         (set_stat_type): New function.
2477         (fts_build): When not calling fts_stat, call set_stat_type
2478         to propagate dirent.d_type info to fts_read caller.
2479         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
2480         fts_statp->st_mode type information may be valid.
2481
2482 2008-11-28  Simon Josefsson  <simon@josefsson.org>
2483
2484         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
2485         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
2486         <sds@gnu.org>.
2487
2488 2008-11-20  Bruno Haible  <bruno@clisp.org>
2489
2490         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
2491         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
2492         INCLUDE_NEXT.
2493         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
2494         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
2495         * modules/math (Makefile.am): Substitute
2496         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
2497         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
2498
2499 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
2500             Bruno Haible  <bruno@clisp.org>
2501
2502         * lib/stdint.in.h: Define all type macros so that their expansion is
2503         a single typedef'ed token. Fixes a compilation failure in Boost which
2504         does "using ::int8_t;".
2505
2506 2008-11-18  Simon Josefsson  <simon@josefsson.org>
2507
2508         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
2509         gl_MANYWARN_ALL_GCC.
2510         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
2511         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
2512         * modules/manywarnings: New file.
2513         * MODULES.html.sh: Mention manywarnings module.
2514
2515 2008-11-18  Bruno Haible  <bruno@clisp.org>
2516
2517         * doc/gnulib-tool.texi (Unit tests): New section.
2518
2519 2008-11-18  Simon Josefsson  <simon@josefsson.org>
2520
2521         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
2522         paths like 'lib/po/foo.po'.
2523
2524 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2525
2526         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
2527         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
2528
2529 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2530
2531         * m4/warnings.m4: Use CPPFLAGS to really check whether the
2532         parameter works.
2533
2534 2008-11-17  Simon Josefsson  <simon@josefsson.org>
2535
2536         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
2537
2538 2008-11-17  Bruce Korb  <bkorb@gnu.org>
2539
2540         * modules/parse-duration-tests: New file.
2541         * tests/test-parse-duration.sh: New file.
2542         * tests/test-parse-duration.c: New file.
2543
2544         New module 'parse-duration'.
2545         * lib/parse-duration.h: New file.
2546         * lib/parse-duration.c: New file.
2547         * modules/parse-duration: New file.
2548
2549 2008-11-17  Bruno Haible  <bruno@clisp.org>
2550
2551         * tests/test-select-out.sh: Comment out the first pipe test.
2552         Reported by Simon Josefsson.
2553
2554 2008-11-17  Bruno Haible  <bruno@clisp.org>
2555
2556         * modules/getaddrinfo (Depends-on): Add servent, hostent.
2557         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
2558         gl_HOSTENT.
2559
2560 2008-11-17  Bruno Haible  <bruno@clisp.org>
2561
2562         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
2563         -lnetwork and -lnet. Needed for Haiku and BeOS.
2564
2565 2008-11-16  Bruno Haible  <bruno@clisp.org>
2566
2567         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
2568
2569 2008-11-16  Bruno Haible  <bruno@clisp.org>
2570
2571         Avoid test failure on Haiku.
2572         * tests/test-fsync.c: Include <errno.h>.
2573         (main): Don't require that fsync (0) fails.
2574
2575 2008-11-15  Bruno Haible  <bruno@clisp.org>
2576
2577         New module 'hostent'.
2578         * modules/hostent: New file.
2579         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
2580
2581 2008-11-15  Bruno Haible  <bruno@clisp.org>
2582
2583         New module 'servent'.
2584         * modules/servent: New file.
2585         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
2586
2587 2008-11-15  Bruno Haible  <bruno@clisp.org>
2588
2589         Avoid generating same test program with two different rules.
2590         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
2591         test-frexp to test-frexp-nolibm.
2592         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
2593         test-frexpl to test-frexpl-nolibm.
2594
2595 2008-11-15  Bruno Haible  <bruno@clisp.org>
2596
2597         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
2598         $(FREXPL_LIBM).
2599
2600 2008-11-15  Bruno Haible  <bruno@clisp.org>
2601
2602         * lib/netdb.in.h: Activate the definitions also when the system's
2603         <netdb.h> has 'struct addrinfo'.
2604         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
2605         EAI_OVERFLOW or AI_NUMERICSERV.
2606         * doc/posix-headers/netdb.texi: Document the problem.
2607
2608 2008-11-15  Bruno Haible  <bruno@clisp.org>
2609
2610         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
2611
2612         Make the 'sched' module work on platforms where <sched.h> exists but
2613         is incomplete (such as Haiku).
2614         * lib/sched.in.h; Include the system's <sched.h> if it exists.
2615         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
2616         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
2617         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
2618         HAVE_STRUCT_SCHED_PARAM.
2619         * modules/sched (Depends-on): Add include_next.
2620         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
2621         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
2622         * doc/posix-headers/sched.texi: Document the issue.
2623
2624 2008-11-13  Jim Meyering  <meyering@redhat.com>
2625
2626         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
2627         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
2628         test would fail due to the difference in the Report bugs to ...
2629         line.  The expected address is empty, "<>", while the actual
2630         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
2631
2632 2008-11-12  Bruno Haible  <bruno@clisp.org>
2633
2634         lstat: don't compile lstat.c on systems lacking lstat
2635         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
2636         which don't have lstat; this is handled by lib/sys_stat.in.h already.
2637         Reported by Daniel P. Berrange via Jim Meyering.
2638
2639 2008-11-12  Jim Meyering  <meyering@redhat.com>
2640
2641         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
2642
2643 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2644
2645         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
2646         instead.
2647
2648 2008-11-12  Bruno Haible  <bruno@clisp.org>
2649
2650         * lib/unicodeio.c: Include unistr.h.
2651         (utf8_wctomb): Remove function.
2652         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
2653
2654 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2655
2656         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
2657         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
2658         <bruno@clisp.org>.
2659         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
2660
2661 2008-11-12  Simon Josefsson  <simon@josefsson.org>
2662
2663         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
2664         * doc/gnulib.texi: Add section for warnings.
2665
2666 2008-11-11  Bruno Haible  <bruno@clisp.org>
2667
2668         * lib/sockets.h: Add a comment.
2669
2670 2008-11-11  Karl Berry  <karl@gnu.org>
2671
2672         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
2673
2674 2008-11-11  Eric Blake  <ebb9@byu.net>
2675
2676         fdl.texi: avoid git symlinks
2677         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
2678
2679 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2680
2681         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
2682
2683 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2684
2685         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
2686         (gl_WARN_ADD): Substitute $2 if literal.
2687
2688 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2689
2690         * m4/warning.m4: Remove.
2691
2692 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
2693
2694         * m4/warnings.m4: Almost complete rewrite. :-)
2695
2696 2008-11-10  Simon Josefsson  <simon@josefsson.org>
2697
2698         * modules/warnings: New module.
2699         * m4/warnings.m4: New file.
2700         * MODULES.html.sh: Mention warnings module.
2701         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
2702         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2703
2704 2008-11-10  Eric Blake  <ebb9@byu.net>
2705
2706         fdl.texi: make a symlink to the latest version
2707         * doc/standards.texi: Revert today's earlier change.
2708         * doc/fdl-1.2.texi: Rename from old fdl.texi...
2709         * doc/fdl.texi: ...and replace this with a symlink to the newer
2710         fdl-1.3.texi.
2711
2712 2008-11-10  Bruno Haible  <bruno@clisp.org>
2713
2714         * tests/test-select-fd.c (main): Accept the result file name as fourth
2715         argument.
2716         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
2717         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
2718
2719 2008-11-10  Bruno Haible  <bruno@clisp.org>
2720
2721         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
2722         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
2723         as autoconf-substituted macros.
2724         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
2725         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
2726         gl_NETDB_H_DEFAULTS. Set these variables.
2727         * modules/netdb (Makefile.am): Substitute these variables.
2728
2729 2008-11-10  Eric Blake  <ebb9@byu.net>
2730
2731         standards.texi: include correct file for FDL 1.3
2732         * doc/standards.texi (GNU Free Documentation License): Change
2733         include file to pull in FDL 1.3, not 1.2.
2734
2735         fdl.texi: revert accidental change to license
2736         * doc/fdl.texi: This is FDL 1.2, not 1.3.
2737
2738 2008-11-10  Bruno Haible  <bruno@clisp.org>
2739
2740         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
2741         cross-compiling guesses also when the native compile gives no result.
2742
2743 2008-11-10  Bruno Haible  <bruno@clisp.org>
2744
2745         * lib/spawni.c (__spawni): Force variable into the stack.
2746
2747 2008-11-10  Bruno Haible  <bruno@clisp.org>
2748
2749         Add support for Haiku.
2750         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
2751         glibc and BeOS, but also on Haiku.
2752         * lib/fpurge.c (fpurge): Likewise.
2753         * lib/freadable.c (freadable): Likewise.
2754         * lib/freadahead.c (freadahead): Likewise.
2755         * lib/freading.c (freading): Likewise.
2756         * lib/freadptr.c (freadptr): Likewise.
2757         * lib/freadseek.c (freadptrinc): Likewise.
2758         * lib/fseeko.c (rpl_fseeko): Likewise.
2759         * lib/fseterr.c (fseterr): Likewise.
2760         * lib/fwritable.c (fwritable): Likewise.
2761         * lib/fwriting.c (fwriting): Likewise.
2762         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
2763
2764 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
2765
2766         * lib/config.charset: Treat Haiku like BeOS.
2767
2768 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
2769
2770         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
2771         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
2772
2773 2008-11-08  Bruno Haible  <bruno@clisp.org>
2774
2775         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
2776         AC_CACHE_CHECK.
2777
2778 2008-11-08  Bruno Haible  <bruno@clisp.org>
2779
2780         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
2781
2782 2008-11-08  Bruno Haible  <bruno@clisp.org>
2783
2784         * tests/test-select-fd.c: New file.
2785         * tests/test-select-in.sh: New file.
2786         * tests/test-select-out.sh: New file.
2787         * tests/test-select-stdin.c: New file.
2788         * modules/select-tests (Files): Add the new files.
2789         (Depends-on): Add gettimeofday.
2790         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
2791         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
2792         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
2793
2794 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
2795             Bruno Haible  <bruno@clisp.org>
2796
2797         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
2798
2799 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
2800
2801         * build-aux/pmccabe2html: Added support for C++ source files.
2802
2803 2008-11-05  Ben Pfaff  <blp@gnu.org>
2804
2805         Fix lib/close.c build on Windows.
2806         * modules/close (Files): Add lib/w32sock.h.
2807
2808 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
2809
2810         Accept Bison's NEWS format.
2811         * build-aux/announce-gen (print_news_deltas): Tweak
2812         $re_prefix.
2813
2814 2008-11-04  Bruno Haible  <bruno@clisp.org>
2815
2816         * modules/random_r (Maintainer): Add glibc.
2817
2818 2008-11-04  Simon Josefsson  <simon@josefsson.org>
2819
2820         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
2821         by karl@freefriends.org (Karl Berry).
2822         * doc/alloca.texi: Likewise.
2823         * doc/c-ctype.texi: Likewise.
2824         * doc/c-strcase.texi: Likewise.
2825         * doc/c-strcaseeq.texi: Likewise.
2826         * doc/c-strcasestr.texi: Likewise.
2827         * doc/c-strstr.texi: Likewise.
2828         * doc/c-strtod.texi: Likewise.
2829         * doc/c-strtold.texi: Likewise.
2830         * doc/ctime.texi: Likewise.
2831         * doc/error.texi: Likewise.
2832         * doc/fdl.texi: Likewise.
2833         * doc/gcd.texi: Likewise.
2834         * doc/getdate.texi: Likewise.
2835         * doc/gnulib-intro.texi: Likewise.
2836         * doc/gnulib-tool.texi: Likewise.
2837         * doc/gnulib.texi: Likewise.
2838         * doc/inet_ntoa.texi: Likewise.
2839         * doc/maintain.texi: Likewise.
2840         * doc/make-stds.texi: Likewise.
2841         * doc/quote.texi: Likewise.
2842         * doc/regexprops-generic.texi: Likewise.
2843         * doc/standards.texi: Likewise.
2844         * doc/verify.texi: Likewise.
2845         * doc/visibility.texi: Likewise.
2846         * doc/gnulib.texi (GNU Free Documentation License): Include
2847         fdl-1.3.texi instead of fdl.texi.
2848
2849 2008-11-04  Simon Josefsson  <simon@josefsson.org>
2850
2851         * doc/fdl-1.3.texi: New file, from
2852         <http://www.gnu.org/licenses/fdl-1.3.texi>.
2853         * modules/fdl-1.3: Add.
2854         * MODULES.html.sh: Add fdl-1.3.
2855
2856 2008-11-03  Bruno Haible  <bruno@clisp.org>
2857
2858         Make determination of absolute name of header file work with AIX xlc.
2859         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
2860         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
2861         preprocessing.
2862         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2863         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2864
2865 2008-11-03  Simon Josefsson  <simon@josefsson.org>
2866
2867         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
2868         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
2869         <ludo@gnu.org>.
2870
2871 2008-11-02  Bruno Haible  <bruno@clisp.org>
2872
2873         Mark 'strpbrk' obsolete.
2874         * modules/strpbrk (Status, Notice): New sections.
2875         * modules/strtok_r (Depends-on): Add strpbrk.
2876
2877 2008-11-02  Bruno Haible  <bruno@clisp.org>
2878
2879         Mark 'strdup' obsolete.
2880         * modules/strdup (Status, Notice): New sections.
2881         * modules/findprog (Depends-on): Add strdup.
2882         * modules/getaddrinfo (Depends-on): Likewise.
2883         * modules/localename (Depends-on): Likewise.
2884         * modules/relocatable-lib (Depends-on): Likewise.
2885         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
2886         * modules/relocatable-prog (Depends-on): Likewise.
2887         * modules/trim (Depends-on): Likewise.
2888         * modules/unictype/gen-ctype (Depends-on): Likewise.
2889         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
2890
2891 2008-11-02  Bruno Haible  <bruno@clisp.org>
2892
2893         Mark 'strcspn' obsolete.
2894         * modules/strcspn (Status, Notice): New sections.
2895
2896 2008-11-02  Bruno Haible  <bruno@clisp.org>
2897
2898         Mark 'rmdir' obsolete.
2899         * modules/rmdir (Status, Notice): New sections.
2900         * modules/clean-temp (Depends-on): Add rmdir.
2901         * modules/openat (Depends-on): Likewise.
2902
2903 2008-11-02  Bruno Haible  <bruno@clisp.org>
2904
2905         Mark 'raise' obsolete.
2906         * modules/raise (Status, Notice): New sections.
2907         (Include): Specify <signal.h>.
2908         * modules/stdio (Depends-on): Add raise.
2909         * modules/write (Depends-on): Likewise.
2910
2911 2008-11-02  Bruno Haible  <bruno@clisp.org>
2912
2913         Mark 'memset' obsolete.
2914         * modules/memset (Status, Notice): New sections.
2915
2916 2008-11-02  Bruno Haible  <bruno@clisp.org>
2917
2918         Mark 'memmove' obsolete.
2919         * modules/memmove (Status, Notice): New sections.
2920         * modules/argp (Depends-on): Add memmove.
2921         * modules/argz (Depends-on): Likewise.
2922         * modules/canonicalize (Depends-on): Likewise.
2923         * modules/canonicalize-lgpl (Depends-on): Likewise.
2924         * modules/fts (Depends-on): Likewise.
2925         * modules/getcwd (Depends-on): Likewise.
2926         * modules/human (Depends-on): Likewise.
2927         * modules/regex (Depends-on): Likewise.
2928         * modules/striconveh (Depends-on): Likewise.
2929         * modules/trim (Depends-on): Likewise.
2930         * modules/unistr/u8-move (Depends-on): Likewise.
2931         * modules/unistr/u16-move (Depends-on): Likewise.
2932         * modules/unistr/u32-move (Depends-on): Likewise.
2933
2934 2008-11-02  Bruno Haible  <bruno@clisp.org>
2935
2936         Mark 'memcpy' obsolete.
2937         * modules/memcpy (Status, Notice): New sections.
2938
2939 2008-11-02  Bruno Haible  <bruno@clisp.org>
2940
2941         Mark 'memcmp' obsolete.
2942         * modules/memcmp (Status, Notice): New sections.
2943         * modules/argmatch (Depends-on): Add memchr.
2944         * modules/backupfile (Depends-on): Likewise.
2945         * modules/c-strcasestr (Depends-on): Likewise.
2946         * modules/crypto/des (Depends-on): Likewise.
2947         * modules/csharpcomp (Depends-on): Likewise.
2948         * modules/fnmatch (Depends-on): Likewise.
2949         * modules/git-merge-changelog (Depends-on): Likewise.
2950         * modules/isnand (Depends-on): Likewise.
2951         * modules/isnand-nolibm (Depends-on): Likewise.
2952         * modules/isnanf (Depends-on): Likewise.
2953         * modules/isnanf-nolibm (Depends-on): Likewise.
2954         * modules/isnanl (Depends-on): Likewise.
2955         * modules/isnanl-nolibm (Depends-on): Likewise.
2956         * modules/mbchar (Depends-on): Likewise.
2957         * modules/memcoll (Depends-on): Likewise.
2958         * modules/quotearg (Depends-on): Likewise.
2959         * modules/regex (Depends-on): Likewise.
2960         * modules/relocatable-prog (Depends-on): Likewise.
2961         * modules/same (Depends-on): Likewise.
2962         * modules/signbit (Depends-on): Likewise.
2963         * modules/strcasestr-simple (Depends-on): Likewise.
2964         * modules/unictype/gen-ctype (Depends-on): Likewise.
2965         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
2966         * modules/uniname/uniname (Depends-on): Likewise.
2967         * modules/unistr/u8-cmp (Depends-on): Likewise.
2968
2969 2008-11-02  Bruno Haible  <bruno@clisp.org>
2970
2971         Mark 'memchr' obsolete.
2972         * modules/memchr (Status, Notice): New sections.
2973         * modules/argp (Depends-on): Add memchr.
2974         * modules/base64 (Depends-on): Likewise.
2975         * modules/c-strcasestr (Depends-on): Likewise.
2976         * modules/chdir-long (Depends-on): Likewise.
2977         * modules/fnmatch (Depends-on): Likewise.
2978         * modules/getsubopt (Depends-on): Likewise.
2979         * modules/git-merge-changelog (Depends-on): Likewise.
2980         * modules/glob (Depends-on): Likewise.
2981         * modules/strcasestr-simple (Depends-on): Likewise.
2982         * modules/strnlen (Depends-on): Likewise.
2983
2984 2008-11-02  Bruno Haible  <bruno@clisp.org>
2985
2986         Mark 'atexit' obsolete.
2987         * modules/atexit (Status, Notice): New sections.
2988         * modules/chdir-long (Depends-on): Add atexit.
2989         * modules/wait-process (Depends-on): Likewise.
2990
2991 2008-11-02  Bruno Haible  <bruno@clisp.org>
2992
2993         * gnulib-tool: New option --with-obsolete.
2994         (func_usage): Document it.
2995         (func_modules_transitive_closure): Drop obsolete dependencies if
2996         incobsolete is not true.
2997         (func_import): Read and save the incobsolete variable to the cache.
2998
2999 2008-11-02  Bruno Haible  <bruno@clisp.org>
3000
3001         * modules/TEMPLATE-EXTENDED: New field 'Status'.
3002         * gnulib-tool: New option --extract-status.
3003         (func_usage): Document it.
3004         (sed_extract_prog): Recognize it.
3005         (func_get_status): New function.
3006
3007 2008-10-30  Simon Josefsson  <simon@josefsson.org>
3008
3009         * modules/sockets (License): Change from LGPL to LGPLv2+.
3010
3011 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3012
3013         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
3014
3015 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3016
3017         * MODULES.html.sh (Support for systems lacking POSIX:2001):
3018         Mention times and sys_times.
3019         * modules/sys_times, modules/sys_times-tests: New modules.
3020         * modules/times, modules/times-tests: Likewise
3021         * m4/sys_times_h.m4: New file.
3022         * lib/sys_times.in.h: Likewise
3023         * lib/times.c: Likewise.
3024         * tests/test-sys_times.c: Likewise.
3025         * tests/test-times.c: Likewise.
3026         * doc/posix-headers/sys_times.texi: Update.
3027         * doc/posix-functions/times.texi: Update.
3028
3029 2008-10-28  Jim Meyering  <meyering@redhat.com>
3030
3031         * modules/tempname (Depends-on): Add lstat.
3032
3033         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
3034
3035 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3036
3037         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
3038         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
3039         using idiom used elsewhere in gnulib.
3040
3041 2008-10-27  Jim Meyering  <meyering@redhat.com>
3042
3043         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
3044
3045 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3046
3047         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
3048         TESTS_ENVIRONMENT, for shell scripts that needs to call built
3049         programs.
3050         * tests/test-argp-2.sh: Use $EXEEXT when needed.
3051
3052 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3053
3054         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
3055
3056 2008-10-27  Bruno Haible  <bruno@clisp.org>
3057
3058         * tests/test-lstat.c: Include <stdio.h>.
3059
3060 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3061
3062         * modules/lstat-tests: New module.
3063         * tests/test-lstat.c: New file.
3064
3065 2008-10-26  Jim Meyering  <meyering@redhat.com>
3066
3067         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
3068
3069 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3070             Bruno Haible  <bruno@clisp.org>
3071
3072         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
3073         * modules/configmake (Include): Add a note that the include must come
3074         after all system headers.
3075         * lib/javaversion.c: Include configmake.h after all other includes.
3076
3077 2008-10-26  Bruno Haible  <bruno@clisp.org>
3078
3079         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
3080         HAVE_STRUCT_RANDOM_DATA to 1.
3081         (gl_STDLIB_H): Simplify.
3082
3083 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3084
3085         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
3086         substitute HAVE_STRUCT_RANDOM_DATA.
3087         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
3088         random_data.
3089         * modules/stdlib (Makefile.am): Substitute
3090         HAVE_STRUCT_RANDOM_DATA.
3091
3092 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3093
3094         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
3095         * doc/gnulib-intro.texi (Copyright): Likewise.
3096
3097 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3098
3099         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
3100         findings.
3101
3102 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
3103             Bruno Haible  <bruno@clisp.org>
3104
3105         * lib/unistd.in.h: Include <winsock2.h>.
3106         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
3107         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
3108         Provide dummy declarations.
3109         (gethostname): Override.
3110         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
3111         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
3112         gl_PREREQ_SYS_H_WINSOCK2.
3113         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
3114         * doc/posix-functions/gethostname.texi: More details.
3115
3116 2008-10-25  Bruno Haible  <bruno@clisp.org>
3117
3118         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
3119         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
3120         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
3121
3122         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
3123         here ...
3124         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
3125         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
3126         gl_UNISTD_H_DEFAULTS.
3127
3128 2008-10-25  Eric Blake  <ebb9@byu.net>
3129
3130         signbit: avoid spurious compiler failure
3131         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
3132         declarations inside function.
3133
3134 2008-10-24  Simon Josefsson  <simon@josefsson.org>
3135             Bruno Haible  <bruno@clisp.org>
3136
3137         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
3138         * modules/random_r (Depends-on): Add stdint.
3139
3140 2008-10-24  Bruno Haible  <bruno@clisp.org>
3141
3142         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
3143         Eggert.
3144         * modules/strerror (License): Likewise.
3145
3146 2008-10-24  Jim Meyering  <meyering@redhat.com>
3147
3148         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
3149         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
3150
3151 2008-10-24  Eric Blake  <ebb9@byu.net>
3152
3153         getgroups: fix compilation when getgroups is available
3154         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
3155         but with <config.h> override of getgroups disabled.
3156
3157 2008-10-24  Simon Josefsson  <simon@josefsson.org>
3158
3159         * doc/gnulib.texi (Header files): Add note about C++ problems.
3160         Explained by Bruno Haible <bruno@clisp.org>.
3161
3162 2008-10-23  Bruno Haible  <bruno@clisp.org>
3163
3164         Define a dummy SA_NODEFER macro on Interix.
3165         * lib/signal.in.h (SA_NODEFER): Define fallback.
3166         Reported by Aleksey Cheusov <cheusov@tut.by> via
3167         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
3168
3169 2008-10-23  Bruno Haible  <bruno@clisp.org>
3170
3171         * modules/freadahead (License): Change to LGPLv2+.
3172         Suggested by Simon Josefsson.
3173
3174 2008-10-23  Jim Meyering  <meyering@redhat.com>
3175
3176         random_r: new module
3177         * modules/random_r: New file.
3178         * m4/random_r.m4: New file.
3179         * lib/random_r.c: New file, from glibc.
3180         * modules/random_r-tests: New file.
3181         * tests/test-random_r.c: New file.
3182         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
3183          Declare.
3184         (RAND_MAX): Define.
3185         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
3186         * modules/stdlib: Substitute them, too.
3187         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
3188         * doc/glibc-functions/initstate_r.texi: Mention the new module.
3189         * doc/glibc-functions/random_r.texi: Likewise.
3190         * doc/glibc-functions/setstate_r.texi: Likewise.
3191         * doc/glibc-functions/srandom_r.texi: Likewise.
3192         * config/srclist.txt: Mention it.
3193
3194 2008-10-23  David Lutterkort  <lutter@redhat.com>
3195
3196         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
3197         link requirement
3198
3199 2008-10-23  Jim Meyering  <meyering@redhat.com>
3200
3201         selinux-h: mark parameters of stub functions as intentionally unused
3202         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
3203         * lib/se-context.in.h: Likewise.
3204
3205 2008-10-22  Simon Josefsson  <simon@josefsson.org>
3206
3207         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
3208
3209 2008-10-22  Simon Josefsson  <simon@josefsson.org>
3210
3211         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
3212
3213 2008-10-22  Eric Blake  <ebb9@byu.net>
3214
3215         glthread/thread: avoid compiler warning
3216         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
3217         Add unreachable abort to silence compiler.
3218
3219 2008-10-22  Eric Blake  <ebb9@byu.net>
3220
3221         netdb: also supply struct addrinfo for cygwin 1.5.x
3222         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
3223         older cygwin.
3224         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
3225         cygwin.
3226         * doc/posix-headers/netdb.texi (netdb.h): Document this.
3227
3228 2008-10-22  Bruno Haible  <bruno@clisp.org>
3229
3230         * users.txt: Update entry about pspp.
3231
3232 2008-10-21  Bruno Haible  <bruno@clisp.org>
3233
3234         Simplification.
3235         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
3236         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
3237
3238         Simplification.
3239         * lib/ioctl.c (ioctl): Don't undefine.
3240         * lib/socket.c (socket): Don't undefine.
3241
3242         Remove unused module indicator macros.
3243         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
3244         GNULIB_$1 as a C macro.
3245
3246         * doc/posix-functions/close.texi: Undo last change.
3247         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
3248         Windows platforms.
3249
3250 2008-10-21  Bruno Haible  <bruno@clisp.org>
3251
3252         Add gethostname() declaration to <unistd.h>.
3253         * lib/unistd.in.h (gethostname): New declaration.
3254         * lib/gethostname.c: Include <unistd.h>.
3255         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
3256         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
3257         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
3258         and HAVE_GETHOSTNAME.
3259         * modules/gethostname (Depends-on): Add unistd.
3260         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3261         (Include): Specify <unistd.h>.
3262         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
3263         HAVE_GETHOSTNAME.
3264         * tests/test-gethostname.c: Include <unistd.h> first.
3265
3266 2008-10-21  Bruno Haible  <bruno@clisp.org>
3267
3268         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
3269         * modules/select-tests (Depends-on): Likewise.
3270         Reported by Simon Josefsson.
3271
3272 2008-10-21  Simon Josefsson  <simon@josefsson.org>
3273
3274         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
3275         * lib/accept.c: New file, based on winsock.c.
3276         * lib/bind.c: New file, based on winsock.c.
3277         * lib/connect.c: New file, based on winsock.c.
3278         * lib/getpeername.c: New file, based on winsock.c.
3279         * lib/getsockname.c: New file, based on winsock.c.
3280         * lib/getsockopt.c: New file, based on winsock.c.
3281         * lib/ioctl.c: New file, based on winsock.c.
3282         * lib/listen.c: New file, based on winsock.c.
3283         * lib/recv.c: New file, based on winsock.c.
3284         * lib/recvfrom.c: New file, based on winsock.c.
3285         * lib/send.c: New file, based on winsock.c.
3286         * lib/sendto.c: New file, based on winsock.c.
3287         * lib/setsockopt.c: New file, based on winsock.c.
3288         * lib/shutdown.c: New file, based on winsock.c.
3289         * lib/socket.c: New file, based on winsock.c.
3290         * lib/w32sock.h: New file, based on winsock.c.
3291         * lib/winsock.c: Remove file.
3292         * modules/accept: Likewise.
3293         * modules/bind: Likewise.
3294         * modules/connect: Likewise.
3295         * modules/getpeername: Likewise.
3296         * modules/getsockname: Likewise.
3297         * modules/getsockopt: Likewise.
3298         * modules/ioctl: Likewise.
3299         * modules/listen: Likewise.
3300         * modules/recv: Likewise.
3301         * modules/recvfrom: Likewise.
3302         * modules/send: Likewise.
3303         * modules/sendto: Likewise.
3304         * modules/setsockopt: Likewise.
3305         * modules/shutdown: Likewise.
3306         * modules/socket: Use socket.c instead of winsock.c.
3307         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
3308         * doc/posix-functions/accept.texi: Doc fix.
3309         * doc/posix-functions/bind.texi: Doc fix.
3310         * doc/posix-functions/close.texi: Doc fix.
3311         * doc/posix-functions/connect.texi: Doc fix.
3312         * doc/posix-functions/getpeername.texi: Doc fix.
3313         * doc/posix-functions/getsockname.texi: Doc fix.
3314         * doc/posix-functions/getsockopt.texi: Doc fix.
3315         * doc/posix-functions/ioctl.texi: Doc fix.
3316         * doc/posix-functions/listen.texi: Doc fix.
3317         * doc/posix-functions/recv.texi: Doc fix.
3318         * doc/posix-functions/recvfrom.texi: Doc fix.
3319         * doc/posix-functions/send.texi: Doc fix.
3320         * doc/posix-functions/sendto.texi: Doc fix.
3321         * doc/posix-functions/setsockopt.texi: Doc fix.
3322         * doc/posix-functions/shutdown.texi: Doc fix.
3323         * doc/posix-functions/socket.texi: Doc fix.
3324
3325 2008-10-20  Bruno Haible  <bruno@clisp.org>
3326
3327         Take into account the role of SIGABRT_COMPAT on Windows 2008.
3328         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
3329         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
3330         as an alias for SIGABRT.
3331         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
3332         (sigaction): Map it to SIGABRT.
3333         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
3334
3335 2008-10-20  Bruno Haible  <bruno@clisp.org>
3336
3337         * lib/fts.c: Don't include lstat.h.
3338         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
3339
3340         Move the lstat() declaration to <sys/stat.h>.
3341         * lib/lstat.h: Remove file.
3342         * lib/sys_stat.in.h: Add special invocation convention.
3343         (lstat): New declaration.
3344         * lib/lstat.c (orig_lstat): New function.
3345         (rpl_lstat): Use orig_lstat instead of lstat.
3346         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
3347         AC_C_INLINE. Set REPLACE_LSTAT.
3348         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
3349         and REPLACE_LSTAT.
3350         * modules/lstat (Files): Remove lib/lstat.h.
3351         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
3352         (Include): Specify <sys/stat.h> instead of lstat.h.
3353         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
3354         REPLACE_LSTAT.
3355         * NEWS: Mention the change.
3356
3357 2008-10-20  Bruno Haible  <bruno@clisp.org>
3358
3359         * modules/posix_spawn-tests: New file.
3360         * tests/test-posix_spawn3.c: New file.
3361
3362 2008-10-20  Bruno Haible  <bruno@clisp.org>
3363
3364         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
3365         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
3366         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
3367         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
3368         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
3369
3370 2008-10-20  Bruno Haible  <bruno@clisp.org>
3371
3372         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
3373         of posix_spawn on AIX 5.3.
3374
3375 2008-10-20  Bruno Haible  <bruno@clisp.org>
3376
3377         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
3378
3379 2008-10-20  Bruno Haible  <bruno@clisp.org>
3380
3381         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
3382         of AC_LANG_PROGRAM.
3383
3384 2008-10-20  Simon Josefsson  <simon@josefsson.org>
3385
3386         * lib/netdb.in.h: Don't define GNU specific constants until they
3387         are supported or needed.  Reported by Bruno Haible
3388         <bruno@clisp.org>.
3389
3390 2008-10-20  Simon Josefsson  <simon@josefsson.org>
3391
3392         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
3393
3394 2008-10-20  Simon Josefsson  <simon@josefsson.org>
3395
3396         * lib/getaddrinfo.h: Remove file.
3397         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
3398         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
3399         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
3400         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
3401         * modules/netdb: Substitute GNULIB_GETADDRINFO.
3402         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
3403         * tests/test-getaddrinfo.c: Likewise.
3404         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
3405         * NEWS: Mention change.
3406
3407 2008-10-19  Bruno Haible  <bruno@clisp.org>
3408
3409         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
3410
3411 2008-10-19  Bruno Haible  <bruno@clisp.org>
3412
3413         * lib/wait-process.c: Include simply <sys/wait.h>.
3414         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
3415         WIFSTOPPED): Remove fallback definitions.
3416         * modules/wait-process (Depends-on): Add sys_wait.
3417
3418         New module 'sys_wait'.
3419         * modules/sys_wait: New file.
3420         * lib/sys_wait.in.h: New file, partially copied from
3421         lib/wait-process.c.
3422         * m4/sys_wait_h.m4: New file.
3423         * doc/posix-headers/sys_wait.texi: Mention the new module.
3424
3425 2008-10-19  Bruno Haible  <bruno@clisp.org>
3426
3427         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
3428
3429 2008-10-19  Bruno Haible  <bruno@clisp.org>
3430
3431         Assume that waitpid() fills an 'int' status, not a 'union wait'.
3432         * lib/wait-process.c (WAIT_T): Remove type.
3433         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
3434         (wait_subprocess): Update.
3435
3436 2008-10-19  Bruno Haible  <bruno@clisp.org>
3437
3438         New module 'atoll'.
3439         * modules/atoll: New file.
3440         * lib/stdlib.in.h (atoll): New declaration.
3441         * lib/atoll.c: New file, from glibc with modifications.
3442         * m4/atoll.m4: New file.
3443         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
3444         HAVE_ATOLL.
3445         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
3446         * doc/posix-functions/atoll.texi: Mention the new module.
3447
3448 2008-10-19  Bruno Haible  <bruno@clisp.org>
3449
3450         Add strtoull() declaration to <stdlib.h>.
3451         * lib/stdlib.in.h (strtoull): New declaration.
3452         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
3453         Set HAVE_STRTOULL.
3454         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
3455         HAVE_STRTOULL.
3456         * modules/strtoull (Depends-on): Add stdlib.
3457         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3458         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
3459         HAVE_STRTOULL.
3460
3461 2008-10-19  Bruno Haible  <bruno@clisp.org>
3462
3463         Add strtoll() declaration to <stdlib.h>.
3464         * lib/stdlib.in.h (strtoll): New declaration.
3465         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
3466         Set HAVE_STRTOLL.
3467         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
3468         HAVE_STRTOLL.
3469         * modules/strtoll (Depends-on): Add stdlib.
3470         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3471         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
3472
3473 2008-10-19  Bruno Haible  <bruno@clisp.org>
3474
3475         * modules/bcopy (Depends-on): Add strings.
3476         (Include): Specify <strings.h>.
3477
3478 2008-10-19  Bruno Haible  <bruno@clisp.org>
3479
3480         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
3481
3482 2008-10-19  Bruno Haible  <bruno@clisp.org>
3483
3484         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
3485         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
3486         mingw.
3487
3488 2008-10-19  Bruno Haible  <bruno@clisp.org>
3489
3490         * lib/atanl.c: Don't include isnanl.h.
3491         * lib/cosl.c: Likewise.
3492         * lib/ldexpl.c: Likewise.
3493         * lib/logl.c: Likewise.
3494         * lib/sinl.c: Likewise.
3495         * lib/sqrtl.c: Likewise.
3496         * lib/tanl.c: Likewise.
3497
3498         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
3499         * lib/isnanf.h: Remove file.
3500         * lib/isnand.h: Remove file.
3501         * lib/isnanl.h: Remove file.
3502         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
3503         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
3504         macros.
3505         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
3506         HAVE_ISNANF, don't define it as a C macro.
3507         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
3508         HAVE_ISNAND, don't define it as a C macro.
3509         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
3510         HAVE_ISNANL, don't define it as a C macro.
3511         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
3512         HAVE_ISNAN[FDL].
3513         * modules/isnanf (Files): Remove lib/isnanf.h.
3514         (Depends-on): Add math.
3515         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3516         (Include): Specify <math.h> instead of isnanf.h.
3517         * modules/isnand (Files): Remove lib/isnand.h.
3518         (Depends-on): Add math.
3519         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3520         (Include): Specify <math.h> instead of isnand.h.
3521         * modules/isnanl (Files): Remove lib/isnanl.h.
3522         (Depends-on): Add math.
3523         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
3524         (Include): Specify <math.h> instead of isnanl.h.
3525         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
3526         HAVE_ISNAN[FDL].
3527         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
3528         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
3529         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
3530         * NEWS: Mention the change.
3531
3532 2008-10-18  Bruno Haible  <bruno@clisp.org>
3533
3534         Add getusershell(), setusershell(), endusershell() declarations to
3535         <unistd.h>.
3536         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
3537         declarations.
3538         * lib/getusershell.c: Include unistd.h.
3539         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
3540         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
3541         HAVE_GETUSERSHELL.
3542         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
3543         and HAVE_GETUSERSHELL.
3544         * modules/getusershell (Depends-on): Add unistd, extensions.
3545         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3546         (Include): Specify <unistd.h>.
3547         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
3548         HAVE_GETUSERSHELL.
3549
3550 2008-10-18  Bruno Haible  <bruno@clisp.org>
3551
3552         Add a getloadavg() declaration to <stdlib.h>.
3553         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
3554         getloadavg declaration.
3555         (getloadavg): New declaration.
3556         * lib/getloadavg.c: Include <stdlib.h> first.
3557         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
3558         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
3559         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
3560         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
3561         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
3562         * modules/getloadavg (Depends-on): Add stdlib, extensions.
3563         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
3564         (Include): Specify <stdlib.h>.
3565         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
3566         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
3567
3568 2008-10-18  Bruno Haible  <bruno@clisp.org>
3569
3570         * lib/dirchownmod.c: Don't include lchmod.h.
3571
3572         Move the lchmod() declaration to <sys/stat.h>.
3573         * lib/lchmod.h: Remove file.
3574         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
3575         (lchmod): New declaration, moved here from lib/lchown.h.
3576         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
3577         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
3578         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
3579         and HAVE_LCHMOD.
3580         * modules/lchmod (Files): Remove lib/lchmod.h.
3581         (Depends-on): Add sys_stat, extensions.
3582         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
3583         (Include): Specify <sys/stat.h> instead of lchmod.h.
3584         * modules/sys_stat (Depends-on): Add link-warning.
3585         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
3586         definition of GL_LINK_WARNING.
3587         * NEWS: Mention the change.
3588
3589 2008-10-18  Bruno Haible  <bruno@clisp.org>
3590
3591         * lib/fchdir.c: Don't include dirfd.h.
3592         * lib/fts.c: Likewise.
3593         * lib/getcwd.c: Likewise.
3594         * lib/glob.c: Likewise.
3595
3596         Move the dirfd() declaration to <dirent.h>.
3597         * lib/dirfd.h: Remove file.
3598         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
3599         (dirfd): New declaration.
3600         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
3601         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
3602         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
3603         HAVE_DECL_DIRFD.
3604         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
3605         HAVE_DECL_DIRFD.
3606         * modules/dirfd (Files): Remove lib/dirfd.h.
3607         (Depends-on): Add dirent, extensions.
3608         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
3609         (Include): Specify <dirent.h> instead of dirfd.h.
3610         * modules/dirent (Depends-on): Add link-warning.
3611         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
3612         definition of GL_LINK_WARNING.
3613         * NEWS: Mention the change.
3614
3615 2008-10-18  Bruno Haible  <bruno@clisp.org>
3616
3617         Move the euidaccess() declaration to <unistd.h>.
3618         * lib/euidaccess.h: Remove file.
3619         * lib/unistd.in.h (euidaccess): New declaration.
3620         * lib/euidaccess.c: Don't include euidaccess.h.
3621         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
3622         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
3623         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
3624         and HAVE_EUIDACCESS.
3625         * modules/euidaccess (Files): Remove lib/euidaccess.h.
3626         (Depends-on): Add unistd.
3627         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3628         (Include): Specify <unistd.h> instead of euidaccess.h.
3629         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
3630         HAVE_EUIDACCESS.
3631         * NEWS: Mention the change.
3632
3633 2008-10-18  Bruno Haible  <bruno@clisp.org>
3634
3635         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
3636
3637         Move the getdomainname() declaration to <unistd.h>.
3638         * lib/getdomainname.h: Remove file.
3639         * lib/unistd.in.h (getdomainname): New declaration.
3640         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
3641         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
3642         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
3643         HAVE_GETDOMAINNAME.
3644         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3645         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
3646         * modules/getdomainname (Files): Remove lib/getdomainname.h.
3647         (Depends-on): Add unistd, extensions.
3648         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
3649         (Includes): Specify <unistd.h> instead of getdomainname.h.
3650         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
3651         HAVE_GETDOMAINNAME.
3652         * NEWS: Mention the change.
3653
3654 2008-10-18  Bruno Haible  <bruno@clisp.org>
3655
3656         * modules/dirent: New file.
3657         * m4/dirent_h.m4: New file.
3658         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
3659         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
3660         * modules/fchdir (Files): Remove lib/dirent.in.h.
3661         (Depends-on): Add dirent.
3662         (Makefile.am): Move rules to modules/dirent.
3663         * doc/posix-headers/dirent.texi: Mention the new module.
3664
3665 2008-10-18  Bruno Haible  <bruno@clisp.org>
3666
3667         Avoid -Wunused-parameter warnings in public gnulib header files.
3668         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
3669         macro.
3670         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
3671
3672 2008-10-18  Bruno Haible  <bruno@clisp.org>
3673
3674         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
3675         * doc/glibc-functions/error.texi: Mention the module 'error'.
3676         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
3677         * doc/glibc-functions/getdomainname.texi: Mention the module
3678         'getdomainname'.
3679         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
3680         * doc/glibc-functions/getpagesize.texi: Mention the module
3681         'getpagesize'.
3682         * doc/glibc-functions/getusershell.texi: Mention the module
3683         'getusershell'.
3684         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
3685         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
3686         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
3687         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
3688         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
3689         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
3690         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
3691         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
3692         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
3693         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
3694         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
3695         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
3696         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
3697         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
3698
3699 2008-10-17  Bruno Haible  <bruno@clisp.org>
3700
3701         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
3702         HP-UX and IRIX, use -0.0L.
3703         * tests/test-ceill.c (minus_zero): Likewise.
3704         * tests/test-floorl.c (minus_zero): Likewise.
3705         * tests/test-frexpl.c (minus_zero): Likewise.
3706         * tests/test-isnan.c (minus_zerol): Likewise.
3707         * tests/test-isnanl.h (minus_zero): Likewise.
3708         * tests/test-ldexpl.c (minus_zero): Likewise.
3709         * tests/test-roundl.c (minus_zero): Likewise.
3710         * tests/test-signbit.c (minus_zerol): Likewise.
3711         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
3712         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
3713         * tests/test-truncl.c (minus_zero): Likewise.
3714         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
3715         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
3716         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
3717         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
3718
3719 2008-10-17  Bruno Haible  <bruno@clisp.org>
3720
3721         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
3722         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
3723         that it gets activated only for gcc >= 3.0.
3724         * lib/dirent.in.h: Likewise.
3725         * lib/errno.in.h: Likewise.
3726         * lib/fcntl.in.h: Likewise.
3727         * lib/float.in.h: Likewise.
3728         * lib/iconv.in.h: Likewise.
3729         * lib/inttypes.in.h: Likewise.
3730         * lib/locale.in.h: Likewise.
3731         * lib/math.in.h: Likewise.
3732         * lib/netdb.in.h: Likewise.
3733         * lib/netinet_in.in.h: Likewise.
3734         * lib/search.in.h: Likewise.
3735         * lib/signal.in.h: Likewise.
3736         * lib/spawn.in.h: Likewise.
3737         * lib/stdarg.in.h: Likewise.
3738         * lib/stdint.in.h: Likewise.
3739         * lib/stdio.in.h: Likewise.
3740         * lib/stdlib.in.h: Likewise.
3741         * lib/string.in.h: Likewise.
3742         * lib/strings.in.h: Likewise.
3743         * lib/sys_file.in.h: Likewise.
3744         * lib/sys_ioctl.in.h: Likewise.
3745         * lib/sys_select.in.h: Likewise.
3746         * lib/sys_socket.in.h: Likewise.
3747         * lib/sys_stat.in.h: Likewise.
3748         * lib/sys_time.in.h: Likewise.
3749         * lib/sysexits.in.h: Likewise.
3750         * lib/time.in.h: Likewise.
3751         * lib/unistd.in.h: Likewise.
3752         * lib/wchar.in.h: Likewise.
3753         * lib/wctype.in.h: Likewise.
3754         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
3755
3756 2008-10-17  Jim Meyering  <meyering@redhat.com>
3757
3758         ignore-value: don't depend on inline module
3759         * modules/ignore-value (Depends-on): Remove 'inline'.
3760         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
3761         Suggestion from Bruno Haible.
3762
3763 2008-10-17  Bruno Haible  <bruno@clisp.org>
3764
3765         New implementation of condition variables for Win32.
3766         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
3767         (gl_linked_waitqueue_t): New type.
3768         (gl_cond_t): Use it.
3769         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
3770         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
3771         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
3772         (glthread_cond_init_func, glthread_cond_wait_func,
3773         glthread_cond_timedwait_func, glthread_cond_signal_func,
3774         glthread_cond_broadcast_func, glthread_cond_destroy_func):
3775         Reimplemented on the basis of gl_linked_waitqueue_t.
3776         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
3777         gl_waitqueue_t.
3778         (gl_rwlock_t): Update.
3779         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
3780
3781 2008-10-17  Simon Josefsson  <simon@josefsson.org>
3782
3783         * modules/recvfrom (Depends-on): Add dependency on getpeername.
3784         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
3785
3786 2008-10-17  Jim Meyering  <meyering@redhat.com>
3787
3788         ignore-value: new module
3789         * modules/ignore-value: New file.
3790         * lib/ignore-value.h: New file.
3791         * MODULES.html.sh (Compiler warning management): New section,
3792         just for this module.  More to come.
3793
3794 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3795
3796         open-safer.c: avoid 'signed and unsigned in conditional...' warning
3797         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
3798         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
3799
3800 2008-10-16  Jim Meyering  <meyering@redhat.com>
3801
3802         openat-die.c: avoid 'no previous prototype' warning
3803         * lib/openat-die.c: Include "openat.h".
3804         Reported by Reuben Thomas <rrt@sc3d.org>.
3805
3806 2008-10-16  Simon Josefsson  <simon@josefsson.org>
3807
3808         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
3809         * lib/netdb.in.h: Fix typo.
3810         Reported by Bruno Haible  <bruno@clisp.org>
3811
3812         * lib/netdb.in.h: Include sys/socket.h for platforms without
3813         netdb.h, to get structures like hostent on MinGW.
3814         * modules/netdb (Depends-on): Add sys_socket.
3815
3816 2008-10-15  Simon Josefsson  <simon@josefsson.org>
3817
3818         * modules/netdb, modules/netdb-tests: New file.
3819         * m4/netdb_h.m4: New file.
3820         * lib/netdb.in.h: Add, currently just an empty file pending
3821         definitions.
3822         * tests/test-netdb.c: New file.
3823         * doc/posix-headers/netdb.texi: Mention that we replace it if
3824         needed.
3825         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
3826         netdb.
3827
3828 2008-10-15  Simon Josefsson  <simon@josefsson.org>
3829
3830         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
3831         with code.
3832
3833 2008-10-13  Bruno Haible  <bruno@clisp.org>
3834
3835         * lib/glthread/cond.c (glthread_cond_wait_func,
3836         glthread_cond_timedwait_func): Add a comment.
3837
3838 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
3839
3840         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
3841         * tests/test-select.c: Likewise,
3842
3843 2008-10-13  Bruno Haible  <bruno@clisp.org>
3844
3845         * lib/glthread/cond.c (glthread_cond_wait_func,
3846         glthread_cond_timedwait_func): Fix variable name.
3847         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
3848
3849 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
3850
3851         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
3852         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
3853         struct sockaddr.sa_len.
3854         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
3855
3856 2008-10-13  Simon Josefsson  <simon@josefsson.org>
3857
3858         * build-aux/pmccabe2html: Add css and css_url parameters.
3859
3860 2008-10-12  Bruno Haible  <bruno@clisp.org>
3861
3862         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
3863         calling aclx_get.
3864         Reported by Rainer Tammer <tammer@tammer.net>.
3865
3866 2008-10-12  Bruno Haible  <bruno@clisp.org>
3867
3868         Use msvcrt aware primitives for creation/termination of Win32 threads.
3869         * lib/glthread/thread.c: Include <process.h>.
3870         (glthread_create_func): Use _beginthreadex instead of CreateThread.
3871         (wrapper_func): Update signature.
3872         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
3873
3874 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
3875             Bruno Haible  <bruno@clisp.org>
3876
3877         Provide a Win32 implementation of the 'cond' module.
3878         * lib/glthread/cond.h [USE_WIN32]: New implementation.
3879         * lib/glthread/cond.c (glthread_cond_init_func,
3880         glthread_cond_wait_func, glthread_cond_timedwait_func,
3881         glthread_cond_signal_func, glthread_cond_broadcast_func,
3882         glthread_cond_destroy_func) [USE_WIN32]: New functions.
3883         * modules/cond (Dependencies): Add gettimeofday.
3884
3885 2008-10-11  Bruno Haible  <bruno@clisp.org>
3886
3887         Make sleep work on older versions of mingw.
3888         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
3889         only whether it exists.
3890         * doc/posix-functions/sleep.texi: Mention the problem with older
3891         versions of mingw.
3892
3893 2008-10-11  Bruno Haible  <bruno@clisp.org>
3894
3895         New module 'shutdown'.
3896         * modules/shutdown: New file.
3897         * lib/sys_socket.in.h (shutdown): New declaration.
3898         * lib/winsock.c (shutdown): New function.
3899         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
3900         GNULIB_SHUTDOWN.
3901         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
3902         * doc/posix-functions/shutdown.texi: Document the new module.
3903
3904 2008-10-11  Jim Meyering  <meyering@redhat.com>
3905
3906         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
3907
3908 2008-10-11  Bruno Haible  <bruno@clisp.org>
3909
3910         New module 'fclose'.
3911         * modules/fclose: New file.
3912         * lib/stdio.in.h (fclose): New declaration.
3913         * lib/fclose.c: New file.
3914         * m4/fclose.m4: New file.
3915         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
3916         REPLACE_FCLOSE.
3917         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
3918         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
3919         REPLACE_FCLOSE.
3920         * modules/close (Depends-on): fclose.
3921         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
3922
3923 2008-10-11  Bruno Haible  <bruno@clisp.org>
3924
3925         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
3926         set errno and don't call _close.
3927
3928 2008-10-10  Bruno Haible  <bruno@clisp.org>
3929
3930         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
3931         ACL, not afterwards. Fixes test failure on Cygwin.
3932
3933 2008-10-09  Ben Pfaff  <blp@gnu.org>
3934
3935         * build-aux/announce-gen: Fix gnulib version related part of usage
3936         message.  Die with a useful error message if no tarballs are
3937         found.
3938
3939 2008-10-10  Jim Meyering  <meyering@redhat.com>
3940
3941         bootstrap: use git's --depth=N option only if it's supported
3942         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
3943         recognize the --depth option.  Reported by Pádraig Brady.
3944
3945 2008-10-09  Bruno Haible  <bruno@clisp.org>
3946
3947         New module 'ioctl'.
3948         * modules/ioctl: New file.
3949         * lib/sys_socket.in.h (ioctl): Remove declaration.
3950         * lib/winsock.c: Include <sys/ioctl.h>.
3951         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
3952         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
3953         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
3954         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
3955         * doc/posix-functions/ioctl.texi: Mention the new module.
3956
3957 2008-10-09  Bruno Haible  <bruno@clisp.org>
3958
3959         New module 'sys_ioctl'.
3960         * lib/sys_ioctl.in.h: New file.
3961         * m4/sys_ioctl_h.m4: New file.
3962         * modules/sys_ioctl: New file.
3963         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
3964
3965 2008-10-09  Bruno Haible  <bruno@clisp.org>
3966
3967         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
3968         * lib/winsock.c: Include <stdarg.h>.
3969         (rpl_ioctl): Change to second argument 'int' and then varargs.
3970
3971 2008-10-09  Bruno Haible  <bruno@clisp.org>
3972
3973         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
3974         when the sys_socket module is present and the system has <winsock2.h>.
3975
3976 2008-10-09  Bruno Haible  <bruno@clisp.org>
3977
3978         * doc/posix-functions/close.texi: Mention module 'close' instead of
3979         module 'sys_socket'.
3980
3981 2008-10-09  Bruno Haible  <bruno@clisp.org>
3982
3983         * doc/glibc-headers/sys_ioctl.texi: New file.
3984         * doc/gnulib.texi: Include it.
3985
3986 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
3987             Bruno Haible  <bruno@clisp.org>
3988
3989         Combine the two replacements of 'close'.
3990         * lib/sys_socket.in.h (close): Define to a reminder to include
3991         <unistd.h>.
3992         (_gl_close_fd_maybe_socket): New declaration.
3993         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
3994         * lib/winsock.c (close): Remove undefinition.
3995         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
3996         needed for the gnulib module 'close'.
3997         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
3998         define to an error symbol or to a warning, if suitable.
3999         * lib/close.c: Include <sys/socket.h>.
4000         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
4001         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
4002         UNISTD_H_HAVE_WINSOCK2_H.
4003         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
4004         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4005         UNISTD_H_HAVE_WINSOCK2_H.
4006         * modules/sys_socket (Files): Add m4/unistd_h.m4.
4007         (configure.ac): Set a module indicator.
4008         (Makefile.am): Substitute GNULIB_CLOSE.
4009         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
4010         * modules/poll-tests (Depends-on): Add close.
4011         * modules/select-tests (Depends-on): Likewise.
4012
4013 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4014             Bruno Haible  <bruno@clisp.org>
4015
4016         New module 'close'.
4017         * modules/close: New file.
4018         * lib/unistd.in.h (close): Move declaration out of the
4019         FCHDIR_REPLACEMENT scope.
4020         (_gl_unregister_fd): New declaration.
4021         * lib/close.c: New file.
4022         * lib/fchdir.c (rpl_close): Remove function.
4023         * m4/close.m4: New file.
4024         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
4025         close.
4026         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
4027         REPLACE_CLOSE.
4028         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
4029         REPLACE_CLOSE.
4030         * modules/fchdir (Depends-on): Add close.
4031
4032 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4033             Bruno Haible  <bruno@clisp.org>
4034
4035         * lib/fcntl.in.h (open): Simplify conditionals.
4036         (_gl_register_fd): New declaration.
4037         * lib/fchdir.c (rpl_open): Remove function.
4038         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
4039         also.
4040         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
4041         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
4042         open.
4043
4044 2008-10-09  Jim Meyering  <meyering@redhat.com>
4045
4046         GNUmakefile: use the more name-space-friendly "_version"
4047         * top/GNUmakefile (_dummy): Update.
4048         (_version): Rename from "version".
4049
4050 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4051             Bruno Haible  <bruno@clisp.org>
4052
4053         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
4054         rpl_close.
4055         (_gl_register_fd): New function, extracted from rpl_open.
4056         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
4057         (rpl_open, rpl_opendir): Use _gl_register_fd.
4058
4059 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4060
4061         Fix organization of 'open' replacement.
4062         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
4063         (gl_FUNC_OPEN): Use it.
4064         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
4065
4066 2008-10-08  Bruno Haible  <bruno@clisp.org>
4067
4068         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
4069
4070 2008-10-08  Simon Josefsson  <simon@josefsson.org>
4071
4072         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
4073         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
4074         listen).
4075
4076 2008-10-08  Eric Blake  <ebb9@byu.net>
4077
4078         GNUmakefile: add 'make version' target
4079         * top/GNUmakefile (_curr-ver): Split version update rules...
4080         (version): ...into a target.
4081
4082 2008-10-07  Bruno Haible  <bruno@clisp.org>
4083
4084         Use a more portable replacement expression for -0.0L.
4085         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
4086         instead of -0.0L. Fix m4 quotation.
4087
4088         * tests/test-signbit.c: Include <float.h>.
4089         (minus_zero): New variable.
4090         (test_signbitl): Use minus_zero instead of -zero.
4091         * modules/signbit-tests (Depends-on): Add float.
4092
4093         * tests/test-ceill.c: Include <float.h>.
4094         (zero): Remove variable.
4095         (minus_zero): New variable.
4096         (main): Use minus_zero instead of -zero.
4097         * modules/ceill-tests (Depends-on): Add float.
4098
4099         * tests/test-floorl.c: Include <float.h>.
4100         (zero): Remove variable.
4101         (minus_zero): New variable.
4102         (main): Use minus_zero instead of -zero.
4103         * modules/floorl-tests (Depends-on): Add float.
4104
4105         * tests/test-roundl.c: Include <float.h>.
4106         (zero): Remove variable.
4107         (minus_zero): New variable.
4108         (main): Use minus_zero instead of -zero.
4109         * modules/roundl-tests (Depends-on): Add float.
4110
4111         * tests/test-truncl.c: Include <float.h>.
4112         (zero): Remove variable.
4113         (minus_zero): New variable.
4114         (main): Use minus_zero instead of -zero.
4115         * modules/truncl-tests (Depends-on): Add float.
4116
4117         * tests/test-frexpl.c (zero): Remove variable.
4118         (minus_zero): New variable.
4119         (main): Use minus_zero instead of -zero.
4120         * modules/frexpl-tests (Depends-on): Add float.
4121
4122         * tests/test-isnan.c (zerol): Remove variable.
4123         (minus_zerol): New variable.
4124         (test_long_double): Use minus_zerol instead of -zerol.
4125         * modules/isnan-tests (Depends-on): Add float.
4126
4127         * tests/test-isnanl.h (zero): Remove variable.
4128         (minus_zero): New variable.
4129         (main): Use minus_zero instead of -zero.
4130         * modules/isnanl-nolibm-tests (Depends-on): Add float.
4131         * modules/isnanl-tests (Depends-on): Add float.
4132
4133         * tests/test-ldexpl.c (zero): Remove variable.
4134         (minus_zero): New variable.
4135         (main): Use minus_zero instead of -zero.
4136         * modules/ldexpl-tests (Depends-on): Add float.
4137
4138         * tests/test-snprintf-posix.h (zerol): Remove variable.
4139         (minus_zerol): New variable.
4140         (test_function): Use minus_zerol instead of -zerol.
4141         * modules/snprintf-posix-tests (Depends-on): Add float.
4142         * modules/vsnprintf-posix-tests (Depends-on): Add float.
4143
4144         * tests/test-sprintf-posix.h (zerol): Remove variable.
4145         (minus_zerol): New variable.
4146         (test_function): Use minus_zerol instead of -zerol.
4147         * modules/sprintf-posix-tests (Depends-on): Add float.
4148         * modules/vsprintf-posix-tests (Depends-on): Add float.
4149
4150         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
4151         (minus_zerol): New variable.
4152         (test_function): Use minus_zerol instead of -zerol.
4153         * modules/vasnprintf-posix-tests (Depends-on): Add float.
4154
4155         * tests/test-vasprintf-posix.c (zerol): Remove variable.
4156         (minus_zerol): New variable.
4157         (test_function): Use minus_zerol instead of -zerol.
4158         * modules/vasprintf-posix-tests (Depends-on): Add float.
4159
4160 2008-10-07  Simon Josefsson  <simon@josefsson.org>
4161
4162         * MODULES.html.sh (Support for building documentation): Mention
4163         pmccabe2html.  Sort entries.
4164
4165         Add pmccabe2html module, from gnupdf.
4166         * build-aux/pmccabe.css: New file.
4167         * build-aux/pmccabe2html: New file.
4168         * m4/pmccabe2html.m4: New file.
4169         * modules/pmccabe2html: New file.
4170
4171 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
4172
4173         flock: new module
4174         * MODULES.html.sh: Add to list of modules.
4175         * lib/flock.c: flock implementation for Windows and Unix systems
4176         which have fcntl.
4177         * doc/glibc-functions/flock.texi: Update documentation.
4178         * lib/sys_file.in.h: <sys/file.h> header file.
4179         * m4/flock.m4: M4 macros.
4180         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
4181         * modules/flock: flock module.
4182         * modules/flock-tests: flock tests module.
4183         * modules/sys_file: sys/file.h module.
4184         * tests/test-flock.c: test suite for flock.
4185
4186 2008-10-06  Jim Meyering  <meyering@redhat.com>
4187
4188         bootstrap: check for LT_INIT more portably still ;-)
4189         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
4190         Spotted by Bruno Haible.
4191
4192 2008-10-06  Eric Blake  <ebb9@byu.net>
4193
4194         test-signbit: avoid tripping Irix cc bug on -0.0L
4195         * tests/test-signbit.c (minus_zerol): Delete, and replace with
4196         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
4197         entire testsuite consistent and avoids an Irix 6.2 bug.
4198
4199 2008-10-05  Bruno Haible  <bruno@clisp.org>
4200             Jim Meyering  <jim@meyering.net>
4201
4202         Add an option for ignoring EPIPE during close_stdout.
4203         * lib/closeout.h: Include <stdbool.h>.
4204         (close_stdout_set_ignore_EPIPE): New declaration.
4205         * lib/closeout.c: Include <stdbool.h>.
4206         (ignore_EPIPE): New variable.
4207         (close_stdout_set_ignore_EPIPE): New function.
4208         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
4209         * lib/close-stream.c (close_stream): Mention the possible EPIPE
4210         failure.
4211         * modules/closeout (Depends-on): Add stdbool.
4212
4213 2008-10-05  Bruno Haible  <bruno@clisp.org>
4214
4215         * modules/accept: New file.
4216         * modules/bind: New file.
4217         * modules/connect: New file.
4218         * modules/getpeername: New file.
4219         * modules/getsockname: New file.
4220         * modules/getsockopt: New file.
4221         * modules/listen: New file.
4222         * modules/recv: New file.
4223         * modules/recvfrom: New file.
4224         * modules/send: New file.
4225         * modules/sendto: New file.
4226         * modules/setsockopt: New file.
4227         * modules/socket: New file.
4228         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
4229         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
4230         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
4231         the particular module is requested. Add a link warning when the
4232         particular module is not requested.
4233         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
4234         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
4235         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
4236         the particular module is requested.
4237         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
4238         gl_SYS_SOCKET_H_DEFAULTS): New macros.
4239         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
4240         * modules/sys_socket (Depends-on): Add link-warning.
4241         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
4242         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
4243         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
4244         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
4245         GL_LINK_WARNING.
4246         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
4247         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
4248         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
4249         * doc/posix-functions/getpeername.texi: Mention the new module
4250         'getpeername'.
4251         * doc/posix-functions/getsockname.texi: Mention the new module
4252         'getsockname'.
4253         * doc/posix-functions/getsockopt.texi: Mention the new module
4254         'getsockopt'.
4255         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
4256         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
4257         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
4258         * doc/posix-functions/send.texi: Mention the new module 'send'.
4259         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
4260         * doc/posix-functions/setsockopt.texi: Mention the new module
4261         'setsockopt'.
4262         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
4263         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
4264         listen, connect, accept.
4265         * modules/select-tests (Depends-on): Likewise.
4266
4267 2008-10-05  Bruno Haible  <bruno@clisp.org>
4268
4269         * lib/winsock.c (strerror): Remove unused #undef.
4270         (rpl_close): Remove unused local variable.
4271
4272         * modules/sys_socket (Depends-on); Add errno.
4273
4274 2008-10-05  Bruno Haible  <bruno@clisp.org>
4275
4276         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
4277         (select): Add a link warning when the 'select' module is not used.
4278         * modules/sys_select (Depends-on): Add link-warning.
4279         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
4280         Suggested by Paolo Bonzini.
4281
4282 2008-10-05  Jim Meyering  <meyering@redhat.com>
4283
4284         bootstrap: check for LT_INIT more portably
4285         * build-aux/bootstrap: Avoid using grep -E, since it's not
4286         portable enough.  Suggestion from Bruno Haible.
4287
4288 2008-10-05  Bruno Haible  <bruno@clisp.org>
4289
4290         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
4291         as being fixed by gnulib.
4292
4293 2008-10-05  Bruno Haible  <bruno@clisp.org>
4294
4295         * modules/select-tests: New file, mostly copied from
4296         modules/sys_select-tests.
4297         * tests/test-select.c: New file, mostly copied from
4298         tests/test-sys_select.c.
4299         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
4300         * modules/sys_select-tests (Depends-on): Remove all dependencies.
4301         (Makefile.am): Remove test_sys_select_LDADD.
4302
4303         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
4304         to an undefined symbol, for an error message.
4305         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
4306         (gl_SYS_SELECT_H_DEFAULTS): New macro.
4307         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
4308         winsock-select.c here.
4309         * modules/sys_select (Files): Remove lib/winsock-select.c.
4310         (Depends-on): Remove alloca.
4311         (Makefile.am): Substitute GNULIB_SELECT.
4312         * modules/select: New file.
4313         * doc/posix-functions/select.texi: Update.
4314
4315 2008-10-05  Bruno Haible  <bruno@clisp.org>
4316
4317         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
4318         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
4319         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
4320         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
4321         getdtablesize.
4322         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
4323         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
4324
4325 2008-10-05  Bruno Haible  <bruno@clisp.org>
4326
4327         * modules/getdtablesize-tests: New file.
4328         * tests/test-getdtablesize.c: New file.
4329
4330         New module 'getdtablesize'.
4331         * lib/unistd.in.h (getdtablesize): New declaration.
4332         * lib/getdtablesize.c: New file.
4333         * m4/getdtablesize.m4: New file.
4334         * modules/getdtablesize: New file.
4335         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4336         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
4337         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
4338         HAVE_GETDTABLESIZE.
4339         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
4340
4341 2008-10-05  Bruno Haible  <bruno@clisp.org>
4342
4343         * modules/sched (Makefile.am): Fix typo.
4344         Reported by Simon Josefsson.
4345
4346 2008-10-05  Jim Meyering  <meyering@redhat.com>
4347
4348         bootstrap: check for LT_INIT, too
4349         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
4350         are deprecated.  Suggestion from Ralf Wildenhues.
4351
4352 2008-10-05  Bruno Haible  <bruno@clisp.org>
4353
4354         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
4355         overriding them by ours.
4356         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
4357
4358 2008-10-05  Jim Meyering  <meyering@redhat.com>
4359
4360         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
4361         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
4362         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
4363
4364 2008-10-04  Bruno Haible  <bruno@clisp.org>
4365
4366         * modules/dup2 (License): Change to LGPLv2+.
4367         * modules/sleep (License): Likewise.
4368         * modules/perror (License): Likewise.
4369         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
4370         Blake.
4371         * modules/signal (License): Likewise.
4372         * modules/sigprocmask (License): Likewise.
4373         * modules/raise (License): Change to LGPLv2+, with approval by Jim
4374         Meyering.
4375
4376 2008-10-04  Bruno Haible  <bruno@clisp.org>
4377
4378         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
4379         Reported by Rainer Tammer <tammer@tammer.net>.
4380
4381 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
4382             Bruno Haible  <bruno@clisp.org>
4383
4384         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
4385         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
4386         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
4387
4388 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
4389
4390         filevercmp: new module
4391         * lib/filevercmp.h: New function filevercmp comparing version strings.
4392         * lib/filevercmp.c: Implementation of filevercmp function.
4393         * modules/filevercmp: Module metadata.
4394         * tests/test-filevercmp.c: Unit test for new module.
4395         * modules/filevercmp-tests: Unit test metadata.
4396         * MODULES.html.sh: Add filevercmp module.
4397
4398 2008-10-03  Bruno Haible  <bruno@clisp.org>
4399
4400         * lib/c-ctype.h: Add comment.
4401         Reported by Jim Meyering.
4402
4403 2008-10-02  Bruno Haible  <bruno@clisp.org>
4404
4405         * modules/posix_spawn-internal (Depends-on): Add 'open'.
4406
4407 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4408
4409         * build-aux/bootstrap: Allow renaming bootstrap, and change the
4410         name of bootstrap.conf accordingly.
4411
4412 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4413
4414         * build-aux/bootstrap: Install git-merge-changelog configuration
4415         items into .gitconfig if needed.
4416
4417 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
4418
4419         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
4420         git repository, and initialize/update it accordingly.
4421
4422 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
4423
4424         * modules/fsync-tests: New file.
4425         * tests/test-fsync.c: New file.
4426
4427         New module 'fsync'.
4428         * lib/fsync.c: New file.
4429         * m4/fsync.m4: New file.
4430         * modules/fsync: New file.
4431         * lib/unistd.in.h (fsync): New declaration.
4432         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
4433         GNULIB_FSYNC and HAVE_FSYNC.
4434         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
4435         * MODULES.html.sh (posix_functions): Add fsync.
4436         * doc/posix-functions/fsync.texi: Mention the new module.
4437
4438 2008-10-02  Jim Meyering  <meyering@redhat.com>
4439
4440         fts.c: sync with similar code from coreutils' remove.c
4441         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
4442         Guard also with "#if defined __linux__", since for now at least,
4443         this code is Linux-kernel-specific.
4444
4445 2008-10-02  Jim Meyering  <meyering@redhat.com>
4446
4447         fts: bug fixes
4448         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
4449         Include <sys/vfs.h>, not <sys/statfs.h>.
4450
4451         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
4452         Include <sys/vfs.h>, not <sys/statfs.h>.
4453
4454 2008-10-01  Bruno Haible  <bruno@clisp.org>
4455
4456         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
4457         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
4458         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
4459         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
4460         * doc/posix-functions/posix_spawnp.texi: Likewise.
4461         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
4462         whether posix_spawn actually works.
4463         * m4/pipe.m4 (gl_PIPE): Likewise.
4464         * modules/execute (Files): Add m4/posix_spawn.m4.
4465         * modules/pipe (Files): Add m4/posix_spawn.m4.
4466         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
4467
4468 2008-10-01  Jim Meyering  <meyering@redhat.com>
4469
4470         remove trailing spaces
4471         * NEWS: Likewise.
4472         * lib/poll.c (poll): Likewise.
4473         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
4474         * lib/winsock.c (rpl_close): Likewise.
4475         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
4476         * modules/yield: Likewise.
4477         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
4478         * tests/test-sys_select.c (connect_to_socket): Likewise.
4479
4480         fts.c: adjust a new interface to be more generally useful
4481         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
4482         (fts_build): Adjust caller.
4483
4484 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4485
4486         * modules/cond-tests: New file.
4487         * tests/test-cond.c: New file.
4488
4489 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4490             Bruno Haible  <bruno@clisp.org>
4491
4492         * modules/cond (Dependencies): Add errno, time.
4493         * lib/glthread/cond.h: Include <time.h>.
4494         (gl_cond_define, gl_cond_define_initialized): Use the same definition
4495         across platforms.
4496
4497 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4498             Bruno Haible  <bruno@clisp.org>
4499
4500         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
4501
4502 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4503             Bruno Haible  <bruno@clisp.org>
4504
4505         * modules/tls-tests (Depends-on): Add thread, yield.
4506         (configure.ac): Remove all checks.
4507         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
4508         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
4509         gl_thread_self): Remove definitions. Include glthread/thread.h and
4510         glthread/yield.h instead.
4511         (test_tls): Pass an additional NULL argument to gl_thread_join.
4512
4513 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4514             Bruno Haible  <bruno@clisp.org>
4515
4516         * modules/lock-tests (Depends-on): Add thread, yield.
4517         (configure.ac): Remove all checks.
4518         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
4519         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
4520         gl_thread_self): Remove definitions. Include glthread/thread.h and
4521         glthread/yield.h instead.
4522         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
4523         additional NULL argument to gl_thread_join.
4524
4525 2008-09-30  Bruno Haible  <bruno@clisp.org>
4526
4527         Fix the Win32 implementation of the 'thread' module.
4528         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
4529         pointer type.
4530         (gl_thread_self): Invoke gl_thread_self_func.
4531         (gl_thread_self_func): New declaration.
4532         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
4533         (do_init_self_key, init_self_key): New functions.
4534         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
4535         Remove some fields.
4536         (running_threads, running_lock): Remove variables.
4537         (get_current_thread_handle): New function.
4538         (gl_thread_self_func, wrapper_func, glthread_create_func,
4539         glthread_join_func, gl_thread_exit_func): Largely rewritten and
4540         simplified.
4541
4542 2008-09-30  Bruno Haible  <bruno@clisp.org>
4543
4544         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
4545         files.
4546
4547 2008-09-30  Jim Meyering  <meyering@redhat.com>
4548
4549         fts.m4: correct the test for statfs.f_type
4550         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
4551         when checking for statfs.f_type.
4552
4553 2008-09-15  Simon Josefsson  <simon@josefsson.org>
4554
4555         tests: avoid some compiler warnings
4556         * tests/test-memchr.c (main): Pass NULL indirectly.
4557         * tests/test-getdate.c (main): Remove unused variable 'ret'.
4558
4559 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
4560
4561         getdate.y: disallow countable dayshifts like "4 yesterday ago"
4562         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
4563         exactly specified dayshifts.
4564         (dayshift): New rule.
4565         (rel): Add dayshift.
4566         (relative_time_table) [tomorrow, yesterday, today, now]:
4567         Use tDAY_SHIFT in place of tDAY_UNIT.
4568         * tests/test-getdate.c: Add tests for now-disallowed countable
4569         dayshifts, e.g., "4 yesterday ago".
4570
4571 2008-09-29  Bruno Haible  <bruno@clisp.org>
4572
4573         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
4574         * tests/test-posix_spawn1.in.sh: Renamed from
4575         tests/test-posix_spawn.in.sh.
4576         * tests/test-posix_spawn2.c: New file.
4577         * tests/test-posix_spawn2.in.sh: New file.
4578         * modules/posix_spawnp-tests (Files): Update.
4579         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
4580
4581 2008-09-29  Bruno Haible  <bruno@clisp.org>
4582
4583         Propagate effects of putenv/setenv/unsetenv to child processes.
4584         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
4585         * lib/pipe.c (create_pipe): Likewise.
4586
4587 2008-09-29  Bruno Haible  <bruno@clisp.org>
4588
4589         Enable use of shell scripts as executables in mingw.
4590         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
4591         run the program as a shell script.
4592         * lib/pipe.c (create_pipe): Likewise.
4593         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
4594         resulting array.
4595
4596 2008-09-29  Eric Blake  <ebb9@byu.net>
4597
4598         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
4599
4600 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
4601
4602         * doc/posix-functions/accept.texi: Update mingw problems.
4603         * doc/posix-functions/bind.texi: Update mingw problems.
4604         * doc/posix-functions/close.texi: Update mingw problems.
4605         * doc/posix-functions/connect.texi: Update mingw problems.
4606         * doc/posix-functions/getpeername.texi: Update mingw problems.
4607         * doc/posix-functions/getsockname.texi: Update mingw problems.
4608         * doc/posix-functions/getsockopt.texi: Update mingw problems.
4609         * doc/posix-functions/ioctl.texi: Update mingw problems.
4610         * doc/posix-functions/listen.texi: Update mingw problems.
4611         * doc/posix-functions/recv.texi: Update mingw problems.
4612         * doc/posix-functions/recvfrom.texi: Update mingw problems.
4613         * doc/posix-functions/select.texi: Update mingw problems.
4614         * doc/posix-functions/send.texi: Update mingw problems.
4615         * doc/posix-functions/sendto.texi: Update mingw problems.
4616         * doc/posix-functions/setsockopt.texi: Update mingw problems.
4617         * doc/posix-functions/socket.texi: Update mingw problems.
4618
4619 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
4620             Bruno Haible  <bruno@clisp.org>
4621
4622         * lib/sys_select.in.h: Include sys/time.h.
4623         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
4624         * modules/sys_select: Depend on sys_time.
4625         * tests/test-sys_select.c: Test that sys/select.h defines struct
4626         timeval fully.
4627
4628 2008-09-29  Bruno Haible  <bruno@clisp.org>
4629
4630         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
4631         * lib/sys_select.in.h: Likewise.
4632
4633 2008-09-29  Bruno Haible  <bruno@clisp.org>
4634
4635         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
4636
4637 2008-09-29  Bruno Haible  <bruno@clisp.org>
4638
4639         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
4640         Set LIBSOCKET instead of augmenting LIBS.
4641         * modules/sockets (Link): New section.
4642         * modules/sockets-tests (test_sockets_LDADD): New variable.
4643         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
4644         * modules/poll-tests (test_poll_LDADD): New variable.
4645         * NEWS: Document the change.
4646
4647 2008-09-29  Bruno Haible  <bruno@clisp.org>
4648
4649         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
4650         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
4651         ARPA_INET_H directly.
4652         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
4653
4654 2008-09-28  Bruno Haible  <bruno@clisp.org>
4655
4656         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
4657         from gl_HEADER_SYS_SOCKET.
4658         (gl_HEADER_SYS_SOCKET): Invoke it.
4659         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
4660
4661 2008-09-28  Bruno Haible  <bruno@clisp.org>
4662
4663         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
4664         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
4665         Needed on OSF/1 4.0.
4666
4667 2008-09-28  Bruno Haible  <bruno@clisp.org>
4668
4669         Override open more carefully.
4670         * lib/open.c (orig_open): New function.
4671         (rpl_open): Use orig_open instead of open.
4672         * lib/fcntl.in.h: Add special invocation convention.
4673         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
4674         (gl_FUNC_OPEN): Invoke it.
4675
4676         Override freopen more carefully.
4677         * lib/freopen.c (orig_freopen): New function.
4678         (rpl_freopen): Use orig_freopen instead of freopen.
4679         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
4680         (gl_FUNC_FREOPEN): Invoke it.
4681
4682         Override fopen more carefully.
4683         * lib/fopen.c (orig_fopen): New function.
4684         (rpl_fopen): Use orig_fopen instead of fopen.
4685         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
4686         (gl_FUNC_FOPEN): Invoke it.
4687         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
4688
4689 2008-09-28  Bruno Haible  <bruno@clisp.org>
4690
4691         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
4692         SIGPIPE.
4693
4694 2008-09-28  Bruno Haible  <bruno@clisp.org>
4695
4696         * tests/test-sigaction.c (handler, main): Disable the check whether
4697         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
4698         glibc systems with LinuxThreads.
4699
4700 2008-09-28  Bruno Haible  <bruno@clisp.org>
4701
4702         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
4703
4704         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
4705         with AIX xlc.
4706         * lib/fcntl.in.h (open): Likewise.
4707         Reported by Rainer Tammer <tammer@tammer.net>.
4708
4709 2008-09-28  Bruno Haible  <bruno@clisp.org>
4710
4711         * modules/posix_spawnp-tests: New file.
4712         * tests/test-posix_spawn.c: New file.
4713         * tests/test-posix_spawn.in.sh: New file.
4714
4715         New module 'posix_spawnp'.
4716         * modules/posix_spawnp: New file.
4717         * lib/spawnp.c: New file, from GNU libc with modifications.
4718         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
4719
4720         New module 'posix_spawn'.
4721         * modules/posix_spawn: New file.
4722         * lib/spawn.c: New file, from GNU libc with modifications.
4723         * doc/posix-functions/posix_spawn.texi: Mention the new module.
4724
4725         New module 'posix_spawnattr_destroy'.
4726         * modules/posix_spawnattr_destroy: New file.
4727         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
4728         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
4729         module.
4730
4731         New module 'posix_spawnattr_setsigmask'.
4732         * modules/posix_spawnattr_setsigmask: New file.
4733         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
4734         modifications.
4735         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
4736         new module.
4737
4738         New module 'posix_spawnattr_getsigmask'.
4739         * modules/posix_spawnattr_getsigmask: New file.
4740         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
4741         modifications.
4742         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
4743         new module.
4744
4745         New module 'posix_spawnattr_setsigdefault'.
4746         * modules/posix_spawnattr_setsigdefault: New file.
4747         * lib/spawnattr_setdefault.c: New file, from GNU libc with
4748         modifications.
4749         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
4750         new module.
4751
4752         New module 'posix_spawnattr_getsigdefault'.
4753         * modules/posix_spawnattr_getsigdefault: New file.
4754         * lib/spawnattr_getdefault.c: New file, from GNU libc with
4755         modifications.
4756         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
4757         new module.
4758
4759         New module 'posix_spawnattr_setschedpolicy'.
4760         * modules/posix_spawnattr_setschedpolicy: New file.
4761         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
4762         modifications.
4763         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
4764         new module.
4765
4766         New module 'posix_spawnattr_getschedpolicy'.
4767         * modules/posix_spawnattr_getschedpolicy: New file.
4768         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
4769         modifications.
4770         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
4771         new module.
4772
4773         New module 'posix_spawnattr_setschedparam'.
4774         * modules/posix_spawnattr_setschedparam: New file.
4775         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
4776         modifications.
4777         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
4778         new module.
4779
4780         New module 'posix_spawnattr_getschedparam'.
4781         * modules/posix_spawnattr_getschedparam: New file.
4782         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
4783         modifications.
4784         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
4785         new module.
4786
4787         New module 'posix_spawnattr_setpgroup'.
4788         * modules/posix_spawnattr_setpgroup: New file.
4789         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
4790         modifications.
4791         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
4792         module.
4793
4794         New module 'posix_spawnattr_getpgroup'.
4795         * modules/posix_spawnattr_getpgroup: New file.
4796         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
4797         modifications.
4798         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
4799         module.
4800
4801         New module 'posix_spawnattr_setflags'.
4802         * modules/posix_spawnattr_setflags: New file.
4803         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
4804         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
4805         module.
4806
4807         New module 'posix_spawnattr_getflags'.
4808         * modules/posix_spawnattr_getflags: New file.
4809         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
4810         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
4811         module.
4812
4813         New module 'posix_spawnattr_init'.
4814         * modules/posix_spawnattr_init: New file.
4815         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
4816         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
4817         module.
4818
4819         New module 'posix_spawn_file_actions_destroy'.
4820         * modules/posix_spawn_file_actions_destroy: New file.
4821         * lib/spawn_faction_destroy.c: New file, from GNU libc with
4822         modifications.
4823         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
4824         the new module.
4825
4826         New module 'posix_spawn_file_actions_addopen'.
4827         * modules/posix_spawn_file_actions_addopen: New file.
4828         * lib/spawn_faction_addopen.c: New file, from GNU libc with
4829         modifications.
4830         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
4831         the new module.
4832
4833         New module 'posix_spawn_file_actions_adddup2'.
4834         * modules/posix_spawn_file_actions_adddup2: New file.
4835         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
4836         modifications.
4837         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
4838         the new module.
4839
4840         New module 'posix_spawn_file_actions_addclose'.
4841         * modules/posix_spawn_file_actions_addclose: New file.
4842         * lib/spawn_faction_addclose.c: New file, from GNU libc with
4843         modifications.
4844         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
4845         the new module.
4846
4847         New module 'posix_spawn_file_actions_init'.
4848         * modules/posix_spawn_file_actions_init: New file.
4849         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
4850         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
4851         new module.
4852
4853         New module 'posix_spawn-internal'.
4854         * modules/posix_spawn-internal: New file.
4855         * lib/spawn_int.h: New file, from GNU libc with modifications.
4856         * lib/spawni.c: New file, from GNU libc with modifications.
4857         * m4/posix_spawn.m4: New file.
4858
4859         New module 'spawn'.
4860         * modules/spawn: New file.
4861         * lib/spawn.in.h: New file, from GNU libc with modifications.
4862         * m4/spawn_h.m4: New file.
4863         * doc/posix-headers/spawn.texi: Mention the new module.
4864
4865 2008-09-28  Bruno Haible  <bruno@clisp.org>
4866
4867         * modules/sched-tests: New file.
4868         * tests/test-sched.c: New file.
4869
4870         New module 'sched'.
4871         * modules/sched: New file.
4872         * lib/sched.in.h: New file.
4873         * m4/sched_h.m4: New file.
4874         * doc/posix-headers/sched.texi: Mention the new module.
4875
4876 2008-09-27  Eric Blake  <ebb9@byu.net>
4877
4878         Fix previous patch, and tweak references to $0.
4879         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
4880         (func_version, func_gnulib_dir): Don't call this program
4881         gnulib-tool.
4882         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
4883         with using $0 in function.
4884         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
4885         (func_fatal_error): Reuse the name the user invoked us with.
4886
4887 2008-09-27  Bruno Haible  <bruno@clisp.org>
4888
4889         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
4890         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
4891         (gl_ICONV_H): Not here.
4892         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
4893         instead of assigning ICONV_H directly.
4894
4895         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
4896         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
4897         WCHAR_H directly.
4898
4899 2008-09-27  Bruno Haible  <bruno@clisp.org>
4900
4901         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
4902         * modules/arpa_inet (Depends-on): Add link-warning.
4903         (Makefile.am): Insert the definition of GL_LINK-WARNING.
4904         * modules/unistd (Makefile.am): Likewise.
4905
4906 2008-09-26  Bruno Haible  <bruno@clisp.org>
4907
4908         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
4909         variables.
4910         (func_version): Essentially copied from gnulib-tool.
4911         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
4912         func_readlink): Copied from gnulib-tool.
4913
4914 2008-09-26  Bruno Haible  <bruno@clisp.org>
4915
4916         * gnulib-tool (func_version): Change directory to $gnulib_dir before
4917         invoking git-version-gen.
4918
4919 2008-09-26  Bruno Haible  <bruno@clisp.org>
4920
4921         * posix-modules: Update to directory names changed on 2008-01-19.
4922         Remove commas in output before splitting into words. No more need to
4923         avoid 'ftruncate' since 2007-02-19.
4924
4925 2008-09-26  Bruno Haible  <bruno@clisp.org>
4926
4927         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
4928
4929 2008-09-26  Bruno Haible  <bruno@clisp.org>
4930
4931         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
4932         * modules/fwriteerror (Depends-on): Add errno.
4933
4934 2008-09-26  Bruno Haible  <bruno@clisp.org>
4935
4936         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
4937         * tests/test-vc-list-files-cvs.sh: Likewise.
4938
4939 2008-09-26  Bruno Haible  <bruno@clisp.org>
4940
4941         * doc/posix-headers/sys_resource.texi: Reorder items.
4942
4943 2008-09-26  Jim Meyering  <meyering@redhat.com>
4944
4945         fts: tweak inode comparison function
4946         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
4947         inode numbers, as documented.
4948
4949         fts: sort dirent entries on inode number before traversing
4950         This avoids a quadratic, seek-related performance penalty when
4951         operating on a directory containing many entries (measurable at 10k;
4952         3.5 hours at 2 million entries with a cold cache) on certain types
4953         of file systems, including ext3 and ext4, but not tmpfs.
4954         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
4955         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
4956         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
4957         (fs_handles_readdir_ordered_dirents_efficiently): New function.
4958         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
4959         (fts_build): Set the stat.st_ino member from D_INO.
4960         If it is likely to be useful, sort dirent entries on inode number.
4961
4962         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
4963         and the struct statfs.f_type member.
4964         * modules/fts (Depends-on): Add d-ino.
4965
4966 2008-09-26  Bruno Haible  <bruno@clisp.org>
4967
4968         * modules/sigpipe-die (Depends-on): Add sigpipe.
4969
4970         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
4971         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
4972         and GNULIB_STDIO_H_SIGPIPE are set.
4973         * lib/stdio-write.c: New file.
4974         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
4975         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4976         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4977         REPLACE_STDIO_WRITE_FUNCS.
4978         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
4979         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4980         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4981         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
4982         * modules/stdio (Files): Add lib/stdio-write.c.
4983         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
4984         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
4985         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
4986         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
4987         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
4988         REPLACE_FPRINTF_POSIX.
4989         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
4990         REPLACE_PRINTF_POSIX.
4991         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
4992         REPLACE_VFPRINTF_POSIX.
4993         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
4994         REPLACE_VPRINTF_POSIX.
4995         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
4996         SIGPIPE issue.
4997         * doc/posix-functions/fputc.texi: Likewise.
4998         * doc/posix-functions/fputs.texi: Likewise.
4999         * doc/posix-functions/fwrite.texi: Likewise.
5000         * doc/posix-functions/printf.texi: Likewise.
5001         * doc/posix-functions/putc.texi: Likewise.
5002         * doc/posix-functions/putchar.texi: Likewise.
5003         * doc/posix-functions/puts.texi: Likewise.
5004         * doc/posix-functions/vfprintf.texi: Likewise.
5005         * doc/posix-functions/vprintf.texi: Likewise.
5006
5007         * modules/safe-write (Depends-on): Add write.
5008
5009         * modules/sigpipe-tests: New file.
5010         * tests/test-sigpipe.c: New file.
5011         * tests/test-sigpipe.sh: New file.
5012
5013         * modules/write: New file.
5014         * lib/unistd.in.h: Include <sys/types.h>.
5015         (write): New declaration.
5016         * lib/write.c: New file.
5017         * m4/write.m4: New file.
5018         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5019         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
5020         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
5021         GNULIB_WRITE, REPLACE_WRITE.
5022         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
5023         and the SIGPIPE issue.
5024
5025         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
5026         (raise): New declaration.
5027         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
5028         (ext_signal): New function.
5029         (rpl_raise): New function.
5030         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
5031         GNULIB_SIGNAL_H_SIGPIPE.
5032         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
5033         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
5034
5035         * modules/sigpipe: New file.
5036         * m4/sigpipe.m4: New file.
5037
5038 2008-09-25  Derek Price  <derek@ximbiot.com>
5039             Bruno Haible  <bruno@clisp.org>
5040
5041         * gnulib-tool (func_import): Report all license incompatibilities, not
5042         just the first one.
5043
5044 2008-09-25  Bruno Haible  <bruno@clisp.org>
5045
5046         * gnulib-tool (func_import): When computing the edits, consider not
5047         only the Makefile.ams that exist but also those that will be generated.
5048
5049 2008-09-25  Simon Josefsson  <simon@josefsson.org>
5050
5051         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
5052         fixes gnulib-tool --test warning about duplicate dependency.
5053
5054 2008-09-25  Bruno Haible  <bruno@clisp.org>
5055
5056         * gnulib-tool: Don't ask the user to perform edits in the generated
5057         Makefile.ams.
5058         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
5059         apply to the Makefile.am being generated.
5060         (func_emit_tests_Makefile_am): Execute edits that apply to the
5061         Makefile.am being generated.
5062         (func_import): Setup list of Makefile.am edits before emitting the
5063         Makefile.ams, not at the end.
5064         (func_create_testdir): Update.
5065         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5066
5067 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5068
5069         * gnulib-tool (func_import): Store the --tests-base option in the
5070         comment in gnulib-cache.m4.
5071
5072 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
5073
5074         * NEWS: Document increased portability that sys_select now provides.
5075
5076         * lib/sys_select.in.h: Install select wrapper.
5077         * lib/sys_socket.in.h: Use more descriptive name when there is no
5078         select wrapper.
5079         * lib/winsock-select.c: New.
5080         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
5081         Require gl_HEADER_SYS_SOCKET.
5082         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
5083         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
5084         * tests/test-sys_select.c: Add functional tests.
5085
5086 2008-09-24  Eric Blake  <ebb9@byu.net>
5087
5088         open, fopen: close fd leak in last patch
5089         * lib/open.c (rpl_open): Close fd before returning error.
5090         * lib/fopen.c (rpl_fopen): Close fd before returning error.
5091         * doc/posix-functions/open.texi (open): Document that Irix also
5092         has the bug.
5093         * doc/posix-functions/fopen.texi (fopen): Likewise.
5094         Reported by Paolo Bonzini.
5095
5096 2008-09-24  Bruno Haible  <bruno@clisp.org>
5097
5098         Ensure that a filename ending in a slash cannot be used to access a
5099         non-directory.
5100         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
5101         to check whether it's really a directory.
5102         * lib/fopen.c: Include fcntl.h, unistd.h.
5103         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
5104         and fdopen().
5105         * modules/fopen (Depends-on): Add unistd.
5106         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
5107         * tests/test-fopen.c (main): Likewise.
5108         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
5109         * doc/posix-functions/fopen.texi: Likewise.
5110         Reported by Eric Blake.
5111
5112 2008-09-23  Eric Blake  <ebb9@byu.net>
5113
5114         c-stack: avoid compiler optimizations when provoking overflow
5115         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
5116         recursion harder to optimize, to ensure a stack overflow occurs.
5117         * tests/test-c-stack.c (recurse): Likewise.
5118         Borrowed from libsigsegv.
5119
5120         c-stack: work around Irix sigaltstack bug
5121         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
5122         whether sigaltstack uses wrong end of stack_t (copied in part from
5123         libsigsegv).
5124         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
5125         Irix bug, without requiring an over-allocation.
5126         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
5127         bug.
5128
5129         fopen: document mingw bug on directories
5130         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
5131         not allowing a stream visiting a directory, even though reading
5132         from such a stream is not portable.
5133
5134 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5135
5136         * lib/poll.c: Rewrite.
5137         * modules/poll: Depend on alloca.
5138
5139 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5140
5141         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
5142         instead define prototypes for a full set of wrappers.  Ensure
5143         that Cygwin does not use the compatibility code, which is only
5144         for MinGW.
5145         * lib/winsock.c: New.
5146         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
5147         * modules/sys_socket: Add lib/winsock.c.
5148
5149         * modules/poll-tests: Add errno and perror.
5150         * tests/test-poll.c: Use ioctl, not ioctlsocket.
5151
5152 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5153
5154         * tests/test-poll.c: Downgrade minimum needed Winsock version.
5155
5156 2008-09-23  Bruno Haible  <bruno@clisp.org>
5157
5158         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
5159         * doc/glibc-functions/*: Likewise.
5160
5161 2008-09-23  Simon Josefsson  <simon@josefsson.org>
5162
5163         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
5164         success.
5165
5166 2008-09-22  Eric Blake  <ebb9@byu.net>
5167             Bruno Haible  <bruno@clisp.org>
5168
5169         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
5170         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
5171         supply %A but mishandle pseudo-NaN.
5172         Reported by Simon Josefsson.
5173
5174 2008-09-21  Bruno Haible  <bruno@clisp.org>
5175
5176         * tests/test-lock.c (main): Tweak skip message.
5177         * tests/test-tls.c (main): Likewise.
5178
5179 2008-09-21  Bruno Haible  <bruno@clisp.org>
5180
5181         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
5182         whether 'struct sigaction' has sa_sigaction here...
5183         (gl_PREREQ_SIG_HANDLER_H): ... not here.
5184         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
5185
5186 2008-09-21  Bruno Haible  <bruno@clisp.org>
5187
5188         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
5189         section.
5190         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
5191         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
5192         the new section.
5193         (Support for obsolete systems lacking POSIX:2001): New section.
5194         (String handling <string.h>): Move strdup to the new section.
5195         Suggested by Simon Josefsson and Paolo Bonzini.
5196
5197 2008-09-21  Bruno Haible  <bruno@clisp.org>
5198
5199         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
5200         exponents in %e and %g results on 'long double'. Needed for mingw's
5201         improved *printf functions.
5202         * tests/test-vasprintf-posix.c (test_function): Likewise.
5203         * tests/test-snprintf-posix.h (test_function): Likewise.
5204         * tests/test-sprintf-posix.h (test_function): Likewise.
5205         Reported by Eric Blake.
5206
5207 2008-09-21  Bruno Haible  <bruno@clisp.org>
5208
5209         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
5210         * tests/test-sprintf-posix.h (test_function): Likewise.
5211
5212 2008-09-21  Bruno Haible  <bruno@clisp.org>
5213
5214         * modules/getpass (Depends-on): Add strdup-posix.
5215
5216         New module 'strdup-posix'.
5217         * modules/strdup-posix: New file.
5218         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
5219         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
5220         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
5221         REPLACE_STRDUP.
5222         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
5223         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
5224         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
5225         strdup-posix.
5226
5227         * modules/strdup (Depends-on): Remove malloc-posix.
5228
5229 2008-09-20  Bruno Haible  <bruno@clisp.org>
5230
5231         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
5232         Wildenhues.
5233
5234 2008-09-20  Bruno Haible  <bruno@clisp.org>
5235
5236         Ensure that wint_t gets defined on IRIX 5.3.
5237         * lib/wchar.in.h (wint_t): Define if not defined by the system.
5238         * lib/wctype.in.h (wint_t): Likewise.
5239         (__wctype_wint_t): Remove type.
5240         (isw*): Use wint_t instead of __wctype_wint_t.
5241         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
5242         * modules/wchar (Files): Add m4/wint_t.m4.
5243         (Makefile.am): Substitute HAVE_WINT_T.
5244         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
5245         * tests/test-wctype.c: Check that wint_t is defined.
5246         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
5247         * doc/posix-headers/wctype.texi: Likewise.
5248         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
5249
5250 2008-09-18  Bruno Haible  <bruno@clisp.org>
5251
5252         * gnulib-tool (func_exit): Update comment.
5253
5254 2008-09-18  Simon Josefsson  <simon@josefsson.org>
5255
5256         * modules/getaddrinfo (Depends-on): Remove strdup, this module
5257         assumes strdup exists and does not depend on strdup to return
5258         ENOMEM on out of memory conditions.
5259
5260 2008-09-18  Bruno Haible  <bruno@clisp.org>
5261
5262         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
5263         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
5264         digits for the exponent.
5265
5266 2008-09-18  Jim Meyering  <meyering@redhat.com>
5267             Bruno Haible  <bruno@clisp.org>
5268
5269         * lib/vasnprintf.c (decimal_point_char): Define also if
5270         NEED_PRINTF_INFINITE_LONG_DOUBLE.
5271
5272 2008-09-16  Bruno Haible  <bruno@clisp.org>
5273         and Eric Blake  <ebb9@byu.net>
5274
5275         vasnprintf: support Irix 5.3
5276         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
5277         that mishandle long double infinity.
5278         Reported by Tom G. Christensen.
5279
5280 2008-09-16  Bruno Haible  <bruno@clisp.org>
5281
5282         * doc/glibc-functions/scandir.texi: Mention the function is missing on
5283         Solaris 9.
5284         * doc/glibc-functions/alphasort.texi: Likewise.
5285         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
5286
5287 2008-09-16  Jim Meyering  <meyering@redhat.com>
5288
5289         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
5290         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
5291         a umask modification leak out of a subshell.  Otherwise, the
5292         opensolaris /bin/sh would be accepted and thus cause unwarranted
5293         failures in the coreutils test suite.
5294
5295 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
5296
5297         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
5298         to succeed.
5299
5300 2008-09-16  Jim Meyering  <meyering@redhat.com>
5301
5302         avoid spurious test failure when library is built without ACL support
5303         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
5304         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
5305         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
5306         * tests/test-copy-acl.sh: Likewise.
5307
5308 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5309
5310         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
5311         based on character occurrence counts.
5312
5313 2008-09-15  Eric Blake  <ebb9@byu.net>
5314
5315         tests: avoid some compiler warnings
5316         * tests/test-memchr.c (main): Pass NULL indirectly.
5317         * tests/test-closein.c (main): Avoid unused variable.
5318
5319 2008-09-15  Bruno Haible  <bruno@clisp.org>
5320
5321         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
5322         are missing on OpenBSD 4.0 individually.
5323         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5324
5325 2008-09-15  Bruno Haible  <bruno@clisp.org>
5326
5327         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
5328         * doc/posix-functions/strerror.texi: Mention also Cygwin.
5329         * doc/posix-functions/perror.texi: Likewise.
5330         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
5331         is missing.
5332         Reported by Eric Blake.
5333
5334         * lib/errno.in.h: Use replacement values >= 2000.
5335         Reported by Eric Blake.
5336
5337 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5338
5339         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
5340         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
5341         limit.
5342         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
5343         compareseq was aborted.
5344
5345 2008-09-14  Bruno Haible  <bruno@clisp.org>
5346
5347         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
5348         yvec_edit_count.
5349         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
5350         (fstrcmp_bounded): Simplify result computation accordingly.
5351
5352 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5353
5354         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
5355         (fstrcmp): Define in terms of fstrcmp_bounded.
5356         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
5357         lower_bound argument.
5358         Return quickly if the result is certainly < lower_bound.
5359         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
5360
5361 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5362
5363         * lib/diffseq.h (EARLY_ABORT): New macro.
5364         (compareseq): Change return type to bool. Return true when EARLY_ABORT
5365         evaluates to true.
5366
5367 2008-09-14  Bruno Haible  <bruno@clisp.org>
5368
5369         * modules/perror-tests: New file.
5370         * tests/test-perror.sh: New file.
5371         * tests/test-perror.c: New file.
5372
5373         New module 'perror'.
5374         * lib/stdio.in.h (perror): New declaration.
5375         * lib/perror.c: New file.
5376         * m4/perror.m4: New file.
5377         * modules/perror: New file.
5378         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
5379         * doc/posix-functions/perror.texi: Mention the perror module.
5380         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
5381         REPLACE_PERROR.
5382         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
5383         REPLACE_PERROR.
5384
5385 2008-09-14  Bruno Haible  <bruno@clisp.org>
5386
5387         * modules/stdio (Makefile.am): Reorder to match the order in
5388         lib/stdio.in.h.
5389         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5390
5391 2008-09-13  Bruno Haible  <bruno@clisp.org>
5392
5393         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
5394
5395 2008-09-13  Bruno Haible  <bruno@clisp.org>
5396
5397         Extend strerror to cover the added errno values.
5398         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
5399         (rpl_strerror): Provide error messages for the added errno values and
5400         for the WSA* values.
5401         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
5402         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
5403         strerror.
5404         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
5405         * modules/strerror (Depends-on): Add errno.
5406         * doc/posix-functions/strerror.texi: Document the change.
5407         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
5408         and EOVERFLOW.
5409
5410 2008-09-13  Bruno Haible  <bruno@clisp.org>
5411
5412         * modules/EOVERFLOW: Remove file.
5413         * m4/eoverflow.m4: Remove file.
5414         * modules/EOVERFLOW-tests: Remove file.
5415         * tests/test-EOVERFLOW.c: Remove file.
5416         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
5417         * modules/ftell (Depends-on): Likewise.
5418         * modules/getdelim (Depends-on): Likewise.
5419         * modules/getugroups (Depends-on): Likewise.
5420         * modules/poll (Depends-on): Likewise.
5421         * modules/snprintf (Depends-on): Likewise.
5422         * modules/sprintf-posix (Depends-on): Likewise.
5423         * modules/vasnprintf (Depends-on): Likewise.
5424         * modules/vasprintf (Depends-on): Likewise.
5425         * modules/vfprintf-posix (Depends-on): Likewise.
5426         * modules/vsnprintf (Depends-on): Likewise.
5427         * modules/vsprintf-posix (Depends-on): Likewise.
5428         * modules/xvasprintf (Depends-on): Likewise.
5429         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5430         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
5431         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
5432         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
5433         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5434         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
5435         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
5436         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
5437         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5438         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
5439         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
5440         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
5441         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5442         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
5443         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
5444         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
5445         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5446         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
5447         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
5448         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
5449         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5450         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
5451         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
5452         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
5453         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
5454         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5455         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
5456         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
5457         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
5458         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
5459         * MODULES.html.sh: Remove EOVERFLOW.
5460         * NEWS: Mention the change.
5461
5462 2008-09-13  Bruno Haible  <bruno@clisp.org>
5463
5464         * modules/errno-tests: New file.
5465         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
5466
5467         * lib/errno.in.h: New file.
5468         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
5469         * modules/errno: New file.
5470         * doc/posix-headers/errno.texi: Update documentation.
5471         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
5472
5473 2008-09-13  Bruno Haible  <bruno@clisp.org>
5474
5475         * tests/test-poll.c: Use #if for native Windows, rather than testing
5476         __MSVCRT__.
5477
5478 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5479             Bruno Haible  <bruno@clisp.org>
5480
5481         * lib/glob.c: Don't include <pwd.h> on native Windows.
5482         (WINDOWS32): New macro.
5483         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
5484
5485 2008-09-13  Bruno Haible  <bruno@clisp.org>
5486
5487         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
5488         (ETIMEDOUT): Remove macro.
5489         (glthread_cond_timedwait_multithreaded): New declaration.
5490         (glthread_cond_timedwait): Use it.
5491         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
5492         (glthread_cond_timedwait_multithreaded): New function.
5493
5494 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5495
5496         * modules/poll-tests: Do not check for io.h.
5497         * tests/test-poll.c: Check for __MSVCRT__ instead.
5498
5499 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5500
5501         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
5502         * modules/poll-tests: Add inet_pton, stdbool, sockets.
5503         * tests/test-poll.c: Use them.  Use _pipe on Windows.
5504
5505 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
5506
5507         * modules/poll-tests: New.
5508         * tests/test-poll.c: New.
5509
5510 2008-09-12  Eric Blake  <ebb9@byu.net>
5511
5512         frexp: test for NetBSD failure on -0.0
5513         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
5514         not all, bugs from NetBSD 3.0 have been fixed.
5515         * doc/posix-functions/frexp.texi (frexp): Document bug.
5516         Reported by Thomas Klausner.
5517
5518         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
5519         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
5520         literal -0.0.
5521         Reported by Jonathan C. Patschke <jp@centtech.com>.
5522
5523 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5524
5525         * lib/glthread/cond.h: Use dummy implementation also if
5526         USE_WIN32_THREADS.
5527
5528 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5529
5530         * modules/fnmatch-posix (License): Change to LGPLv2+.
5531         * modules/fnmatch-gnu (License): Likewise.
5532
5533 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5534
5535         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
5536
5537 2008-09-11  Jim Meyering  <meyering@redhat.com>
5538
5539         * users.txt: Add gtk-vnc.
5540
5541 2008-09-08  Simon Josefsson  <simon@josefsson.org>
5542
5543         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
5544         rotate amounts.
5545
5546         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
5547         required for 16-bit and 8-bit rotates.
5548         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
5549         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
5550         UINT8_MAX instead of hard-coded constants.
5551         Suggested by Paul Eggert.
5552
5553 2008-09-07  Bruno Haible  <bruno@clisp.org>
5554
5555         * tests/test-striconveh.c (main): Check behaviour when converting from
5556         UTF-7.
5557
5558         Make striconveh work better with stateful encodings.
5559         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
5560         that iconv does not increment the inptr when returning -1/EINVAL.
5561
5562 2008-09-07  Bruno Haible  <bruno@clisp.org>
5563
5564         * build-aux/config.rpath: Update according to libtool-2.2.6.
5565         * build-aux/config.libpath: Likewise.
5566
5567 2008-09-06  Bruno Haible  <bruno@clisp.org>
5568
5569         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
5570         * lib/freadptr.c (freadptr): Likewise.
5571         * lib/freadseek.c (freadptrinc): Likewise.
5572         Reported by Simon Josefsson.
5573
5574 2008-09-06  Bruno Haible  <bruno@clisp.org>
5575
5576         * modules/freadptr (License): Change to LGPLv2+.
5577         * modules/freadseek (License): Likewise.
5578         Suggested by Eric Blake.
5579
5580         * modules/memchr2 (License): Change to LGPLv2+.
5581         Approved by Eric Blake.
5582
5583 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5584             Bruno Haible  <bruno@clisp.org>
5585
5586         Make gnulib-tool work with native 'sed' on AIX.
5587         * gnulib-tool (sed_noop): New variable.
5588         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
5589         func_add_or_update, func_create_testdir): Use it to initialize sed
5590         script variables.
5591         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
5592
5593 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
5594             Bruno Haible  <bruno@clisp.org>
5595
5596         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
5597         also works after #include directives.
5598
5599 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
5600
5601         getdate.y: reject an out-of-range timezone value
5602         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
5603         the range [-24...+24].  When specified with only one or two digits,
5604         * tests/test-getdate.c: Tests for the fix.
5605         * doc/getdate.texi: Document this change.
5606
5607 2008-09-03  Bruno Haible  <bruno@clisp.org>
5608
5609         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
5610
5611 2008-09-02  Simon Josefsson  <simon@josefsson.org>
5612
5613         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
5614         <bruce.korb@gmail.com> with ideas from Ben Pfaff
5615         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
5616         Blake <ebb9@byu.net>.
5617
5618         * tests/test-bitrotate.c: Add more test vectors.
5619
5620 2008-09-02  Eric Blake  <ebb9@byu.net>
5621
5622         vasnprintf-posix: handle large precision via %.*d
5623         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
5624         when handling it ourselves.
5625         * tests/test-vasnprintf-posix.c (test_function): Add test.
5626         * tests/test-snprintf-posix.h (test_function): Likewise.
5627         * tests/test-sprintf-posix.h (test_function): Likewise.
5628         * tests/test-vasprintf-posix.c (test_function): Likewise.
5629         Reported by Alain Guibert.
5630
5631 2008-09-01  Eric Blake  <ebb9@byu.net>
5632
5633         c-stack: make configure-time check more robust
5634         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
5635         successful sigaction call.
5636         Reported by Tom G. Christensen.
5637
5638 2008-09-01  Bruno Haible  <bruno@clisp.org>
5639
5640         New module 'findprog-lgpl'.
5641         * modules/findprog-lgpl: New file.
5642         * lib/findprog-lgpl.c: New file.
5643         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
5644         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
5645         to decide whether to use strdup or xstrdup, concatenated_filename or
5646         xconcatenated_filename.
5647
5648 2008-09-01  Bruno Haible  <bruno@clisp.org>
5649
5650         Split module 'concat-filename' into 'concat-filename' (LGPL) and
5651         'xconcat-filename' (GPL).
5652         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
5653         (License): Change to LGPLv2+.
5654         * modules/xconcat-filename: New file.
5655         * lib/concat-filename.h (concatenated_filename): Change specification.
5656         (xconcatenated_filename): New declaration.
5657         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
5658         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
5659         memory situations.
5660         * lib/xconcat-filename.c: New file.
5661         * NEWS: Mention the change.
5662         * lib/findprog.c: Include concat-filename.h, not filename.h.
5663         (find_in_path): Use xconcatenated_filename instead of
5664         concatenated_filename.
5665         * lib/javacomp.c: Include concat-filename.h, not filename.h.
5666         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
5667         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
5668         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
5669         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
5670         instead of concatenated_filename.
5671         * lib/javaexec.c: Include concat-filename.h, not filename.h.
5672         (execute_java_class): Use xconcatenated_filename instead of
5673         concatenated_filename.
5674         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
5675         * modules/javacomp (Depends-on): Likewise.
5676         * modules/javaexec (Depends-on): Likewise.
5677
5678 2008-09-01  Bruno Haible  <bruno@clisp.org>
5679
5680         Split module 'filename' into 'filename' and 'concat-filename'.
5681         * modules/filename: Keep only lib/filename.h.
5682         (License): Change to LGPLv2+.
5683         * modules/concat-filename: New file, extracted from modules/filename.
5684         * lib/filename.h (concatenated_filename): Remove declaration.
5685         * lib/concat-filename.h: New file, extracted from lib/filename.h.
5686         * lib/concat-filename.c: Include concat-filename.h.
5687         * NEWS: Mention the change.
5688
5689 2008-09-01  Simon Josefsson  <simon@josefsson.org>
5690
5691         * lib/bitrotate.h (rotl8, rotr8): Add.
5692
5693         * modules/bitrotate (configure.ac): Need
5694         AC_REQUIRE([AC_C_INLINE]).
5695         (Description): Mention stdint.h.  Reported by Bruno Haible
5696         <bruno@clisp.org>.
5697
5698         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
5699         Paolo Bonzini <bonzini@gnu.org>.
5700
5701 2008-08-31  Bruno Haible  <bruno@clisp.org>
5702
5703         Assume Solaris specific bi-arch conventions on Solaris systems.
5704         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
5705         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
5706         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
5707         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
5708         like acl_libdirstem.
5709         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
5710         acl_libdirstem.
5711         * NEWS: Mention the change.
5712         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
5713
5714 2008-08-31  Jim Meyering  <meyering@redhat.com>
5715
5716         * lib/strftime.h: Add comments describing the two added arguments.
5717
5718         remove duplicate #include directives
5719         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
5720         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
5721
5722 2008-08-31  Bruno Haible  <bruno@clisp.org>
5723
5724         New module 'sigpipe-die'.
5725         * modules/sigpipe-die: New file.
5726         * lib/sigpipe-die.h: New file.
5727         * lib/sigpipe-die.c: New file.
5728         * MODULES.html.sh (Signal handling): Add sigpipe-die.
5729
5730 2008-08-31  Bruno Haible  <bruno@clisp.org>
5731
5732         Don't override previously installed signal handlers.
5733         * lib/fatal-signal.c (saved_sigactions): New variable.
5734         (uninstall_handlers): Reset the signal to the saved handler, not
5735         to SIG_DFL (except when ignored).
5736         (install_handlers): Save the previous handlers.
5737
5738 2008-08-30  Bruno Haible  <bruno@clisp.org>
5739
5740         * gnulib-tool (func_reset_sigpipe): New function.
5741         (func_get_automake_snippet, func_modules_transitive_closure,
5742         func_import): Invoke it before a join command that reads from stdin,
5743         to avoid "echo: write error: Broken pipe" error messages on stderr.
5744         Reported by Sam Steingold <sds@gnu.org>.
5745
5746 2008-08-30  Bruno Haible  <bruno@clisp.org>
5747
5748         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
5749         Code copied from m4/open.m4.
5750         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
5751         access and the filename ends in a slash. Code copied from lib/open.c.
5752         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
5753         * tests/test-fopen.c (main): Check against bug with trailing slash.
5754
5755 2008-08-29  Bruno Haible  <bruno@clisp.org>
5756
5757         Avoid some "gcc -pedantic" warnings.
5758         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
5759         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
5760         * lib/dirent.in.h: Likewise.
5761         * lib/fcntl.in.h: Likewise.
5762         * lib/float.in.h: Likewise.
5763         * lib/iconv.in.h: Likewise.
5764         * lib/inttypes.in.h: Likewise.
5765         * lib/locale.in.h: Likewise.
5766         * lib/math.in.h: Likewise.
5767         * lib/netinet_in.in.h: Likewise.
5768         * lib/search.in.h: Likewise.
5769         * lib/signal.in.h: Likewise.
5770         * lib/stdarg.in.h: Likewise.
5771         * lib/stdint.in.h: Likewise.
5772         * lib/stdio.in.h: Likewise.
5773         * lib/stdlib.in.h: Likewise.
5774         * lib/string.in.h: Likewise.
5775         * lib/strings.in.h: Likewise.
5776         * lib/sys_select.in.h: Likewise.
5777         * lib/sys_socket.in.h: Likewise.
5778         * lib/sys_stat.in.h: Likewise.
5779         * lib/sys_time.in.h: Likewise.
5780         * lib/sysexits.in.h: Likewise.
5781         * lib/time.in.h: Likewise.
5782         * lib/unistd.in.h: Likewise.
5783         * lib/wchar.in.h: Likewise.
5784         * lib/wctype.in.h: Likewise.
5785         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
5786         * modules/fchdir (Makefile.am): Likewise.
5787         * modules/fcntl (Makefile.am): Likewise.
5788         * modules/float (Makefile.am): Likewise.
5789         * modules/iconv_open (Makefile.am): Likewise.
5790         * modules/inttypes (Makefile.am): Likewise.
5791         * modules/locale (Makefile.am): Likewise.
5792         * modules/math (Makefile.am): Likewise.
5793         * modules/netinet_in (Makefile.am): Likewise.
5794         * modules/search (Makefile.am): Likewise.
5795         * modules/signal (Makefile.am): Likewise.
5796         * modules/stdarg (Makefile.am): Likewise.
5797         * modules/stdint (Makefile.am): Likewise.
5798         * modules/stdio (Makefile.am): Likewise.
5799         * modules/stdlib (Makefile.am): Likewise.
5800         * modules/string (Makefile.am): Likewise.
5801         * modules/strings (Makefile.am): Likewise.
5802         * modules/sys_select (Makefile.am): Likewise.
5803         * modules/sys_socket (Makefile.am): Likewise.
5804         * modules/sys_stat (Makefile.am): Likewise.
5805         * modules/sys_time (Makefile.am): Likewise.
5806         * modules/sysexits (Makefile.am): Likewise.
5807         * modules/time (Makefile.am): Likewise.
5808         * modules/unistd (Makefile.am): Likewise.
5809         * modules/wchar (Makefile.am): Likewise.
5810         * modules/wctype (Makefile.am): Likewise.
5811         Reported by Reuben Thomas <rrt@sc3d.org>.
5812
5813 2008-08-29  Bruno Haible  <bruno@clisp.org>
5814
5815         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
5816         any more.
5817
5818 2008-08-29  Simon Josefsson  <simon@josefsson.org>
5819
5820         * MODULES.html.sh (Misc): Add bitrotate.
5821
5822         * modules/bitrotate: New file.
5823
5824         * lib/bitrotate.h: New file.
5825
5826         * modules/bitrotate-tests: New file.
5827
5828         * tests/test-bitrotate.c: New file.
5829
5830         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
5831         on the bitrotate module.
5832
5833         * lib/arctwo.c: Use new bitrotate module.
5834
5835 2008-08-29  Jim Meyering  <meyering@redhat.com>
5836
5837         bootstrap: merge changes from coreutils
5838         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
5839         of copied files.  Remove a kludge, now that this is fixed.
5840         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
5841         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
5842         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
5843
5844 2008-08-29  Bruno Haible  <bruno@clisp.org>
5845
5846         * MODULES.html.sh: Remove --cvs-urls option.
5847
5848 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
5849
5850         maint.mk: adjust to file name change
5851         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
5852
5853 2008-08-28  Jim Meyering  <meyering@redhat.com>
5854
5855         * modules/getndelim2 (License): Relicense to LGPLv2+.
5856         Approved by Richard Stallman for the version of 1995, and by
5857         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
5858
5859 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
5860
5861         * lib/getdelim.c (flockfile, funlockfile): Make all of them
5862         dummy if one is not available.  Do not touch them if
5863         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
5864         (getc_maybe_unlocked): New.
5865         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
5866
5867 2008-08-26  Eric Blake  <ebb9@byu.net>
5868
5869         doc/INSTALL: resync from autoconf
5870         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
5871         (INSTALL_PRELUDE): Delete; this is done more efficiently by
5872         moving...
5873         * install.texi [!autoconf]: ...here.  Resync from autoconf.
5874         * INSTALL: Regenerate.
5875         * INSTALL.ISO: New file.
5876         * INSTALL.UTF-8: Likewise.
5877
5878 2008-08-26  Jim Meyering  <meyering@redhat.com>
5879
5880         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
5881         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
5882         these definitions conditional, so that they may be overridden, too.
5883
5884 2008-08-26  Bruno Haible  <bruno@clisp.org>
5885
5886         Generate INSTALL file variants with prettier quotes.
5887         * doc/Makefile (INSTALL_PRELUDE): New macro.
5888         (INSTALL): Use it.
5889         (INSTALL.ISO, INSTALL.UTF-8): New rules.
5890
5891 2008-08-26  Bruno Haible  <bruno@clisp.org>
5892
5893         Run makeinfo in an English locale.
5894         * doc/Makefile (MAKEINFO): New variable.
5895
5896 2008-08-26  Bruno Haible  <bruno@clisp.org>
5897
5898         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
5899         Suggested by Eric Blake.
5900
5901 2008-08-25  Bruno Haible  <bruno@clisp.org>
5902
5903         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
5904
5905 2008-08-25  Eric Blake  <ebb9@byu.net>
5906
5907         c-stack: test that stack overflow can be caught
5908         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
5909         that platform allows handling stack overflow; at least OS/2 EMX
5910         has sigaltstack, but crashes before transferring control to
5911         handler on stack overflow.
5912         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
5913         check for HAVE_STACK_OVERFLOW_HANDLING.
5914         Reported by Elbert Pol.
5915
5916 2008-08-25  Bruno Haible  <bruno@clisp.org>
5917
5918         * doc/posix-functions/strftime.texi: Fix description of strftime
5919         module.
5920
5921 2008-08-24  Bruno Haible  <bruno@clisp.org>
5922
5923         * tests/uniwidth/test-uc_width2.c: New file.
5924         * tests/uniwidth/test-uc_width2.sh: New file.
5925         * modules/uniwidth/width-tests (Files): Add the new files.
5926         (TESTS): Add uniwidth/test-uc_width2.sh.
5927         (TESTS_ENVIRONMENT): New variable.
5928         (check_PROGRAMS): Add test-uc_width2.
5929         (test_uc_width2_SOURCES): New variable.
5930
5931         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
5932         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
5933         not 0x00AB.
5934         Reported by Alexander V. Lukyanov <lav@netis.ru>.
5935
5936 2008-08-22  Eric Blake  <ebb9@byu.net>
5937
5938         test-lock, test-tls: mention why a test is skipped
5939         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
5940         skipped.
5941         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
5942
5943         count-one-bits: relax license
5944         * modules/count-one-bits (License): Relicense to LGPLv2+.
5945         Suggested by Ludovic Courtès, approved by Ben Pfaff.
5946
5947 2008-08-22  Andreas Schwab  <schwab@suse.de>
5948
5949         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
5950         Remove spurious space in assignment.
5951
5952 2008-08-21  Simon Josefsson  <simon@josefsson.org>
5953
5954         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
5955         Paul Eggert <eggert@CS.UCLA.EDU>.
5956
5957 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
5958
5959         * modules/gettext: Add m4/threadlib.m4.
5960
5961 2008-08-19  Eric Blake  <ebb9@byu.net>
5962
5963         test-c-stack: fix compilation failure on FreeBSD 5.0
5964         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
5965         headers before <sys/resource.h>.
5966         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
5967         the bug.
5968         Reported by Nelson H. F. Beebe.
5969
5970         strverscmp: migrate from "strverscmp.h" to <string.h>
5971         * modules/string (Makefile.am): Add new hooks.
5972         * modules/strverscmp (Files): Remove strverscmp.h.
5973         (Depends-on): Add string.
5974         (configure.ac): Add indicator.
5975         (Include): Mention new header.
5976         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
5977         defaults.
5978         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
5979         results.
5980         * lib/strverscmp.h: Delete.
5981         * lib/string.in.h (strverscmp): Provide declaration, when needed.
5982         * tests/test-strverscmp.c (includes): Adjust client.
5983         * lib/check-version.c (includes): Likewise.
5984         * NEWS: Document the change.
5985
5986         strverscmp: add unit test
5987         * modules/strverscmp-tests: New file.
5988         * tests/test-strverscmp.c: Likewise.
5989
5990 2008-08-19  Simon Josefsson  <simon@josefsson.org>
5991
5992         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
5993         regarding Windows crypto stuff, from Mono.
5994
5995 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
5996
5997         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
5998         if present, for intel RND.  Return error on failures.
5999
6000 2008-08-18  Ben Pfaff  <blp@gnu.org>
6001
6002         gitlog-to-changelog: give better diagnostic for failed pipe-open
6003         * build-aux/gitlog-to-changelog: Improve error message: suggest
6004         that the version of Git may be too old.
6005
6006 2008-08-18  Simon Josefsson  <simon@josefsson.org>
6007
6008         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
6009         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
6010
6011 2008-08-18  Bruno Haible  <bruno@clisp.org>
6012
6013         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
6014         pthread_in_use().
6015
6016 2008-08-18  Bruno Haible  <bruno@clisp.org>
6017
6018         * lib/glthread/threadlib.c: Include <pthread.h>.
6019
6020 2008-08-18  Bruno Haible  <bruno@clisp.org>
6021
6022         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
6023         glthread_recursive_lock_* macros.
6024         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
6025         Fix syntax error.
6026
6027 2008-08-18  Bruno Haible  <bruno@clisp.org>
6028
6029         * lib/glthread/thread.c: Avoid forcing a context switch right after
6030         thread creation.
6031
6032 2008-08-17  Bruno Haible  <bruno@clisp.org>
6033
6034         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
6035         * lib/glthread/thread.h: Provide Win32 specific implementation.
6036         * modules/thread (Files): Add lib/glthread/thread.c.
6037         (Depends-on): Add lock.
6038         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
6039
6040 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6041
6042         New module 'yield'.
6043         * modules/yield: New file.
6044         * lib/glthread/yield.h: New file.
6045         * m4/yield.m4: New file.
6046         * MODULES.html.sh (Multithreading): Add yield.
6047
6048 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6049
6050         New module 'thread'.
6051         * modules/thread: New file.
6052         * lib/glthread/thread.h: New file.
6053         * m4/thread.m4: New file.
6054         * MODULES.html.sh (Multithreading): Add thread.
6055
6056 2008-08-17  Bruno Haible  <bruno@clisp.org>
6057
6058         * lib/glthread/lock.h: Include <stdlib.h> always.
6059         * lib/glthread/tls.h: Likewise.
6060         * lib/glthread/cond.h: Likewise.
6061
6062 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6063
6064         New module 'cond'.
6065         * modules/cond: New file.
6066         * lib/glthread/cond.h: New file.
6067         * lib/glthread/cond.c: New file.
6068         * m4/cond.m4: New file.
6069         * MODULES.html.sh (Multithreading): Add cond.
6070
6071 2008-08-16  Eric Blake  <ebb9@byu.net>
6072
6073         c-stack: fix regression on Irix 5.3 from 2008-06-21
6074         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
6075         sa_sigaction...
6076         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
6077         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
6078         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
6079         * modules/signal (Makefile.am): Use the value.
6080         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
6081         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
6082         * doc/posix-headers/signal.texi (signal.h): Document this
6083         portability issue.
6084         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
6085         Reported by Tom G. Christensen.
6086
6087 2008-08-17  Bruno Haible  <bruno@clisp.org>
6088
6089         New module 'threadlib'.
6090         * modules/threadlib: New file.
6091         * lib/glthread/threadlib.c: New file, extracted from
6092         lib/glthread/lock.c.
6093         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
6094         functions.
6095         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
6096         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
6097         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
6098         macros.
6099         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
6100         (gl_DISABLE_THREADS): Remove macro.
6101         * modules/lock (Files): Remove build-aux/config.rpath.
6102         (Depends-on): Remove havelib. Add threadlib.
6103         (configure.ac-early): Remove section.
6104         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
6105         * modules/tls (Depends-on): Remove lock. Add threadlib.
6106         (Link): New section, copied from threadlib.
6107         * MODULES.html.sh (Multithreading): Add threadlib.
6108
6109 2008-08-14  Bruno Haible  <bruno@clisp.org>
6110
6111         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
6112         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
6113         glthread_rwlock_unlock, glthread_rwlock_destroy,
6114         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
6115         glthread_recursive_lock_destroy): Define as macros always.
6116         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
6117         glthread_lock_lock.
6118         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
6119         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
6120         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
6121         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
6122         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
6123         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
6124         (glthread_recursive_lock_lock_func): Renamed from
6125         glthread_recursive_lock_lock.
6126         (glthread_recursive_lock_unlock_func): Renamed from
6127         glthread_recursive_lock_unlock.
6128         (glthread_recursive_lock_destroy_func): Renamed from
6129         glthread_recursive_lock_destroy.
6130
6131 2008-08-14  Bruno Haible  <bruno@clisp.org>
6132
6133         * lib/glthread/lock.h: Renamed from lib/lock.h.
6134         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
6135         * lib/glthread/tls.h: Renamed from lib/tls.h.
6136         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
6137         * lib/fstrcmp.c: Update includes.
6138         * lib/strsignal.c: Update includes.
6139         * modules/lock (Files, Makefile.am): Update.
6140         (Include): Change to "glthread/lock.h".
6141         * modules/tls (Files, Makefile.am): Update.
6142         (Include): Change to "glthread/tls.h".
6143         * tests/test-lock.c: Update includes.
6144         * tests/test-tls.c: Update includes.
6145         * NEWS: Mention the renamed header files.
6146
6147 2008-08-11  Jim Meyering  <meyering@redhat.com>
6148
6149         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
6150
6151 2008-08-11  Eric Blake  <ebb9@byu.net>
6152
6153         test-c-stack: avoid C99-ism
6154         * tests/test-c-stack.c (main): Fix whitespace, move declaration
6155         before statement.
6156         Reported by Alain Guibert.
6157
6158 2008-08-10  Jim Meyering  <meyering@redhat.com>
6159
6160         ensure that return value of uinttostr et al are not ignored
6161         * lib/inttostr.h (__GNUC_PREREQ): Define.
6162         (__attribute_warn_unused_result__): Define.
6163         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
6164
6165 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
6166
6167         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
6168         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
6169
6170 2008-08-07  Jim Meyering  <meyering@redhat.com>
6171
6172         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
6173
6174         * modules/mkstemp (License): Relicense under LGPLv2+.
6175         * modules/tempname (License): Likewise.
6176
6177 2008-08-06  Bruno Haible  <bruno@clisp.org>
6178
6179         * lib/poll.c (poll): Further micro-optimization.
6180
6181 2008-08-06  Jim Meyering  <meyering@redhat.com>
6182
6183         inet_pton.c: use locale-independent tolower
6184         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
6185         (inet_pton6): Use c_tolower rather than tolower.
6186         * modules/inet_pton (Depends-on): Add c-ctype.
6187
6188 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
6189
6190         * lib/poll.c (poll): Avoid division when timeout is 0, cache
6191         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
6192
6193 2008-08-06  Jim Meyering  <meyering@redhat.com>
6194
6195         * modules/inet_pton (License): Relicense under LGPLv2+.
6196
6197 2008-08-03  Bruno Haible  <bruno@clisp.org>
6198
6199         Additional non-aborting API for lock and tls.
6200         * lib/lock.h: Include <errno.h>.
6201         (glthread_lock_init): New macro/function.
6202         (gl_lock_init): Define as wrapper around glthread_lock_init.
6203         (glthread_lock_lock): New macro/function.
6204         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
6205         (glthread_lock_unlock): New macro/function.
6206         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
6207         (glthread_lock_destroy): New macro/function.
6208         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
6209         (glthread_rwlock_init): New macro/function.
6210         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
6211         (glthread_rwlock_rdlock): New macro/function.
6212         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
6213         (glthread_rwlock_wrlock): New macro/function.
6214         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
6215         (glthread_rwlock_unlock): New macro/function.
6216         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
6217         (glthread_rwlock_destroy): New macro/function.
6218         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
6219         (glthread_recursive_lock_init): New macro/function.
6220         (gl_recursive_lock_init): Define as wrapper around
6221         glthread_recursive_lock_init.
6222         (glthread_recursive_lock_lock): New macro/function.
6223         (gl_recursive_lock_lock): Define as wrapper around
6224         glthread_recursive_lock_lock.
6225         (glthread_recursive_lock_unlock): New macro/function.
6226         (gl_recursive_lock_unlock): Define as wrapper around
6227         glthread_recursive_lock_unlock.
6228         (glthread_recursive_lock_destroy): New macro/function.
6229         (gl_recursive_lock_destroy): Define as wrapper around
6230         glthread_recursive_lock_destroy.
6231         (glthread_once): New macro/function.
6232         (gl_once): Define as wrapper around glthread_once.
6233         Update function declarations.
6234         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
6235         glthread_rwlock_init. Return error code.
6236         (glthread_rwlock_rdlock_multithreaded): Renamed from
6237         glthread_rwlock_rdlock. Return error code.
6238         (glthread_rwlock_wrlock_multithreaded): Renamed from
6239         glthread_rwlock_wrlock. Return error code.
6240         (glthread_rwlock_unlock_multithreaded): Renamed from
6241         glthread_rwlock_unlock. Return error code.
6242         (glthread_rwlock_destroy_multithreaded): Renamed from
6243         glthread_rwlock_destroy. Return error code.
6244         (glthread_recursive_lock_init_multithreaded): Renamed from
6245         glthread_recursive_lock_init. Return error code.
6246         (glthread_recursive_lock_lock_multithreaded): Renamed from
6247         glthread_recursive_lock_lock. Return error code.
6248         (glthread_recursive_lock_unlock_multithreaded): Renamed from
6249         glthread_recursive_lock_unlock. Return error code.
6250         (glthread_recursive_lock_destroy_multithreaded): Renamed from
6251         glthread_recursive_lock_destroy. Return error code.
6252         (glthread_once_call): Make static.
6253         (glthread_once_multithreaded): Renamed from glthread_once.
6254         * lib/tls.h: Include <errno.h>.
6255         (glthread_tls_key_init): New macro/function.
6256         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
6257         (glthread_tls_set): New macro/function.
6258         (gl_tls_set): Define as wrapper around glthread_tls_set.
6259         (glthread_tls_key_destroy): New macro/function.
6260         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
6261         Update function declarations.
6262         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
6263         glthread_tls_get.
6264         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
6265
6266 2008-08-04  Eric Blake  <ebb9@byu.net>
6267
6268         gnumakefile: use space, not TAB, outside of targets
6269         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
6270
6271 2008-08-02  Jim Meyering  <meyering@redhat.com>
6272
6273         getdate.y: avoid locale-dependent date parsing failure
6274         In Turkish locales, getdate would fail to recognize keywords
6275         containing a lowercase "i".  The solution is not to rely on
6276         locale-sensitive case-conversion.
6277         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
6278         (lookup_word): Use c_toupper in place of toupper.
6279         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
6280         Reported by Vefa Bicakci <bicave@superonline.com> in
6281         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
6282         * modules/getdate (Depends-on): Add c-ctype.
6283
6284 2008-08-02  Bruno Haible  <bruno@clisp.org>
6285
6286         * gnulib-tool (func_import): When updating or creating a .gitignore
6287         file, prepend each added line with a slash, and ignore leading slashes
6288         from the existing lines.
6289         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
6290
6291 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6292
6293         Portability fix for GNU make 3.79.1.
6294         * top/GNUmakefile: Avoid 'else COND', which older GNU make
6295         versions do not understand.
6296
6297 2008-08-01  Bruno Haible  <bruno@clisp.org>
6298
6299         Work around bug of HP-UX 10.20 cc with -0.0 literal.
6300         * tests/test-isnanf.h (zero): New variable.
6301         (main): Avoid literal -0.0f.
6302         * tests/test-isnand.h (zero): New variable.
6303         (main): Avoid literal -0.0.
6304         * tests/test-isnanl.h (zero): New variable.
6305         (main): Avoid literal -0.0L.
6306         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
6307         (test_float, test_double, test_long_double): Avoid literals -0.0f,
6308         -0.0, -0.0L.
6309         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
6310         (test_signbitd): Avoid literal -0.0.
6311         (test_signbitl): Avoid literal -0.0L.
6312         * tests/test-ceilf1.c (zero): New variable.
6313         (main): Avoid literal -0.0f.
6314         * tests/test-ceill.c (zero): New variable.
6315         (main): Avoid literal -0.0L.
6316         * tests/test-floorf1.c (zero): New variable.
6317         (main): Avoid literal -0.0f.
6318         * tests/test-floorl.c (zero): New variable.
6319         (main): Avoid literal -0.0L.
6320         * tests/test-roundf1.c (zero): New variable.
6321         (main): Avoid literal -0.0f.
6322         * tests/test-round1.c (zero): New variable.
6323         (main): Avoid literal -0.0.
6324         * tests/test-roundl.c (zero): New variable.
6325         (main): Avoid literal -0.0L.
6326         * tests/test-truncf1.c (zero): New variable.
6327         (main): Avoid literal -0.0f.
6328         * tests/test-trunc1.c (zero): New variable.
6329         (main): Avoid literal -0.0.
6330         * tests/test-truncl.c (zero): New variable.
6331         (main): Avoid literal -0.0L.
6332         * tests/test-frexp.c (zero): New variable.
6333         (main): Avoid literal -0.0.
6334         * tests/test-frexpl.c (zero): New variable.
6335         (main): Avoid literal -0.0L.
6336         * tests/test-ldexpl.c (zero): New variable.
6337         (main): Avoid literal -0.0L.
6338         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
6339         (zerod, zerol): New variables.
6340         (test_function): Avoid literals -0.0, -0.0L.
6341         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
6342         (zerod, zerol): New variables.
6343         (test_function): Avoid literals -0.0, -0.0L.
6344         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
6345         (zerod, zerol): New variables.
6346         (test_function): Avoid literals -0.0, -0.0L.
6347         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
6348         (zerod, zerol): New variables.
6349         (test_function): Avoid literals -0.0, -0.0L.
6350         * tests/test-strtod.c (zero): New variable.
6351         (main): Avoid literal -0.0.
6352         Reported by Jonathan C. Patschke <jp@centtech.com>.
6353
6354 2008-07-31  Jim Meyering  <meyering@redhat.com>
6355
6356         sha256.h: correct definition of SHA224_DIGEST_SIZE
6357         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
6358         Reported by Paulie Pena IV <paulie4@gmail.com>.
6359         Define as 224 / 8, rather than as a literal.
6360         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
6361         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
6362         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
6363
6364 2008-07-31  Bruno Haible  <bruno@clisp.org>
6365
6366         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
6367         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
6368         Reported by Jonathan Patschke <jp@centtech.com>.
6369
6370 2008-07-31  Bruno Haible  <bruno@clisp.org>
6371
6372         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
6373         Reported by Paolo Bonzini <bonzini@gnu.org>.
6374
6375 2008-07-30  Eric Blake  <ebb9@byu.net>
6376
6377         test-strtod: allow compilation without -lm
6378         * tests/test-strtod.c (main): Avoid link dependence on fabs.
6379         Reported by Dennis Clarke <blastwave@gmail.com>.
6380
6381 2008-07-28  Jim Meyering  <meyering@redhat.com>
6382
6383         bootstrap: work also when there are no .po files in po/
6384         * build-aux/bootstrap (update_po_files): Complete the change
6385         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
6386
6387 2008-07-27  Jim Meyering  <meyering@redhat.com>
6388
6389         * users.txt: Add zile.
6390
6391 2008-07-26  Ben Pfaff  <blp@gnu.org>
6392
6393         Add missing dependencies on new m4/exponent[fdl].m4 files.
6394         * modules/isnanf-nolibm: Add m4/exponentf.m4.
6395         * modules/isnand-nolibm: Add m4/exponentd.m4.
6396         * modules/isnanl-nolibm: Add m4/exponentl.m4.
6397         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
6398         m4/isnan[fdl].m4, because the macros actually used moved.
6399         Reported by Jim Meyering.
6400
6401 2008-07-14  Ben Pfaff  <blp@gnu.org>
6402
6403         Add isinf module.
6404         * lib/isinf.c: New file.
6405         * lib/math.in.h: Define isinf macro if we have decided to replace
6406         it.
6407         * m4/isinf.m4: New file.
6408         * m4/math_h.m4: Initialize and substitute variables for isinf
6409         module.
6410         * modules/isinf: New file.
6411         * modules/isinf-tests: New file.
6412         * modules/math: Add substitutions for new module.
6413         * tests/test-isinf.c: New file.
6414         * doc/posix-functions/isinf.texi: Mention new module.
6415         * MODULES.html.sh: Mention new module.
6416
6417 2008-07-14  Ben Pfaff  <blp@gnu.org>
6418
6419         Factor out some macros for use by additional modules.
6420         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
6421         exponentf.m4.
6422         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
6423         exponentd.m4.
6424         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
6425         file exponentl.m4.
6426         * m4/exponentf.m4: New file.
6427         * m4/exponentd.m4: New file.
6428         * m4/exponentl.m4: New file.
6429         * modules/isnanf: Use new file m4/exponentf.m4.
6430         * modules/isnand: Use new file m4/exponentd.m4.
6431         * modules/isnanl: Use new file m4/exponentl.m4.
6432
6433 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
6434
6435         mktime.c: normalize tp->tm_isdst value to -1/0/1.
6436         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
6437         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
6438         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
6439
6440         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
6441         readlink on platforms without PATH_MAX.
6442
6443 2008-07-21  Eric Blake  <ebb9@byu.net>
6444
6445         Warn, not fail, on stale version.
6446         * top/GNUmakefile (_curr-ver): Tone down previous patch.
6447
6448         Don't allow installation with stale devel version number.
6449         * top/GNUmakefile (_is-install-target): New macro.
6450         (_curr-ver): Forbid installation with stale version number.
6451
6452 2008-07-20  Bruno Haible  <bruno@clisp.org>
6453
6454         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
6455         TESTS_ENVIRONMENT.
6456         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
6457
6458 2008-07-20  Bruno Haible  <bruno@clisp.org>
6459
6460         * lib/c-stack.h (c_stack_action): Add documentation.
6461         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
6462
6463 2008-07-20  Bruno Haible  <bruno@clisp.org>
6464
6465         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
6466         * modules/readlink (License): Likewise.
6467
6468 2008-07-17  Eric Blake  <ebb9@byu.net>
6469
6470         * modules/c-stack (Link): Fix typo.
6471
6472         Make c-stack use libsigsegv, when available.
6473         * modules/c-stack (Depends-on): Add libsigsegv.
6474         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
6475         needed.
6476         * lib/c-stack.c (SIGSTKSZ): Define fallback.
6477         (segv_handler, overflow_handler, c_stack_action)
6478         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
6479         implementation when libsigsegv is available, but only when using
6480         the library is necessary.
6481         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
6482         comment, explaining why XSI check fails on Linux.
6483         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
6484         * tests/test-c-stack2.sh: Tweak skip message.
6485         * NEWS: Document new link-time requirements.
6486
6487 2008-07-16  Eric Blake  <ebb9@byu.net>
6488
6489         c-stack: Expose false positives when not using libsigsegv.
6490         * modules/c-stack-tests (Files): Expand test.
6491         * tests/test-c-stack.c (main): Add means to conditionally trigger
6492         non-overflow SIGSEGV.
6493         * tests/test-c-stack2.sh: New file.
6494
6495 2008-07-14  Bruno Haible  <bruno@clisp.org>
6496
6497         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
6498         Reported by Eric Blake.
6499
6500 2008-07-14  Sam Steingold  <sds@gnu.org>
6501             Bruno Haible  <bruno@clisp.org>
6502
6503         New module libsigsegv.
6504         * modules/libsigsegv: New file.
6505         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
6506         modifications.
6507         * MODULES.html.sh (Signal handling): New section.
6508
6509 2008-07-14  Bruno Haible  <bruno@clisp.org>
6510
6511         * modules/unictype/ctype-* (Description): Add the word "function".
6512         Improves the resulting doc in MODULES.html.
6513
6514 2008-07-12  Ben Pfaff  <blp@gnu.org>
6515
6516         Add longlong module.
6517         * modules/longlong: New file.
6518
6519 2008-07-12  Bruno Haible  <bruno@clisp.org>
6520
6521         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
6522         to empty.
6523
6524 2008-07-10  Ben Pfaff  <blp@gnu.org>
6525
6526         Add isnan module.
6527         * doc/posix-functions/isnan.texi: Mention new module.
6528         * lib/math.in.h: Define isnan macro if we have decided to replace
6529         it.
6530         * m4/isnan.m4: New file.
6531         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
6532         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
6533         also.
6534         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
6535         redundancy.
6536         * m4/math_h.m4: Initialize and substitute variables for isnan
6537         module.
6538         * modules/isnan: New file.
6539         * modules/isnan-tests: New file.
6540         * modules/math: Add substitutions for new module.
6541         * tests/test-isnan.c: New file.
6542         * MODULES.html.sh: Mention new module.
6543
6544 2008-07-10  Ben Pfaff  <blp@gnu.org>
6545
6546         Add isnanf module.
6547         * lib/isnanf.m4: New file.
6548         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
6549         (gl_HAVE_ISNANF_IN_LIBM): New macro.
6550         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
6551         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
6552         * modules/isnanf: New file.
6553         * modules/isnanf-tests: New file.
6554         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
6555         files.
6556         * tests/test-isnanf-nolibm.c: factored most of its contents into
6557         new file tests/test-isnanf.h.
6558         * tests/test-isnanf.h: New file.
6559         * tests/test-isnanf.c: New file.
6560         * MODULES.html.sh: Mention new module.
6561         * doc/glibc-functions/isnanf.texi: Mention new module.
6562
6563 2008-07-10  Ben Pfaff  <blp@gnu.org>
6564
6565         Add isnand module.
6566         * lib/isnand.h: New file.
6567         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
6568         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
6569         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
6570         functionality also.
6571         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
6572         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
6573         (gl_HAVE_ISNAND_IN_LIBM): New macro.
6574         * modules/isnand: New file.
6575         * modules/isnand-tests: New file.
6576         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
6577         files.
6578         * tests/test-isnand-nolibm.c: factored most of its contents into
6579         new file tests/test-isnand.h.
6580         * tests/test-isnand.h: New file.
6581         * tests/test-isnand.c: New file.
6582         * MODULES.html.sh: Mention new module.
6583
6584 2008-07-10  Ben Pfaff  <blp@gnu.org>
6585
6586         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
6587         * lib/isnand.h: Rename lib/isnand-nolibm.h.
6588         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
6589         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
6590         * modules/isnanf-nolibm: Update references to renamed files.
6591         * modules/isnand-nolibm: Likewise.
6592         * modules/isnanf-nolibm-tests: Likewise.
6593         * modules/isnand-nolibm-tests: Likewise.
6594         * lib/frexp.c: Likewise.
6595         * lib/isfinite.c: Likewise.
6596         * lib/signbitd.c: Likewise.
6597         * lib/signbitf.c: Likewise.
6598         * lib/vasnprintf.c: Likewise.
6599         * tests/test-ceilf1.c: Likewise.
6600         * tests/test-ceilf2.c: Likewise.
6601         * tests/test-floorf1.c: Likewise.
6602         * tests/test-floorf2.c: Likewise.
6603         * tests/test-frexp.c: Likewise.
6604         * tests/test-round1.c: Likewise.
6605         * tests/test-round2.c: Likewise.
6606         * tests/test-roundf1.c: Likewise.
6607         * tests/test-strtod.c: Likewise.
6608         * tests/test-trunc1.c: Likewise.
6609         * tests/test-trunc2.c: Likewise.
6610         * tests/test-truncf1.c: Likewise.
6611         * tests/test-truncf2.c: Likewise.
6612         * NEWS: Mention the renamed header files.
6613
6614 2008-07-11  Jim Meyering  <meyering@redhat.com>
6615
6616         vc-list-files: make the last-resort awk code more portable
6617         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
6618         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
6619         does not support it.
6620
6621 2008-07-10  Eric Blake  <ebb9@byu.net>
6622
6623         Work with tar's bootstrap.
6624         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
6625         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
6626         an m4 comment.
6627
6628 2008-07-09  Jim Meyering  <meyering@redhat.com>
6629
6630         posix-shell.m4: fix typo that made this test malfunction
6631         * m4/posix-shell.m4: Remove capitalization in variable name.
6632
6633 2008-07-08  Bruno Haible  <bruno@clisp.org>
6634
6635         * m4/onceonly.m4: Update comments.
6636         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6637
6638 2008-07-04  Jim Meyering  <meyering@redhat.com>
6639
6640         * users.txt: Add vc-dwim.
6641         (bison, coreutils): Use the gitweb URL.
6642
6643 2008-07-03  Jim Meyering  <meyering@redhat.com>
6644
6645         * users.txt: Add libffcall.  From Sam Steingold.
6646
6647 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
6648
6649         getdate.y: do not ignore TZ with relative day, month or year offset
6650         * lib/getdate.y (get_date): Move the tz-handling block to follow the
6651         relative-date-handling, since otherwise, the latter would clobber the
6652         sole output (an updated Start value) of the tz-handling block.
6653         * tests/test-getdate.c: Tests for the fix
6654
6655 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6656
6657         Recognize 'foo_LIBRARIES += libgnu.a'.
6658         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
6659         makefile snippet has already specified an installation location,
6660         also using '+='.
6661
6662 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
6663
6664         getdate.y: factor out common actions
6665         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
6666         Use them in place of open-coded actions.
6667
6668 2008-07-01  Simon Josefsson  <simon@josefsson.org>
6669
6670         Add self-test for getdate module.
6671         * modules/getdate-tests: New file.
6672         * tests/test-getdate.c: New file.
6673
6674 2008-06-29  Bruno Haible  <bruno@clisp.org>
6675
6676         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
6677         .gitignore.
6678         Reported by Sylvain Beucler <beuc@beuc.net>.
6679
6680 2008-06-29  Bruno Haible  <bruno@clisp.org>
6681
6682         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
6683         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
6684
6685 2008-06-29  Bruno Haible  <bruno@clisp.org>
6686
6687         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
6688         EXTRA_DIST.
6689         Reported by Sylvain Beucler <beuc@beuc.net>.
6690
6691 2008-06-26  Jim Meyering  <meyering@redhat.com>
6692
6693         make several modules depend on the "open" module
6694         This provides slightly increased consistency when opening-for-write
6695         the name of a non-directory spelled with a trailing slash.
6696         * modules/chdir-safer: Likewise.
6697         * modules/chown: Likewise.
6698         * modules/clean-temp: Likewise.
6699         * modules/copy-file: Likewise.
6700         * modules/fchdir: Likewise.
6701         * modules/fcntl-safer: Likewise.
6702         * modules/pipe: Likewise.
6703         * modules/utime: Likewise.
6704         Prompted by Eric Blake and Bruno Haible.
6705
6706 2008-06-24  Andreas Schwab  <schwab@suse.de>
6707
6708         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
6709         literals can be used as initializers for global variables.
6710
6711 2008-06-23  Eric Blake  <ebb9@byu.net>
6712
6713         Make gnulib-cache.m4 easier to diff.
6714         * gnulib-tool (func_import): Allow newlines when reading cached
6715         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
6716
6717 2008-06-23  Bruno Haible  <bruno@clisp.org>
6718
6719         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
6720         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
6721         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
6722         m4/signalblocking.m4.
6723         (gl_PREREQ_SIGACTION): Don't invoke it.
6724         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
6725         gl_PREREQ_SIG_HANDLER_H.
6726         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
6727         Don't check for sigaction here.
6728
6729 2008-06-23  Bruno Haible  <bruno@clisp.org>
6730
6731         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
6732         (install_handlers): Don't set the SA_RESETHAND flag.
6733
6734 2008-06-23  Bruno Haible  <bruno@clisp.org>
6735
6736         * m4/sigaction.m4: Comment fixes.
6737         * lib/signal.in.h: Likewise.
6738
6739 2008-06-23  Eric Blake  <ebb9@byu.net>
6740
6741         Fix typo.
6742         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
6743
6744         Avoid SA_ namespace.
6745         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
6746         Reported by Ralf Wildenhues.
6747
6748         Avoid test failure due to SA_RESTORER.
6749         * tests/test-sigaction.c (SA_MASK): New macro.
6750         (main): Avoid failing due to extension flags being set.
6751         Reported by Jim Meyering.
6752
6753         Revert use of sig-handler.h in sigprocmask.c.
6754         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
6755         it requires the existence of struct sigaction.
6756         * lib/sigprocmask.c (handler_t): Restore typedef.
6757         (rpl_signal, old_handlers): Use local type.
6758
6759 2008-06-22  Bruno Haible  <bruno@clisp.org>
6760
6761         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
6762         conditionally.
6763         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6764
6765 2008-06-22  Bruno Haible  <bruno@clisp.org>
6766
6767         * doc/posix-functions/siginterrupt.texi: Move note.
6768
6769         * lib/signal.in.h (SA_RESTART): New macro.
6770         * lib/sigaction.c: Update comment.
6771
6772         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
6773
6774         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
6775         (gl_PREREQ_SIGPROCMASK): Invoke it.
6776         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
6777
6778         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
6779
6780         * lib/sigprocmask.c: Update a comment.
6781
6782 2008-06-21  Eric Blake  <ebb9@byu.net>
6783
6784         Use sigaction module rather than signal().
6785         * modules/c-stack (Depends-on): Add sigaction.
6786         * modules/fatal-signal (Depends-on): Likewise.
6787         * modules/nanosleep (Depends-on): Likewise.
6788         * modules/sigprocmask (Files): Add sig-handler.h.
6789         * modules/sigaction (Files): Likewise.
6790         * lib/sig-handler.h (get_handler): New file, suggested by Paul
6791         Eggert.
6792         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
6793         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
6794         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
6795         (init_fatal_signals): Likewise.
6796         * lib/nanosleep.c (rpl_nanosleep): Likewise.
6797         (siginterrupt): Delete fallback.
6798         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
6799         instead.
6800         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
6801         siginterrupt.
6802
6803         New module sigaction, for mingw.
6804         * modules/sigaction: New module...
6805         * modules/sigaction-tests: ...and its test.
6806         * m4/sigaction.m4: New file.
6807         * lib/sigaction.c: Likewise.
6808         * tests/test-sigaction.c: Likewise.
6809         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
6810         * modules/signal (Makefile.am): Likewise.
6811         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
6812         needed.
6813         * doc/posix-headers/signal.texi (signal.h): Mention provided
6814         types.
6815         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
6816         that sigaction is preferable.
6817         * doc/posix-functions/sigaction.texi (sigaction): Mention new
6818         module.
6819         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
6820         sigaction.
6821
6822         Improve robustness of sigprocmask by overriding signal.
6823         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
6824         is in use.
6825         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
6826         (SIGKILL, SIGSTOP): Provide fallbacks.
6827         (rpl_signal): Implement.
6828         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
6829         signal can be called inside handlers.
6830
6831         Fix nanosleep module on mingw.
6832         * modules/nanosleep (Depends-on): Add sys_select.
6833         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
6834
6835         Fix licensing of sigprocmask.
6836         * modules/raise (License): Relicense as LGPL.
6837
6838 2008-06-21  Bruno Haible  <bruno@clisp.org>
6839
6840         * lib/propername.c (proper_name_utf8): Don't use the transliterated
6841         result if it contains question marks.
6842         Reported by Michael Geng <linux@michaelgeng.de>.
6843
6844 2008-06-19  Bruno Haible  <bruno@clisp.org>
6845
6846         Fix CVS-ism.
6847         * doc/gnulib.texi: Include updated-stamp.texi.
6848         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
6849         (updated-stamp.texi): New rule.
6850         (gnulib.info): Depend on it.
6851         * doc/.gitignore: Add updated-stamp.texi.
6852         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
6853
6854 2008-06-19  Bruno Haible  <bruno@clisp.org>
6855
6856         * doc/Makefile (gnulib.info): Update and simplify dependencies.
6857         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
6858
6859 2008-06-19  Eric Blake  <ebb9@byu.net>
6860
6861         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
6862         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
6863         Reported by Stepan Kasal.
6864
6865 2008-06-18  Bruno Haible  <bruno@clisp.org>
6866
6867         * lib/fatal-signal.c (init_fatal_signals): Add comment.
6868         Reported by Eric Blake.
6869
6870 2008-06-18  Eric Blake  <ebb9@byu.net>
6871
6872         Work around cygwin 1.5.25 strsignal bug.
6873         * tests/test-strsignal.c: Allow for const char *.
6874         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
6875
6876 2008-06-18  Simon Josefsson  <simon@josefsson.org>
6877
6878         * users.txt: Update URL to article and add author/date
6879         information.
6880
6881 2008-06-17  Bruno Haible  <bruno@clisp.org>
6882
6883         New macro gl_DISABLE_THREADS.
6884         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
6885         if the user did not pass --enable-threads or --disable-threads option.
6886         (gl_DISABLE_THREADS): New macro.
6887         Reported by Eric Blake <ebb9@byu.net>.
6888
6889 2008-06-17  Bruno Haible  <bruno@clisp.org>
6890
6891         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
6892         when the macro ignores it.
6893         Based on a patch by Eric Blake <ebb9@byu.net>.
6894
6895 2008-06-17  Bruno Haible  <bruno@clisp.org>
6896
6897         * modules/tls (License): Change to LGPLv2+.
6898         Reported by Eric Blake.
6899
6900 2008-06-17  Eric Blake  <ebb9@byu.net>
6901
6902         Simplify c-stack prerequisites.
6903         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
6904         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
6905         no longer requires <ucontext.h> to exist.  Optimize setrlimit
6906         check.
6907         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
6908         <sys/resource.h>.
6909
6910         Move c-stack test into testsuite.
6911         * modules/c-stack-tests: New file.
6912         * lib/c-stack.c [DEBUG]: Move test program...
6913         * tests/test-c-stack.c: ...into this new file.  Skip rather than
6914         fail test if sigaltstack is lacking.
6915         * tests/test-c-stack.sh: New driver file.
6916
6917 2008-06-16  Eric Blake  <ebb9@byu.net>
6918
6919         Use raise module consistently.
6920         * modules/fatal-signal (Depends-on): Add raise.
6921         * modules/sigprocmask (Depends-on): Likewise.
6922         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
6923         * lib/sigprocmask.c (sigprocmask): Likewise.
6924         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
6925         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
6926
6927         Fix compliance bug in sigpending.
6928         * lib/sigprocmask.c (sigpending): Return pending array via
6929         parameter, not return value.
6930
6931 2008-06-14  Eric Blake  <ebb9@byu.net>
6932
6933         Improve obstack-printf test code.
6934         * tests/test-obstack-printf.c (test_function): Fix comment, and
6935         simplify usage of obstack_* in macros.  Add a test for coverage.
6936         Reported by Bruno Haible.
6937
6938 2008-06-14  Bruno Haible  <bruno@clisp.org>
6939
6940         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
6941         array size as a constant, not as a const variable.
6942         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
6943         AC_USE_SYSTEM_EXTENSIONS.
6944         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
6945         Test whether the obstack_printf function actually exists.
6946         * modules/obstack-printf (Depends-on): Add extensions.
6947         (Include): Remove obstack.h.
6948         * modules/obstack-printf-posix (Depends-on): Add extensions.
6949         (Include): Remove obstack.h.
6950
6951 2008-06-13  Eric Blake  <ebb9@byu.net>
6952
6953         Add obstack-printf and obstack-printf-posix modules.
6954         * modules/obstack-printf: New file.
6955         * modules/obstack-printf-posix: Likewise.
6956         * MODULES.html.sh (Misc): Mention them.
6957         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
6958         Likewise.
6959         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
6960         Likewise.
6961         * modules/stdio (Makefile.am): Accomodate new modules.
6962         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6963         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
6964         Declare.
6965         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
6966         functions.
6967         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
6968         (gl_REPLACE_OBSTACK_PRINTF): New macros
6969         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
6970         * tests/test-obstack-printf.c: New file.
6971         * modules/obstack-printf-tests: Likewise.
6972         * modules/obstack-printf-posix-tests: Likewise.
6973
6974 2008-06-11  Bruno Haible  <bruno@clisp.org>
6975
6976         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
6977         * lib/open.c: Include errno.h.
6978         (open): Fail when attempting to write to a file that has a trailing
6979         slash.
6980         * tests/test-open.c (main): Test against trailing slash bug.
6981         * doc/posix-functions/open.texi: Mention the trailing slash bug.
6982
6983 2008-06-10  Bruno Haible  <bruno@clisp.org>
6984
6985         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
6986         for $? to work inside the trap command, with various /bin/sh-s.
6987         * tests/test-vc-list-files-cvs.sh: Likewise.
6988
6989 2008-06-10  Bruno Haible  <bruno@clisp.org>
6990
6991         * lib/acl-internal.h: Don't include gettext.h here.
6992         * lib/set-mode-acl.c: Include gettext.h here.
6993         * lib/copy-acl.c: Likewise.
6994
6995 2008-06-10  Bruno Haible  <bruno@clisp.org>
6996
6997         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
6998         * lib/wait-process.c (wait_subprocess): Likewise.
6999         * lib/execute.h (execute): Add termsigp argument.
7000         * lib/execute.c (execute): Likewise.
7001         * lib/csharpcomp.c (compile_csharp_using_pnet,
7002         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
7003         * lib/csharpexec.c (execute_csharp_using_pnet,
7004         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
7005         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
7006         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
7007         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
7008         is_jikes_present): Update.
7009         * lib/javaexec.c (execute_java_class): Update.
7010         * lib/javaversion.c (execute_and_read_line): Update.
7011         * NEWS: Document the changes.
7012         Reported by Eric Blake.
7013
7014 2008-06-10  Eric Blake  <ebb9@byu.net>
7015
7016         Add missing include.
7017         * tests/test-strstr.c (includes): Add <signal.h>.
7018         * tests/test-strcasestr.c (includes): Likewise.
7019         * tests/test-memmem.c (includes): Likewise.
7020
7021 2008-06-10  Bruno Haible  <bruno@clisp.org>
7022
7023         * lib/wait-process.c (wait_subprocess): Add an assertion.
7024
7025 2008-06-10  Bruno Haible  <bruno@clisp.org>
7026
7027         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
7028
7029 2008-06-10  Bruno Haible  <bruno@clisp.org>
7030
7031         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
7032         using alarm().
7033         * tests/test-strcasestr.c (main): Likewise.
7034         * tests/test-strstr.c (main): Likewise.
7035
7036 2008-06-09  Bruno Haible  <bruno@clisp.org>
7037
7038         Work around the Solaris 10 ACE ACLs ABI change.
7039         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
7040         declare if ACL_NO_TRIVIAL is present.
7041         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
7042         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
7043         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
7044         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
7045         define if ACL_NO_TRIVIAL is present.
7046         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
7047         and use the current ABI.
7048         (file_has_acl): Use same #if condition as elsewhere.
7049         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
7050         in use, and use the current ABI.
7051         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
7052         Reported by Jim Meyering.
7053
7054 2008-06-09  Eric Blake  <ebb9@byu.net>
7055
7056         Work around environments that (stupidly) ignore SIGALRM.
7057         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
7058         before using alarm().
7059         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7060         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
7061         Reported by Ian Beckwith <ianb@erislabs.net>.
7062
7063         Produce autobuild blurb earlier in log.
7064         * modules/autobuild (configure.ac-early): Move AB_INIT here.
7065
7066 2008-06-09  Jim Meyering  <meyering@redhat.com>
7067         and OndÅ™ej Vašík  <ovasik@redhat.com>
7068
7069         utimens.c: correct kernel bug work-around
7070         OndÅ™ej Vašík found that the invalid return value of 280 indicates
7071         failure, not success, and the kernel bug we're trying to work
7072         around affects not just the utimensat call, but also the fallback
7073         futimens call.
7074         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
7075         not success.
7076         [HAVE_FUTIMENS]: Use the same work-around, here.
7077
7078 2008-06-09  Jim Meyering  <meyering@redhat.com>
7079
7080         add more guards around definition of ACE_-related code
7081         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
7082         ALLOW and ACE_OWNER are also defined.
7083
7084 2008-06-08  Bruno Haible  <bruno@clisp.org>
7085
7086         * lib/acl-internal.h: Add me as co-author.
7087         * lib/file-has-acl.c: Likewise.
7088         * lib/set-mode-acl.c: Likewise.
7089         * lib/copy-acl.c: Likewise.
7090
7091 2008-06-08  Bruno Haible  <bruno@clisp.org>
7092
7093         Add support for AIX ACLs.
7094         * lib/acl-internal.h (acl_nontrivial): New declaration.
7095         * lib/file-has-acl.c (acl_nontrivial): New function.
7096         (file_has_acl): Add implementation using AIX 4 ACL API.
7097         * lib/set-mode-acl.c (qset_acl): Likewise.
7098         * lib/copy-acl.c (qcopy_acl): Likewise.
7099
7100 2008-06-08  Bruno Haible  <bruno@clisp.org>
7101
7102         Add support for HP-UX ACLs.
7103         * lib/acl-internal.h (acl_nontrivial): New declaration.
7104         * lib/file-has-acl.c (acl_nontrivial): New function.
7105         (file_has_acl): Add implementation using HP-UX 11 ACL API.
7106         * lib/set-mode-acl.c (qset_acl): Likewise.
7107         * lib/copy-acl.c (qcopy_acl): Likewise.
7108
7109 2008-06-08  Bruno Haible  <bruno@clisp.org>
7110
7111         Add support for Cygwin ACLs.
7112         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
7113         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
7114         the chmod_or_fchmod call.
7115         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
7116
7117 2008-06-08  Bruno Haible  <bruno@clisp.org>
7118
7119         Fix bug with setuid modes in Solaris 10+ code.
7120         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
7121         succeeded, when the mode contains some special bits.
7122
7123 2008-06-08  Bruno Haible  <bruno@clisp.org>
7124
7125         Add support for Solaris 7..10 ACLs.
7126         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
7127         declarations.
7128         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
7129         functions.
7130         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
7131         * lib/set-mode-acl.c (qset_acl): Likewise.
7132         * lib/copy-acl.c (qcopy_acl): Likewise.
7133
7134 2008-06-08  Bruno Haible  <bruno@clisp.org>
7135
7136         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
7137         declaration.
7138         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
7139         (acl_access_nontrivial): Remove MacOS X case.
7140         (file_has_acl): Use acl_extended_nontrivial.
7141         * lib/copy-acl.c (qcopy_acl): Likewise.
7142
7143 2008-06-08  Bruno Haible  <bruno@clisp.org>
7144
7145         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
7146
7147 2008-06-08  Jim Meyering  <meyering@redhat.com>
7148
7149         * modules/acl (Maintainer): Add Bruno Haible.
7150
7151 2008-06-07  Bruno Haible  <bruno@clisp.org>
7152
7153         Improve support for Tru64 ACLs.
7154         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
7155         ACL on OSF/1.
7156
7157 2008-06-07  Bruno Haible  <bruno@clisp.org>
7158
7159         Add support for MacOS X ACLs.
7160         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
7161         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
7162         * lib/set-mode-acl.c (qset_acl): Likewise.
7163         * lib/copy-acl.c (qcopy_acl): Likewise.
7164
7165 2008-06-07  Bruno Haible  <bruno@clisp.org>
7166
7167         Fix memory leak introduced on 2008-05-22.
7168         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
7169         use.
7170
7171 2008-06-07  Bruno Haible  <bruno@clisp.org>
7172
7173         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
7174         to construct an empty ACL.
7175
7176 2008-06-07  Bruno Haible  <bruno@clisp.org>
7177
7178         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
7179         precisely.
7180         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
7181
7182 2008-06-07  Bruno Haible  <bruno@clisp.org>
7183
7184         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
7185         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
7186
7187 2008-06-07  Bruno Haible  <bruno@clisp.org>
7188
7189         * doc/posix-functions/_setjmp.texi: Explain the use of this function
7190         regardless of POSIX.
7191         * doc/posix-functions/_longjmp.texi: Likewise.
7192         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
7193         SystemV platform in this case.
7194
7195 2008-06-06  Eric Blake  <ebb9@byu.net>
7196
7197         Document abort() bugs.
7198         * doc/posix-functions/abort.texi (abort): Mention anomalies.
7199
7200         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
7201         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
7202         sigsetjmp.
7203         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
7204         siglongjmp, but only as a macro.
7205         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
7206         is obsolete.
7207         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
7208
7209         Tweak documentation to cover cygwin argz bugs.
7210         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
7211         argz bug fix; no code change needed since no cygwin releases
7212         occurred between the last fix and the bug being tested.
7213         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
7214         module and recently fixed cygwin bugs.
7215         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
7216         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
7217         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
7218         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
7219         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
7220         Likewise.
7221         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
7222         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
7223         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
7224         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
7225         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
7226         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
7227         Likewise.
7228
7229         Avoid gcc warning on cygwin.
7230         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
7231         !ACL_NO_TRIVIAL]: Avoid unused variable.
7232
7233 2008-06-05  Eric Blake  <ebb9@byu.net>
7234
7235         Be tolerant of UNKNOWN version in gnulib-tool test dir.
7236         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
7237         git-version-gen fails to come up with a version.
7238         Reported by Simon Josefsson.
7239
7240 2008-06-05  Jim Meyering  <meyering@redhat.com>
7241             Paul Eggert  <eggert@cs.ucla.edu>
7242
7243         utimens.c: work around a probable Linux kernel bug
7244         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
7245         appears to be a kernel bug that causes utimensat to return 280
7246         instead of 0, indicating success.
7247
7248 2008-06-04  Bruno Haible  <bruno@clisp.org>
7249
7250         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
7251         2008-06-01 commit.
7252
7253 2008-06-04  Bruno Haible  <bruno@clisp.org>
7254
7255         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
7256         * lib/file-has-acl.c (acl_access_nontrivial): New function.
7257         (file_has_acl): Use it. Save errno afterwards.
7258         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
7259
7260 2008-06-03  Bruno Haible  <bruno@clisp.org>
7261
7262         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
7263         draft code. Simplify #ifs.
7264         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
7265         Put Solaris code after POSIX-draft code. Fix comments regarding
7266         Solaris 10, HP-UX. Mention Cygwin.
7267         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
7268
7269 2008-06-03  Eric Blake  <ebb9@byu.net>
7270
7271         Provide fallback for older kernels.
7272         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
7273         Provide runtime fallback if kernel lacks support.
7274         Reported by Mike Frysinger.
7275
7276 2008-06-02  Bruno Haible  <bruno@clisp.org>
7277
7278         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
7279         it exists.
7280
7281 2008-06-02  Bruno Haible  <bruno@clisp.org>
7282
7283         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
7284         * lib/copy-acl.c (qcopy_acl): Update comment.
7285
7286 2008-06-02  Bruno Haible  <bruno@clisp.org>
7287
7288         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
7289         like ACL APIs.
7290
7291 2008-06-02  Bruno Haible  <bruno@clisp.org>
7292
7293         * tests/test-file-has-acl.sh: Use different code for Cygwin.
7294         * tests/test-set-mode-acl.sh: Likewise.
7295         * tests/test-copy-acl.sh: Likewise.
7296         * tests/test-copy-file.sh: Likewise.
7297
7298 2008-06-02  Bruno Haible  <bruno@clisp.org>
7299
7300         * tests/test-file-has-acl.sh: Remove unused code.
7301
7302 2008-06-01  Bruno Haible  <bruno@clisp.org>
7303
7304         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
7305         (copy_acl): Just a wrapper around qcopy_acl that emits the error
7306         messages.
7307         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
7308
7309 2008-06-01  Bruno Haible  <bruno@clisp.org>
7310
7311         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
7312         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
7313         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
7314         APIs.
7315         * modules/acl-tests (configure.ac): Remove tests now contained in
7316         m4/acl.m4.
7317
7318 2008-06-02  Jim Meyering  <meyering@redhat.com>
7319
7320         announce-gen: use a better key-server host name
7321         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
7322         it may be more consistently reliable.  Suggested by Werner Koch
7323         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
7324
7325 2008-06-01  Bruno Haible  <bruno@clisp.org>
7326
7327         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
7328         Reported by Voroskoi Andras <voroskoi@gmail.com>.
7329
7330 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
7331
7332         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
7333
7334 2008-06-01  Bruno Haible  <bruno@clisp.org>
7335
7336         New ACL tests.
7337         * tests/test-file-has-acl.sh: New file.
7338         * tests/test-file-has-acl.c: New file.
7339         * tests/test-set-mode-acl.sh: New file.
7340         * tests/test-set-mode-acl.c: New file.
7341         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
7342         * tests/test-copy-acl.c: New file.
7343         * modules/acl-tests: New file, based on modules/copy-file-tests.
7344         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
7345         (Depends-on): Add acl-tests.
7346         (configure.ac): Remove checks.
7347         (Makefile.am): Don't create test-sameacls program here any more.
7348
7349 2008-06-01  Bruno Haible  <bruno@clisp.org>
7350
7351         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
7352         * tests/test-sameacls.c: Include progname.h.
7353         (main): Invoke set_program_name. Portability fixes for MacOS X,
7354         Solaris, HP-UX.
7355
7356 2008-06-01  Bruno Haible  <bruno@clisp.org>
7357
7358         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
7359         function.
7360         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
7361
7362 2008-06-01  Bruno Haible  <bruno@clisp.org>
7363
7364         * modules/rpmatch (Depends-on): Add strdup.
7365
7366 2008-06-01  Bruno Haible  <bruno@clisp.org>
7367
7368         * lib/pipe.c: Include unistd-safer.h.
7369         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
7370         * modules/pipe (Depends-on): Add unistd-safer.
7371
7372 2008-05-30  Simon Josefsson  <simon@josefsson.org>
7373
7374         * modules/autobuild (configure.ac): Call AB_INIT.
7375
7376 2008-05-30  Simon Josefsson  <simon@josefsson.org>
7377
7378         * tests/test-getaddrinfo.c: Don't print debug messages by default.
7379         Suggested by Bruno Haible <bruno@clisp.org>.
7380
7381 2008-05-30  Simon Josefsson  <simon@josefsson.org>
7382
7383         * tests/test-base64.c: Cast size_t to unsigned long when invoking
7384         printf.  Use %lu instead of %d.  Reported by Bruno Haible
7385         <bruno@clisp.org>.
7386
7387 2008-05-29  Eric Blake  <ebb9@byu.net>
7388
7389         Prefer new POSIX 200x interfaces over futimesat.
7390         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
7391         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
7392         when available.
7393         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
7394
7395 2008-05-28  Bruno Haible  <bruno@clisp.org>
7396
7397         * modules/stpcpy (License): Change to LGPLv2+.
7398         Requested by David Lutterkort <dlutter@redhat.com>.
7399
7400 2008-05-27  Bruno Haible  <bruno@clisp.org>
7401
7402         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
7403         current mingw.
7404         Reported by Jose E. Marchesi <jemarch@gnu.org>.
7405
7406 2008-05-27  Bruno Haible  <bruno@clisp.org>
7407
7408         * modules/iconv_open (Link): New section, from module 'iconv'.
7409         * modules/striconv (Link): Likewise.
7410         * modules/striconveh (Link): Likewise.
7411         * modules/xstriconv (Link): Likewise.
7412         * modules/unicodeio (Link): Likewise.
7413         * modules/propername (Link): Likewise.
7414         Reported by Jim Meyering.
7415
7416 2008-05-26  Jim Meyering  <meyering@redhat.com>
7417
7418         sha256: do not artificially restrict buffer length to be < 2^32
7419         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
7420         uint32_t to size_t.
7421         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
7422         to match.
7423
7424         avoid unaligned access errors, e.g., on sparc
7425         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
7426         direct access through a possibly-unaligned uint64* pointer.
7427         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
7428         direct access through a possibly-unaligned uint32* pointer.
7429         Prompted by this patch from Tom "spot" Callaway:
7430         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
7431
7432         sha512.c: fix typo in comment
7433         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
7434
7435 2008-05-25  Bruno Haible  <bruno@clisp.org>
7436
7437         * lib/set-mode-acl.c: Renamed from lib/acl.c.
7438         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
7439         (Makefile.am): Update lib_SOURCES.
7440
7441 2008-05-25  Bruno Haible  <bruno@clisp.org>
7442
7443         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
7444
7445 2008-05-25  Jim Meyering  <meyering@redhat.com>
7446
7447         useless-if-before-free: freed expr may have white-space differences
7448         * build-aux/useless-if-before-free: Recognize cases in which the
7449         freed expression differs from the tested one in embedded white
7450         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
7451         $1 was used, so we can't make any regexp shy.  Improved tests now
7452         detect this.
7453
7454         useless-if-before-free: accept white space in the expression.
7455         * build-aux/useless-if-before-free: For now, any white space
7456         in the expression must be identical in the free argument.
7457
7458         useless-if-before-free: efficiency tweak
7459         * build-aux/useless-if-before-free: Make the expression-matching
7460         regexp "shy".
7461         Make the *outer* regexp shy, not the expr-matching one.
7462
7463         update code-in-comment to accept cast of free arg
7464         * build-aux/useless-if-before-free: Update regexp.
7465
7466 2008-05-25  Bruno Haible  <bruno@clisp.org>
7467
7468         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
7469         * modules/copy-file-tests (Files, Makefile.am): Update.
7470         * tests/test-copy-file.c (func_test_copy): Update.
7471
7472 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
7473
7474         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
7475
7476 2008-05-23  Bruno Haible  <bruno@clisp.org>
7477
7478         Improve support for ACLs on OSF/1.
7479         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
7480         Remove fallback for unknown flavors of ACLs.
7481
7482 2008-05-22  Bruno Haible  <bruno@clisp.org>
7483
7484         Add support for ACLs on OSF/1.
7485         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
7486         replacements.
7487         (acl_free_text): New macro fallback.
7488         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
7489         acl_free.
7490         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
7491         acl_free_text function. Require AC_C_INLINE.
7492
7493 2008-05-22  Bruno Haible  <bruno@clisp.org>
7494
7495         Make copy_acl work on MacOS X 10.5.
7496         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
7497         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
7498         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
7499         If MODE_INSIDE_ACL, don't assume that every system has the same text
7500         representation for ACLs as FreeBSD.
7501         * lib/copy-acl.c (copy_acl): Add support for platforms with
7502         !MODE_INSIDE_ACL.
7503         * lib/file-has-acl.c (file_has_acl): Likewise.
7504         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
7505         FreeBSD, MacOS X, or IRIX, respectively.
7506
7507 2008-05-22  Bruno Haible  <bruno@clisp.org>
7508
7509         * lib/acl.h: Don't include <sys/acl.h>.
7510         (GETACLCNT): Move fallback to lib/acl-internal.h.
7511         * lib/acl-internal.h: Include <sys/acl.h> here.
7512         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
7513
7514 2008-05-22  Bruno Haible  <bruno@clisp.org>
7515
7516         Split off copy_acl function to separate file.
7517         * lib/copy-acl.c: New file, extracted from lib/acl.c.
7518         * lib/acl.c (copy_acl): Moved function to separate file.
7519         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
7520         * modules/acl (Files): Add lib/copy-acl.c.
7521         (Makefiles.am): Augment lib_SOURCES.
7522
7523 2008-05-22  Bruno Haible  <bruno@clisp.org>
7524
7525         * modules/copy-file-tests: New file.
7526         * tests/test-copy-file.sh: New file.
7527         * tests/test-copy-file.c: New file.
7528         * tests/test-copy-file-sameacls.c: New file.
7529
7530 2008-05-22  Eric Blake  <ebb9@byu.net>
7531
7532         Avoid gcc warning.
7533         * tests/test-memcmp.c (main): Pass NULL indirectly.
7534
7535 2008-05-21  Bruno Haible  <bruno@clisp.org>
7536
7537         Add reference doc about ACLs.
7538         * doc/acl-resources.txt: New file.
7539         * doc/acl-cygwin.txt: New file.
7540
7541 2008-05-21  Bruno Haible  <bruno@clisp.org>
7542
7543         Avoid one more warning from gcc.
7544         * lib/vasnprintf.c (IF_LINT): Update comments.
7545         (VASNPRINTF): Use it also for the 'prefix' array initializer.
7546
7547 2008-05-21  Jim Meyering  <meyering@redhat.com>
7548
7549         avoid a warning from gcc
7550         * lib/vasnprintf.c (IF_LINT): Define.
7551         (scale10_round_decimal_long_double):
7552         Use it to avoid a "may be used uninitialized" warning.
7553         (scale10_round_decimal_double): Likewise.
7554
7555 2008-05-21  Simon Josefsson  <simon@josefsson.org>
7556
7557         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
7558         declared.
7559
7560 2008-05-20  Bruno Haible  <bruno@clisp.org>
7561
7562         * tests/test-memcmp.c (main): Test also the sign of the result. Test
7563         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
7564
7565 2008-05-20  Simon Josefsson  <simon@josefsson.org>
7566
7567         * modules/memcmp-tests: New file.
7568         * tests/test-memcmp.c: New file.
7569
7570 2008-05-19  Bruno Haible  <bruno@clisp.org>
7571
7572         * modules/propername (Notice, configure.ac): Put quoted "..." into
7573         --keyword option.
7574         * lib/propername.h: Update comments accordingly.
7575         Reported by Eric Blake.
7576
7577 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
7578
7579         * modules/getpass-gnu (Depends-on): Add fseeko.
7580
7581 2008-05-19  Simon Josefsson  <simon@josefsson.org>
7582
7583         * modules/base64-tests: New file.
7584
7585 2008-05-19  Bo Borgerson <gigabo@gmail.com>
7586
7587         * lib/base64.c (base64_decode_ctx): If a decode context structure
7588         was passed in use it to ignore newlines.  If a context structure
7589         was _not_ passed in, continue to treat newlines as garbage (this
7590         is the historical behavior).  Formerly base64_decode.
7591         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
7592         takes a decode context structure.
7593         * lib/base64.h (base64_decode): Macro for four-argument calls.
7594         (base64_decode_alloc): Likewise.
7595         * lib/base64.c (base64_decode_ctx): If a decode context structure
7596         was passed in use it to ignore newlines.  If a context structure
7597         was _not_ passed in, continue to treat newlines as garbage (this
7598         is the historical behavior).  Formerly base64_decode.
7599         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
7600         takes a decode context structure.
7601         * lib/base64.h (base64_decode): Macro for four-argument calls.
7602         (base64_decode_alloc): Likewise.
7603
7604 2008-05-19  Jim Meyering  <meyering@redhat.com>
7605
7606         avoid a warning from gcc
7607         * lib/trim.c (IF_LINT): Define.
7608         (trim2): Use it to avoid a "may be used uninitialized" warning.
7609
7610         Fix doc typo.
7611         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
7612
7613 2008-05-19  Bruno Haible  <bruno@clisp.org>
7614
7615         * doc/glibc-functions/getpass.texi: Document limits of other
7616         implementations.
7617
7618 2008-05-19  Simon Josefsson  <simon@josefsson.org>
7619             Bruno Haible <bruno@clisp.org>
7620
7621         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
7622
7623 2008-05-18  Bruno Haible  <bruno@clisp.org>
7624
7625         * modules/propername: New file, from GNU gettext.
7626         * lib/propername.h: New file, from GNU gettext.
7627         * lib/propername.c: New file, from GNU gettext.
7628         * MODULES.html.sh (Internationalization functions): Add propername.
7629
7630 2008-05-16  Jim Meyering  <meyering@redhat.com>
7631             Bruno Haible  <bruno@clisp.org>
7632
7633         Avoid some warnings from "gcc -Wshadow".
7634         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
7635
7636 2008-05-15  Eric Blake  <ebb9@byu.net>
7637
7638         Extend previous patch to cygwin 1.7.0.
7639         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
7640         fast implementation in cygwin >= 1.7.0.
7641         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7642         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7643
7644 2008-05-15  Bruno Haible  <bruno@clisp.org>
7645
7646         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
7647         implementation in glibc >= 2.9.
7648         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7649         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7650
7651 2008-05-15  Bruno Haible  <bruno@clisp.org>
7652
7653         * MODULES.html.sh (Internationalization functions): Remove linebreak.
7654         (Unicode string functions): Add unilbrk/*.
7655         Reported by Karl Berry.
7656
7657 2008-05-15  Eric Blake  <ebb9@byu.net>
7658
7659         Fix violation of <stdbool.h> replacement in regex.
7660         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
7661         * lib/regexec.c (re_search_internal): Likewise.
7662         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
7663
7664 2008-05-15  Jim Meyering  <meyering@redhat.com>
7665
7666         avoid distracting test output when git or cvs is not found
7667         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
7668         * tests/test-vc-list-files-git.sh: Likewise.
7669
7670 2008-05-15  Eric Blake  <ebb9@byu.net>
7671
7672         Glibc finally accepted the memmem speedup code, bugzilla #5514.
7673         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
7674         glibc version.
7675         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
7676         * doc/posix-functions/strstr.texi (strstr): Likewise.
7677         * lib/str-two-way.h (MAX): Sychronize with glibc.
7678
7679 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
7680
7681         * lib/regcomp.c (optimize_utf8): Add a note on why we test
7682         opr.ctx_type.
7683         (calc_first): Initialize constraint field.
7684         (duplicate_node_closure): Use it instead of special casing ANCHORS.
7685         Fix grammar.
7686         (duplicate_node): Merge constraint field for all node types.
7687         (calc_eclosure_iter): Look at constraint field for all node types.
7688         * lib/regex_internal.c (create_cd_newstate): Don't look at
7689         opr.ctx_type.
7690
7691 2008-05-14  Bruno Haible  <bruno@clisp.org>
7692
7693         Help GCC to do better code generation.
7694         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
7695         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
7696         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
7697         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
7698         Declare with attribute 'malloc' if supported.
7699
7700 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
7701
7702         use "echo STR|wc -c" rather than unportable "expr length STR"
7703         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
7704         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
7705
7706 2008-05-14  Jim Meyering  <meyering@redhat.com>
7707
7708         use dd ibs=$n count=1 ... rather than less-portable head -c$n
7709         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
7710         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
7711         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
7712         via Collin Lasse.
7713
7714 2008-05-14  Eric Blake  <ebb9@byu.net>
7715
7716         Avoid quadratic growth in gl_LIBSOURCES.
7717         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
7718         Suggested by Bruno Haible.
7719
7720         Test xmemdup0.
7721         * modules/xmemdup0-tests: New file.
7722         * tests/test-xmemdup0.c: Likewise.
7723
7724 2008-05-13  Eric Blake  <ebb9@byu.net>
7725
7726         Split xmemdup0 into its own module.
7727         * modules/xmemdup0: New file.
7728         * lib/xmemdup0.h: Likewise.
7729         * lib/xmemdup0.c: Likewise.
7730         * MODULES.html.sh (Memory management functions): Add xmemdup0.
7731         * lib/xalloc.h (xmemdup0): Remove.
7732         * lib/xmalloc.c (xmemdup0): Likewise.
7733
7734 2008-05-13  Eric Blake  <ebb9@byu.net>
7735             Bruno Haible  <bruno@clisp.org>
7736
7737         Reduce number of forks required during autoconf.
7738         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
7739         and gl_LIBSOURCES_DIR.
7740         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
7741         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
7742         m4_syscmd per file.
7743         <m4_foreach_w>: Move...
7744         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
7745
7746 2008-05-13  Eric Blake  <ebb9@byu.net>
7747
7748         * gnulib-tool: Fix various comment typos.
7749
7750 2008-05-12  Bruno Haible  <bruno@clisp.org>
7751
7752         Tailor the linebreaking algorithm.
7753         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
7754
7755 2008-05-12  Bruno Haible  <bruno@clisp.org>
7756
7757         Update to Unicode 5.0.0.
7758         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
7759         LBP_JV, LBP_JT. Redistribute values.
7760         (unilbrk_table): Change size.
7761         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
7762         Unicode TR#14 rev. 22.
7763         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
7764         LBP_JV, LBP_JT. Redistribute values.
7765         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
7766         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
7767         Update.
7768         * lib/unilbrk/lbrkprop1.h: Regenerated.
7769         * lib/unilbrk/lbrkprop2.h: Regenerated.
7770         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
7771         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
7772         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
7773         Likewise.
7774         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
7775         Likewise.
7776         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
7777         result.
7778         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
7779         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
7780         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
7781         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
7782         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
7783         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
7784
7785 2008-05-11  Bruno Haible  <bruno@clisp.org>
7786
7787         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
7788
7789 2008-05-11  Bruno Haible  <bruno@clisp.org>
7790
7791         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
7792         * modules/unilbrk/gen-lbrk: New file.
7793
7794 2008-05-11  Bruno Haible  <bruno@clisp.org>
7795
7796         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
7797         * m4/sha512.m4 (gl_SHA512): Likewise.
7798
7799 2008-05-11  Jim Meyering  <meyering@redhat.com>
7800
7801         New modules: crypto/sha256, crypto/sha512 (from coreutils)
7802         * modules/crypto/sha256: New file.
7803         * modules/crypto/sha512: Likewise.
7804         * lib/sha256.c: Likewise.
7805         * lib/sha256.h: Likewise.
7806         * lib/sha512.c: Likewise.
7807         * lib/sha512.h: Likewise.
7808         * lib/u64.h: Likewise.
7809         * m4/sha256.m4: Likewise.
7810         * m4/sha512.m4: Likewise.
7811         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
7812
7813 2008-05-10  Bruno Haible  <bruno@clisp.org>
7814
7815         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
7816         (Input/Output <stdio.h>): Add xprintf.
7817         (Signal handling <signal.h>): Add strsignal.
7818         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
7819         (Core language properties): Add func.
7820         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
7821         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
7822         strings.
7823         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
7824         (Input/output): New section.
7825         (File system functions): Add openat-die, stat-macros.
7826         (Networking functions): Add sockets.
7827         (Unicode string functions): Add unictype/*.
7828         (Support for building libraries and executables): Add gperf.
7829         (Support for building documentation): Add agpl-3.0.
7830         (Misc): Add nocrash.
7831
7832 2008-05-10  Bruno Haible  <bruno@clisp.org>
7833
7834         * modules/unictype/gen-ctype: New file.
7835
7836 2008-05-10  Jim Meyering  <meyering@redhat.com>
7837
7838         Make chdir-safer.c more efficient on a system with no symlinks.
7839         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
7840         also if ELOOP is zero.  Suggested by Bruno Haible.
7841
7842         Make chdir-safer.c slightly safer.
7843         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
7844         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
7845
7846         Avoid compile failure on systems without ELOOP (like mingw).
7847         * lib/chdir-safer.c (ELOOP): Define if not already defined.
7848         Reported by Bruno Haible.
7849
7850 2008-05-10  Bruno Haible  <bruno@clisp.org>
7851
7852         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
7853         (is_utf8_encoding): Use a case-insensitive comparison.
7854         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
7855         streq.
7856
7857 2008-05-10  Bruno Haible  <bruno@clisp.org>
7858
7859         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
7860         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
7861         * lib/unilbrk/ulc-common.h (iconv_string_length,
7862         iconv_string_keeping_offsets): Remove declarations.
7863         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
7864         Don't include <iconv.h>, streq.h, xsize.h.
7865         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
7866         conversion.
7867         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
7868         <iconv.h>, streq.h, xsize.h.
7869         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
7870         conversion.
7871         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
7872         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
7873         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
7874         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
7875
7876 2008-05-10  Bruno Haible  <bruno@clisp.org>
7877
7878         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
7879         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
7880
7881         * modules/unilbrk/u32-width-linebreaks-tests: New file.
7882         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
7883
7884         * modules/unilbrk/u16-width-linebreaks-tests: New file.
7885         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
7886
7887         * modules/unilbrk/u8-width-linebreaks-tests: New file.
7888         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
7889
7890         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
7891         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
7892
7893         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
7894         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
7895
7896         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
7897         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
7898
7899         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
7900         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
7901
7902 2008-05-10  Bruno Haible  <bruno@clisp.org>
7903
7904         Split up 'linebreak' module.
7905         * lib/unilbrk.h: New file, based on lib/linebreak.h.
7906         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
7907         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
7908         modifications.
7909         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
7910         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
7911         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
7912         lib/linebreak.c.
7913         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
7914         lib/linebreak.c.
7915         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
7916         lib/linebreak.c.
7917         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
7918         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
7919         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
7920         lib/linebreak.c.
7921         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
7922         lib/linebreak.c.
7923         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
7924         lib/linebreak.c.
7925         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
7926         lib/linebreak.c.
7927         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
7928         lib/linebreak.c.
7929         * modules/unilbrk/base: New file.
7930         * modules/unilbrk/tables: New file.
7931         * modules/unilbrk/u8-possible-linebreaks: New file.
7932         * modules/unilbrk/u16-possible-linebreaks: New file.
7933         * modules/unilbrk/u32-possible-linebreaks: New file.
7934         * modules/unilbrk/ulc-common: New file.
7935         * modules/unilbrk/ulc-possible-linebreaks: New file.
7936         * modules/unilbrk/u8-width-linebreaks: New file.
7937         * modules/unilbrk/u16-width-linebreaks: New file.
7938         * modules/unilbrk/u32-width-linebreaks: New file.
7939         * modules/unilbrk/ulc-width-linebreaks: New file.
7940         * lib/linebreak.h: Remove file.
7941         * lib/linebreak.c: Remove file.
7942         * m4/linebreak.m4: Remove file.
7943         * modules/linebreak: Remove file.
7944         * NEWS: Mention the changes.
7945
7946 2008-05-09  Eric Blake  <ebb9@byu.net>
7947
7948         Add xmemdup0.
7949         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
7950         implementation.
7951         * lib/xmalloc.c (xmemdup0): New C implementation.
7952
7953 2008-05-08  Bruno Haible  <bruno@clisp.org>
7954
7955         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
7956
7957 2008-05-07  Eric Blake  <ebb9@byu.net>
7958
7959         Support cross-compilation of <wctype.h>.
7960         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
7961         AC_CACHE_CHECK.
7962
7963 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
7964
7965         * build-aux/vc-list-files: Add support for bzr.
7966
7967 2008-05-03  Jim Meyering  <meyering@redhat.com>
7968
7969         avoid failed assertion with tight malloc
7970         * tests/test-getndelim2.c: Correct an off-by-one assertion.
7971
7972 2008-05-03  Simon Josefsson  <simon@josefsson.org>
7973
7974         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
7975         are needed from arpa/inet.h.
7976         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
7977         Reported by Bruno Haible.
7978
7979 2008-05-02  Jim Meyering  <meyering@redhat.com>
7980
7981         avoid compilation error on FreeBSD 6
7982         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
7983
7984 2008-05-01  Jim Meyering  <meyering@redhat.com>
7985
7986         useless-if-before-free: correct --help's exit status description
7987         * build-aux/useless-if-before-free (usage): Like grep, exit 0
7988         for one or more matches, etc.  Reported by Bruno Haible.
7989
7990         vc-list-files: make the stand-alone gnulib test work
7991         * modules/vc-list-files-tests (configure.ac):
7992         Define and AC_SUBST abs_aux_dir.
7993         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
7994         $(abs_top_srcdir) to each script and having each of them
7995         duplicate the work of setting PATH, set PATH here, using
7996         the new variable, abs_aux_dir instead.
7997         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
7998         * tests/test-vc-list-files-git.sh: Likewise.
7999         Reported by Bruno Haible.
8000
8001 2008-05-01  Bruno Haible  <bruno@clisp.org>
8002
8003         * lib/getndelim2.c (getndelim2): Fix newsize computation during
8004         reallocation. Rename 'done' to 'found_delimiter'.
8005
8006 2008-05-01  Jim Meyering  <meyering@redhat.com>
8007
8008         vc-list-files: accommodate /bin/sh like the one from Solaris 10
8009         * build-aux/vc-list-files: Use `...`, not $(...).
8010
8011 2008-04-30  Jim Meyering  <meyering@redhat.com>
8012
8013         add tests for vc-list-files
8014         * modules/vc-list-files-tests: New module.
8015         * tests/test-vc-list-files-cvs.sh: New file.
8016         * tests/test-vc-list-files-git.sh: New file.
8017
8018         avoid a warning from gcc
8019         * lib/getndelim2.c (IF_LINT): Define.
8020         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
8021
8022         vc-list-files: work properly with build-aux/cvsu, too
8023         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
8024         to all cvs-based clauses.
8025
8026         vc-list-files: work properly in the CVS+awk case, too
8027         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
8028
8029         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
8030         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
8031         take more than one file argument, so .  Add quotes, just in case $dir
8032         ever contains a shell meta-character.  Prompted by Soren Hansen in
8033         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
8034
8035 2008-04-29  Eric Blake  <ebb9@byu.net>
8036
8037         Optimize getndelim2 to use block operations when possible.
8038         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
8039         freadseek, and memchr2.
8040         * lib/getndelim2.c (getndelim2): Use them for block reads.
8041
8042 2008-04-29  Bruno Haible  <bruno@clisp.org>
8043
8044         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
8045         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
8046         * modules/inet_ntop (Depends-on): Add extensions.
8047         * modules/inet_pton (Depends-on): Likewise.
8048         Reported by Simon Josefsson.
8049
8050 2008-04-29  Jim Meyering  <meyering@redhat.com>
8051
8052         When the is more than one match in a block, match all of them.
8053         * build-aux/useless-if-before-free: Iterate through each block
8054         until there are no more matches.
8055
8056         Fix broken useless-if-before-free script.
8057         * build-aux/useless-if-before-free: Fix typo: missing "?" after
8058         the expression to match cast of argument to free-like function.
8059
8060 2008-04-29  Eric Blake  <ebb9@byu.net>
8061
8062         Use new header.
8063         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
8064
8065 2008-04-29  Jim Meyering  <meyering@redhat.com>
8066
8067         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
8068         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
8069         by gnulib to exist and to declare e.g., inet_ntop.
8070         Don't include "inet_ntop.h", now removed.
8071
8072         * m4/arpa_inet_h.m4: Remove trailing blanks.
8073
8074 2008-04-29  Eric Blake  <ebb9@byu.net>
8075
8076         Silence valgrind on safe reads beyond potential array bounds.
8077         * lib/rawmemchr.valgrind: New file.
8078         * lib/strchrnul.valgrind: Likewise.
8079         * modules/rawmemchr (Files): Distribute new file.
8080         * modules/strchrnul (Files): Likewise.
8081         Suggested by Bruno Haible.
8082
8083 2008-04-29  Bruno Haible  <bruno@clisp.org>
8084
8085         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
8086         (inet_ntop, inet_pton): Change portability warning's wording.
8087         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
8088         Invoke gl_CHECK_NEXT_HEADERS.
8089         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
8090         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
8091         set ARPA_INET_H.
8092         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
8093         * modules/arpa_inet (Description): No longer only for systems that
8094         lack it.
8095         (Depends-on): Add include_next.
8096         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
8097         HAVE_ARPA_INET_H.
8098
8099 2008-04-29  Jim Meyering  <meyering@redhat.com>
8100
8101         * modules/mkdir (License): Re-license as LGPLv2+.
8102
8103 2008-04-29  Bruno Haible  <bruno@clisp.org>
8104
8105         * modules/rawmemchr (Maintainer): Set to Eric.
8106         * modules/strchrnul (Maintainer): Likewise.
8107
8108 2008-04-29  Simon Josefsson  <simon@josefsson.org>
8109
8110         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
8111         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
8112
8113         * modules/arpa_inet (arpa/inet.h): Use them.
8114
8115 2008-04-28  Eric Blake  <ebb9@byu.net>
8116
8117         Test getndelim2.
8118         * modules/getndelim2-tests: New file.
8119         * tests/test-getndelim2.c: Likewise.
8120         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
8121         stream.
8122         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
8123
8124         * MODULES.html.sh: Document new module.
8125
8126 2008-04-20  Bruno Haible  <bruno@clisp.org>
8127
8128         * lib/c-stack.c (die): Use raise.
8129         * modules/c-stack (Depends-on): Add raise.
8130
8131 2008-04-28  Bruno Haible  <bruno@clisp.org>
8132
8133         Expect rpmatch to be declared.
8134         * lib/yesno.c (rpmatch): Remove declaration.
8135
8136         Declare rpmatch.
8137         * lib/stdlib.in.h (rpmatch): New declaration.
8138         * lib/rpmatch.c: Include <stdlib.h> first.
8139         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
8140         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
8141         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
8142         HAVE_RPMATCH.
8143         * modules/rpmatch (Depends-on): Add stdlib, extensions.
8144         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8145         (Include): Set to <stdlib.h>.
8146         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
8147         HAVE_RPMATCH.
8148         * NEWS: Document the change.
8149
8150 2008-04-28  Bruno Haible  <bruno@clisp.org>
8151
8152         Change rpmatch to use nl_langinfo when appropriate.
8153         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
8154         (N_): New macro.
8155         (localized_pattern): New function/macro.
8156         (try): Remove match, nomatch arguments. Copy the pattern into safe
8157         memory before caching it.
8158         (rpmatch): Use localized_pattern. Add translator comments.
8159         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
8160         Suggested by Eric Blake.
8161         * modules/rpmatch (Depends-on): Add stdbool.
8162
8163 2008-04-28  Eric Blake  <ebb9@byu.net>
8164
8165         Add rawmemchr module, matching glibc.
8166         * modules/string (Makefile.am): New indicator.
8167         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
8168         * lib/string.in.h (rawmemchr): Declare when appropriate.
8169         * modules/rawmemchr: New file.
8170         * m4/rawmemchr.m4: Likewise.
8171         * lib/rawmemchr.c: Likewise.
8172         * modules/rawmemchr-tests: Likewise.
8173         * tests/test-rawmemchr.c: Likewise.
8174         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
8175         module.
8176         * modules/strchrnul (Depends-on): Add rawmemchr.
8177         * lib/strchrnul.c (strchrnul): Optimize a corner case.
8178
8179         Whitespace cleanup.
8180         * tests/test-strchrnul.c: Reindent.
8181         * lib/strchrnul.c: Likewise.
8182
8183         Optimize and test strchrnul.
8184         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
8185         * modules/strchrnul-tests: New file.
8186         * tests/test-strchrnul.c: Likewise.
8187
8188         Remove intprops dependency.
8189         * modules/memchr (Depends-on): Remove intprops.
8190         * modules/memrchr (Depends-on): Likewise.
8191         * modules/memchr2 (Depends-on): Likewise.
8192         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
8193         * lib/memrchr.c (__memrchr): Likewise.
8194         * lib/memrchr2.c (memchr2): Likewise.
8195         Reported by Simon Josefsson.
8196
8197 2008-04-28  Simon Josefsson  <simon@josefsson.org>
8198
8199         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
8200         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8201
8202 2008-04-28  Simon Josefsson  <simon@josefsson.org>
8203
8204         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
8205
8206         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
8207
8208         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
8209
8210         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
8211         declarations.
8212         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
8213
8214         * m4/inet_pton.m4: Don't check for header files.
8215
8216         * m4/inet_ntop.m4: Don't check for header files.
8217
8218 2008-04-28  Simon Josefsson  <simon@josefsson.org>
8219
8220         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
8221         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
8222         trigger for cygwin).
8223         Reported by Bruno Haible  <bruno@clisp.org>.
8224
8225 2008-04-28  Bruno Haible  <bruno@clisp.org>
8226
8227         * doc/posix-functions/strdup.texi: Mention mingw problem.
8228
8229 2008-04-27  Bruno Haible  <bruno@clisp.org>
8230
8231         * modules/stat-time-tests (Depends-on): Add sleep.
8232         * tests/test-stat-time.c (force_unlink): New function.
8233         (cleanup): Use it.
8234         (test_mtime): Remove the ctime related tests.
8235         (test_ctime): New function, containing the ctime related tests.
8236         (main): Call test_ctime, except on native Windows platforms.
8237
8238 2008-04-27  Bruno Haible  <bruno@clisp.org>
8239
8240         * lib/rpmatch.c (rpmatch): Add some comments.
8241         Reported by James Youngman <jay@gnu.org>.
8242
8243 2008-04-27  Bruno Haible  <bruno@clisp.org>
8244
8245         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
8246         quiet NaNs.
8247
8248 2008-04-27  Bruno Haible  <bruno@clisp.org>
8249
8250         Make test-yesno.sh work on mingw.
8251         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
8252         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
8253         (main): Set stdin to binary mode.
8254         * modules/yesno-tests (Depends-on): Add binary-io.
8255
8256 2008-04-27  Bruno Haible  <bruno@clisp.org>
8257
8258         Fix 'isfinite' on x86, x86_64, ia64 platforms.
8259         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
8260         argument that lie outside the IEEE 854 domain.
8261         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
8262         (gl_ISFINITE): Use it.
8263         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
8264
8265 2008-04-27  Bruno Haible  <bruno@clisp.org>
8266
8267         Allow local renaming in config.h.
8268         * lib/memrchr.c (memrchr): Don't undefine outside libc.
8269
8270 2008-04-27  Bruno Haible  <bruno@clisp.org>
8271
8272         * lib/memchr.c (__memchr): Change type of 'i'.
8273         * lib/memchr2.c (memchr2): Likewise.
8274
8275 2008-04-26  Eric Blake  <ebb9@byu.net>
8276         and Bruno Haible  <bruno@clisp.org>
8277
8278         Optimize and test memrchr.
8279         * modules/memrchr (Depends-on): Add intprops.
8280         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
8281         * modules/memrchr-tests: New file.
8282         * tests/test-memrchr.c: New file.
8283
8284 2008-04-26  Bruno Haible  <bruno@clisp.org>
8285
8286         Add tentative support for DragonFly BSD.
8287         * lib/stdio-impl.h: Add macros for DragonFly BSD.
8288         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
8289         fp.
8290         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
8291         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
8292         * lib/fpurge.c (fpurge): Likewise.
8293         * lib/freadable.c (freaadable): Likewise.
8294         * lib/freadahead.c (freadahead): Likewise.
8295         * lib/freading.c (freading): Likewise.
8296         * lib/freadptr.c (freadptr): Likewise.
8297         * lib/freadseek.c (freadptrinc): Likewise.
8298         * lib/fseeko.c (fseeko): Likewise.
8299         * lib/fseterr.c (fseterr): Likewise.
8300         * lib/fwritable.c (fwritable): Likewise.
8301         * lib/fwriting.c (fwriting): Likewise.
8302
8303 2008-04-26  Bruno Haible  <bruno@clisp.org>
8304
8305         * lib/stdio-impl.h: New file.
8306         * lib/fbufmode.c: Include stdio-impl.h.
8307         (fbufmode): Use fp_, remove redundant #defines.
8308         * lib/fflush.c: Include stdio-impl.h.
8309         (clear_ungetc_buffer): Remove redundant #defines.
8310         * lib/fpurge.c: Include stdio-impl.h.
8311         (fpurge): Remove redundant #defines.
8312         * lib/freadable.c: Include stdio-impl.h.
8313         (freadable): Remove redundant #defines.
8314         * lib/freadahead.c: Include stdio-impl.h.
8315         (freadahead): Remove redundant #defines.
8316         * lib/freading.c: Include stdio-impl.h.
8317         (freading): Remove redundant #defines.
8318         * lib/freadptr.c: Include stdio-impl.h.
8319         (freadptr): Remove redundant #defines.
8320         * lib/freadseek.c: Include stdio-impl.h.
8321         (freadptrinc): Remove redundant #defines.
8322         * lib/fseeko.c: Include stdio-impl.h.
8323         (rpl_fseeko): Remove redundant #defines.
8324         * lib/fseterr.c: Include stdio-impl.h.
8325         (fseterr): Remove redundant #defines.
8326         * lib/fwritable.c: Include stdio-impl.h.
8327         (fwritable: Remove redundant #defines.
8328         * lib/fwriting.c: Include stdio-impl.h.
8329         (fwriting): Remove redundant #defines.
8330         * modules/fbufmode (Files): Add lib/stdio-impl.h.
8331         * modules/fflush (Files): Likewise.
8332         * modules/fpurge (Files): Likewise.
8333         * modules/freadable (Files): Likewise.
8334         * modules/freadahead (Files): Likewise.
8335         * modules/freading (Files): Likewise.
8336         * modules/freadptr (Files): Likewise.
8337         * modules/freadseek (Files): Likewise.
8338         * modules/fseeko (Files): Likewise.
8339         * modules/fseterr (Files): Likewise.
8340         * modules/fwritable (Files): Likewise.
8341         * modules/fwriting (Files): Likewise.
8342
8343 2008-04-26  Bruno Haible  <bruno@clisp.org>
8344
8345         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
8346         restore_seek_optimization, update_fpos_cache): New functions, extracted
8347         from rpl_fflush.
8348         (rpl_fflush): Use them.
8349         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
8350         (gl_REPLACE_FFLUSH): Use it.
8351
8352 2008-04-26  Bruno Haible  <bruno@clisp.org>
8353
8354         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
8355         on Solaris.
8356         * tests/test-xstrtoimax.sh: Likewise.
8357         * tests/test-xstrtoumax.sh: Likewise.
8358         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8359
8360 2008-04-26  Bruno Haible  <bruno@clisp.org>
8361
8362         * modules/memchr-tests: New file.
8363         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
8364
8365 2008-04-26  Eric Blake  <ebb9@byu.net>
8366             Bruno Haible  <bruno@clisp.org>
8367
8368         * lib/memchr.c: Include intprops.h.
8369         (__memchr): Optimize parallel detection of matching bytes. Rename local
8370         variables. Add explanatory comments.
8371
8372 2008-04-26  Bruno Haible  <bruno@clisp.org>
8373
8374         Fix module 'memchr', broken since 2000-10-28.
8375         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
8376
8377 2008-04-26  Bruno Haible  <bruno@clisp.org>
8378
8379         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
8380         comments.
8381
8382 2008-04-25  Eric Blake  <ebb9@byu.net>
8383
8384         Use native fstatat on cygwin 1.7.0.
8385         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
8386         first.
8387
8388 2008-04-23  Eric Blake  <ebb9@byu.net>
8389
8390         Improve memchr2 performance.
8391         * lib/memchr2.c (memchr2): Further optimize parallel detection of
8392         NUL bytes.
8393         * modules/memchr2 (Depends-on): Use intprops.h.
8394
8395 2008-04-23  Simon Josefsson  <simon@josefsson.org>
8396
8397         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
8398         an inline function instead of a CPP macro.  Patch by Ben Pfaff
8399         <blp@cs.stanford.edu>.
8400
8401 2008-04-23  Simon Josefsson  <simon@josefsson.org>
8402
8403         * lib/arpa_inet.in.h: New file.
8404
8405         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
8406         (Makefile.am): Sed in substitute header file.
8407
8408         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
8409         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
8410
8411         * modules/inet_ntop (configure.ac): Use
8412         gl_ARPA_INET_MODULE_INDICATOR.
8413
8414         * modules/inet_pton (configure.ac): Use
8415         gl_ARPA_INET_MODULE_INDICATOR.
8416
8417 2008-04-22  Jim Meyering  <meyering@redhat.com>
8418
8419         * modules/verify (License): Re-license as LGPLv2+.
8420
8421 2008-04-22  Simon Josefsson  <simon@josefsson.org>
8422
8423         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
8424         parameter to void* as per POSIX standard (MinGW uses char*).
8425
8426 2008-04-21  Bruno Haible  <bruno@clisp.org>
8427
8428         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
8429         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
8430         Define to replacements if REPLACE_ISWCNTRL is 1.
8431         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
8432         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
8433         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
8434         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
8435         what it fixes.
8436         * doc/posix-functions/iswalpha.texi: Likewise.
8437         * doc/posix-functions/iswblank.texi: Likewise.
8438         * doc/posix-functions/iswcntrl.texi: Likewise.
8439         * doc/posix-functions/iswdigit.texi: Likewise.
8440         * doc/posix-functions/iswgraph.texi: Likewise.
8441         * doc/posix-functions/iswlower.texi: Likewise.
8442         * doc/posix-functions/iswprint.texi: Likewise.
8443         * doc/posix-functions/iswpunct.texi: Likewise.
8444         * doc/posix-functions/iswspace.texi: Likewise.
8445         * doc/posix-functions/iswupper.texi: Likewise.
8446         * doc/posix-functions/iswxdigit.texi: Likewise.
8447         Reported by Alain Guibert.
8448
8449 2008-04-21  Bruno Haible  <bruno@clisp.org>
8450
8451         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
8452         Patch by Alain Guibert.
8453
8454 2008-04-21  Bruno Haible  <bruno@clisp.org>
8455
8456         Fix test failures on mingw.
8457         * tests/test-xstrtol.c (print_no_progname): New function.
8458         (main): Install it in error_print_progname hook.
8459         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
8460         * tests/test-xstrtoimax.sh: Likewise.
8461         * tests/test-xstrtoumax.sh: Likewise.
8462
8463 2008-04-21  Bruno Haible  <bruno@clisp.org>
8464
8465         Fix test failure on mingw.
8466         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
8467
8468 2008-04-21  Bruno Haible  <bruno@clisp.org>
8469
8470         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
8471         Actually assign a value.
8472
8473 2008-04-20  Bruno Haible  <bruno@clisp.org>
8474
8475         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
8476         take 2.
8477         * lib/canonicalize.c (canonicalize_file_name): Elide if the
8478         'canonicalize-lgpl' module is also used.
8479         * lib/canonicalize-lgpl.c: Undo last change.
8480         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
8481
8482 2008-04-20  Bruno Haible  <bruno@clisp.org>
8483
8484         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
8485         config.h. Provide _mkdir based fallback for mingw.
8486         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
8487         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
8488         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
8489         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
8490         rather than defining mkdir in config.h.
8491         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
8492         (gl_SYS_STAT_H_DEFAULTS): New macro.
8493         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
8494         HAVE_IO_H any more.
8495         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
8496         HAVE_DECL_MKDIR and HAVE_IO_H.
8497
8498 2008-04-20  Bruno Haible  <bruno@clisp.org>
8499
8500         * lib/isapipe.c: Port to native Windows platforms.
8501
8502 2008-04-20  Bruno Haible  <bruno@clisp.org>
8503
8504         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
8505
8506 2008-04-21  Eric Blake  <ebb9@byu.net>
8507
8508         Work around preprocessors that don't handle UINTMAX_MAX.
8509         * lib/memchr2.c (memchr2): Avoid embedded #if.
8510         Reported by Alain Guibert, fix suggested by Bruno Haible.
8511
8512 2008-04-21  Simon Josefsson  <simon@josefsson.org>
8513
8514         * doc/posix-functions/strftime.texi (strftime): Explain better
8515         Windows incompatibility.  Suggested by Micah Cowan
8516         <micah@cowan.name>.
8517
8518 2008-04-20  Bruno Haible  <bruno@clisp.org>
8519
8520         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
8521         unistr/u8-mblen.
8522
8523 2008-04-20  Bruno Haible  <bruno@clisp.org>
8524
8525         Fix test failure on platforms with non-GNU iconv.
8526         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
8527         (U_TO_U8): Use it, rather than u16_to_u8.
8528         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
8529         units at the end of the input string.
8530         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
8531
8532 2008-04-20  Bruno Haible  <bruno@clisp.org>
8533
8534         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
8535         when the resulting length is 0.
8536         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
8537
8538 2008-04-20  Bruno Haible  <bruno@clisp.org>
8539
8540         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
8541         works.
8542         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
8543
8544 2008-04-20  Bruno Haible  <bruno@clisp.org>
8545
8546         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
8547         * modules/tsearch-tests (configure.ac): Test for initstate function.
8548
8549 2008-04-20  Bruno Haible  <bruno@clisp.org>
8550
8551         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
8552         for nlink_t if missing.
8553         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
8554
8555 2008-04-19  Bruno Haible  <bruno@clisp.org>
8556
8557         Work around snprintf bug on Linux libc5.
8558         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
8559         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
8560         gl_SNPRINTF_SIZE1.
8561         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
8562         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
8563         that test failed.
8564         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
8565         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
8566         * modules/snprintf (Files): Add m4/printf.m4.
8567         * modules/vsnprintf (Files): Likewise.
8568         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
8569         * doc/posix-functions/vsnprintf.texi: Likewise.
8570
8571 2008-04-19  Bruno Haible  <bruno@clisp.org>
8572
8573         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
8574         from 0.0058 to less than 10^-7.
8575
8576 2008-04-19  Bruno Haible  <bruno@clisp.org>
8577
8578         Fix rounding when a precision is given.
8579         * lib/vasnprintf.c (is_borderline): New function.
8580         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
8581         9...9x.
8582         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
8583         %e, %g.
8584         * tests/test-vasprintf-posix.c (test_function): Likewise.
8585         * tests/test-snprintf-posix.h (test_function): Likewise.
8586         * tests/test-sprintf-posix.h (test_function): Likewise.
8587         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
8588         * tests/test-printf-posix.h (test_function): Likewise.
8589         * tests/test-printf-posix.output: Update.
8590         Reported by John Darrington <john@darrington.wattle.id.au> via
8591         Ben Pfaff <blp@cs.stanford.edu>.
8592
8593 2008-04-18  Simon Josefsson  <simon@josefsson.org>
8594
8595         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
8596         Suggested by Bruno Haible <bruno@clisp.org>.
8597
8598 2008-04-17  Bruno Haible  <bruno@clisp.org>
8599
8600         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
8601         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
8602         implementation.
8603         Patch by Bruce Merry <bmerry@gmail.com>.
8604
8605 2008-04-17  Simon Josefsson  <simon@josefsson.org>
8606
8607         * doc/posix-functions/strftime.texi (strftime): Mention that %e
8608         doesn't work under Windows.
8609
8610 2008-04-16  Bruno Haible  <bruno@clisp.org>
8611
8612         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
8613         New macros.
8614         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
8615         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
8616         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
8617         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
8618         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
8619         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
8620         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
8621         macros.
8622         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
8623         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
8624         Northern Sotho, Uighur.
8625
8626 2008-04-16  Bruno Haible  <bruno@clisp.org>
8627
8628         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
8629         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
8630         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
8631         Reported by Daniel Bergström <daniel@octocode.com>.
8632
8633 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
8634             Bruno Haible  <bruno@clisp.org>
8635
8636         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
8637         function.
8638         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
8639         New functions, mostly extracted from gl_locale_name_default.
8640         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
8641
8642 2008-04-16  Eric Blake  <ebb9@byu.net>
8643
8644         Adjust strtod detection to catch glibc 2.7 bug.
8645         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
8646         Reported by John Gatewood Ham.
8647
8648 2008-04-16  Bruno Haible  <bruno@clisp.org>
8649
8650         Add tentative support for Linux libc5.
8651         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
8652         * lib/fpurge.c (fpurge): Likewise.
8653         * lib/freadable.c (freadable): Likewise.
8654         * lib/freadahead.c (freadahead): Likewise.
8655         * lib/freading.c (freading): Likewise.
8656         * lib/freadptr.c (freadptr): Likewise.
8657         * lib/freadseek.c (freadptrinc): Likewise.
8658         * lib/fseeko.c (rpl_fseeko): Likewise.
8659         * lib/fseterr.c (fseterr): Likewise.
8660         * lib/fwritable.c (fwritable): Likewise.
8661         * lib/fwriting.c (fwriting): Likewise.
8662         Reported by Alain Guibert <alguibert+bts@free.fr>.
8663
8664 2008-04-15  Bruno Haible  <bruno@clisp.org>
8665
8666         * modules/mathl (configure.ac): Define module indicator.
8667
8668 2008-04-15  Bruno Haible  <bruno@clisp.org>
8669
8670         * lib/logl.c (logl): Remove unused variables.
8671
8672 2008-04-15  Bruno Haible  <bruno@clisp.org>
8673
8674         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
8675         fails.
8676
8677 2008-04-15  Bruno Haible  <bruno@clisp.org>
8678
8679         * lib/trim.c (trim2): Fix argument of isspace() macro.
8680
8681 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
8682
8683         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
8684         to 0.
8685         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
8686
8687 2008-04-14  Bruno Haible  <bruno@clisp.org>
8688
8689         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
8690         AC_LANG_PROGRAM argument.
8691         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
8692         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
8693         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
8694         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
8695         * m4/math_h.m4 (gl_MATH_H): Likewise.
8696         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
8697         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8698         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
8699         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
8700         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
8701         * m4/regex.m4 (gl_REGEX): Likewise.
8702         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
8703         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
8704         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8705         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
8706         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8707         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8708         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
8709         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
8710
8711 2008-04-14  Jim Meyering  <meyering@redhat.com>
8712
8713         test-strtod: fix typos: s/abs/fabs/
8714         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
8715
8716 2008-04-13  Bruno Haible  <bruno@clisp.org>
8717
8718         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
8719         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
8720         module is also used and while not building the reloc-wrapper.
8721
8722 2008-04-13  Bruno Haible  <bruno@clisp.org>
8723
8724         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
8725
8726 2008-04-13  Bruno Haible  <bruno@clisp.org>
8727
8728         Fix AIX compilation failure introduced on 2008-04-02.
8729         * tests/test-frexp.c (exp): Undefine before redefining.
8730         * tests/test-frexpl.c (exp): Likewise.
8731
8732 2008-04-13  Bruno Haible  <bruno@clisp.org>
8733
8734         Work around a HP-UX stdio bug.
8735         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
8736         * tests/test-ftello.c (main): Likewise.
8737         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
8738         * doc/posix-functions/ftello.texi: Likewise.
8739
8740 2008-04-13  Bruno Haible  <bruno@clisp.org>
8741
8742         Make test-signbit pass on HP-UX/hppa.
8743         * tests/test-signbit.c (minus_zerol): New variable.
8744         (test_signbitl): Use it.
8745
8746 2008-04-13  Bruno Haible  <bruno@clisp.org>
8747
8748         Make truncl work on OSF/1 4.0.
8749         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
8750         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
8751         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
8752         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
8753         HAVE_DECL_TRUNCL.
8754         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
8755         HAVE_DECL_TRUNCL.
8756         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
8757
8758 2008-04-13  Bruno Haible  <bruno@clisp.org>
8759
8760         * lib/unictype.h: Remove trailing comma from enumeration definitions.
8761
8762 2008-04-13  Bruno Haible  <bruno@clisp.org>
8763
8764         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
8765         expression, so as to avoid HP-UX 11 cc compiler bug.
8766
8767 2008-04-13  Bruno Haible  <bruno@clisp.org>
8768
8769         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
8770
8771 2008-04-13  Bruno Haible  <bruno@clisp.org>
8772
8773         * lib/git-merge-changelog.c: Remove empty declaration outside of
8774         functions.
8775
8776 2008-04-13  Bruno Haible  <bruno@clisp.org>
8777
8778         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
8779
8780 2008-04-13  Bruno Haible  <bruno@clisp.org>
8781
8782         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
8783         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
8784         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
8785         also if it exists but lacks definitions of the SHUT_* macros.
8786         * modules/sys_socket (Description): Update.
8787         Reported by Elbert Pol <e.pol@chello.nl>.
8788
8789 2008-04-13  Bruno Haible  <bruno@clisp.org>
8790
8791         * lib/localcharset.c (OS2): Don't redefine if already defined.
8792         Reported by Elbert Pol <e.pol@chello.nl>.
8793
8794 2008-04-13  Bruno Haible  <bruno@clisp.org>
8795
8796         * lib/binary-io.h [__EMX__]: Include <io.h>.
8797         Reported by Elbert Pol <e.pol@chello.nl>.
8798
8799 2008-04-12  Bruno Haible  <bruno@clisp.org>
8800
8801         * lib/fpucw.h: Enable the definitions also for x86_64.
8802         Needed for NetBSD/x86_64.
8803         Reported by Thomas Klausner <tk@giga.or.at>.
8804
8805 2008-04-12  Bruno Haible  <bruno@clisp.org>
8806
8807         * tests/test-strtod.c: Include isnand.h.
8808         (main): Use isnand instead of isnan.
8809         Reported by Jim Meyering.
8810
8811 2008-04-12  Bruno Haible  <bruno@clisp.org>
8812
8813         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
8814         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
8815
8816 2008-04-12  Jim Meyering  <meyering@redhat.com>
8817
8818         * m4/math_h.m4 (gl_MATH_H): Fix typos.
8819
8820 2008-04-12  Bruno Haible  <bruno@clisp.org>
8821
8822         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
8823         Reported by Elbert Pol <e.pol@chello.nl>.
8824
8825 2008-04-12  Eric Blake  <ebb9@byu.net>
8826
8827         Work around Solaris 10 math.h bug.
8828         * m4/math_h.m4 (gl_MATH_H): Check for bug.
8829         (gl_MATH_H_DEFAULTS): Set up default.
8830         * modules/math (Makefile.am): Replace new indicators.
8831         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
8832         * tests/test-math.c (main): Test this.
8833         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
8834         * doc/posix-headers/math.texi (math.h): Mention bug.
8835         Reported by Nelson H. F. Beebe and Jim Meyering.
8836
8837 2008-04-11  Bruno Haible  <bruno@clisp.org>
8838
8839         Adapt to future versions of Apple GCC.
8840         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
8841         Reported by Peter O'Gorman <peter@pogma.com>.
8842
8843 2008-04-11  Bruno Haible  <bruno@clisp.org>
8844
8845         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
8846
8847 2008-04-11  Bruno Haible  <bruno@clisp.org>
8848
8849         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
8850
8851         * modules/getaddrinfo-tests (Makefile.am): Define
8852         test_getaddrinfo_LDADD.
8853
8854 2008-04-11  Bruno Haible  <bruno@clisp.org>
8855
8856         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
8857         (init): Fix syntax error.
8858         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
8859         is declared.
8860
8861 2008-04-11  Bruno Haible  <bruno@clisp.org>
8862
8863         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
8864         * modules/glob (Depends-on): Add stdbool.
8865
8866 2008-04-11  Bruno Haible  <bruno@clisp.org>
8867
8868         * lib/trim.c: Include <string.h>.
8869
8870 2008-04-11  Eric Blake  <ebb9@byu.net>
8871
8872         Avoid compile failure on OS/2.
8873         * lib/regex_internal.h (internal_function): Disable optimization
8874         on OS/2 (__EMX__), where it caused compiler error.
8875         Reported by Elbert Pol.
8876
8877 2008-04-11  Bruno Haible  <bruno@clisp.org>
8878
8879         Flush the standard error stream before aborting. Needed on mingw.
8880         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
8881         * tests/test-array_list.c (ASSERT): Likewise.
8882         * tests/test-array_oset.c (ASSERT): Likewise.
8883         * tests/test-avltree_list.c (ASSERT): Likewise.
8884         * tests/test-avltree_oset.c (ASSERT): Likewise.
8885         * tests/test-avltreehash_list.c (ASSERT): Likewise.
8886         * tests/test-binary-io.c (ASSERT): Likewise.
8887         * tests/test-byteswap.c (ASSERT): Likewise.
8888         * tests/test-c-ctype.c (ASSERT): Likewise.
8889         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
8890         * tests/test-c-strcasestr.c (ASSERT): Likewise.
8891         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
8892         * tests/test-c-strstr.c (ASSERT): Likewise.
8893         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
8894         * tests/test-canonicalize.c (ASSERT): Likewise.
8895         * tests/test-carray_list.c (ASSERT): Likewise.
8896         * tests/test-ceilf1.c (ASSERT): Likewise.
8897         * tests/test-ceilf2.c (ASSERT): Likewise.
8898         * tests/test-ceill.c (ASSERT): Likewise.
8899         * tests/test-count-one-bits.c (ASSERT): Likewise.
8900         * tests/test-fbufmode.c (ASSERT): Likewise.
8901         * tests/test-fflush2.c (ASSERT): Likewise.
8902         * tests/test-floorf1.c (ASSERT): Likewise.
8903         * tests/test-floorf2.c (ASSERT): Likewise.
8904         * tests/test-floorl.c (ASSERT): Likewise.
8905         * tests/test-fopen.c (ASSERT): Likewise.
8906         * tests/test-fpending.c (ASSERT): Likewise.
8907         * tests/test-fprintf-posix.c (ASSERT): Likewise.
8908         * tests/test-fpurge.c (ASSERT): Likewise.
8909         * tests/test-freadable.c (ASSERT): Likewise.
8910         * tests/test-freadahead.c (ASSERT): Likewise.
8911         * tests/test-freading.c (ASSERT): Likewise.
8912         * tests/test-freadptr.c (ASSERT): Likewise.
8913         * tests/test-freadptr2.c (ASSERT): Likewise.
8914         * tests/test-freadseek.c (ASSERT): Likewise.
8915         * tests/test-freopen.c (ASSERT): Likewise.
8916         * tests/test-frexp.c (ASSERT): Likewise.
8917         * tests/test-frexpl.c (ASSERT): Likewise.
8918         * tests/test-fseek.c (ASSERT): Likewise.
8919         * tests/test-fseeko.c (ASSERT): Likewise.
8920         * tests/test-fstrcmp.c (ASSERT): Likewise.
8921         * tests/test-ftell.c (ASSERT): Likewise.
8922         * tests/test-ftello.c (ASSERT): Likewise.
8923         * tests/test-func.c (ASSERT): Likewise.
8924         * tests/test-fwritable.c (ASSERT): Likewise.
8925         * tests/test-fwriting.c (ASSERT): Likewise.
8926         * tests/test-getdelim.c (ASSERT): Likewise.
8927         * tests/test-getline.c (ASSERT): Likewise.
8928         * tests/test-i-ring.c (ASSERT): Likewise.
8929         * tests/test-iconv-utf.c (ASSERT): Likewise.
8930         * tests/test-iconv.c (ASSERT): Likewise.
8931         * tests/test-isfinite.c (ASSERT): Likewise.
8932         * tests/test-isnand.c (ASSERT): Likewise.
8933         * tests/test-isnanf.c (ASSERT): Likewise.
8934         * tests/test-isnanl.h (ASSERT): Likewise.
8935         * tests/test-ldexpl.c (ASSERT): Likewise.
8936         * tests/test-linked_list.c (ASSERT): Likewise.
8937         * tests/test-linkedhash_list.c (ASSERT): Likewise.
8938         * tests/test-localename.c (ASSERT): Likewise.
8939         * tests/test-lseek.c (ASSERT): Likewise.
8940         * tests/test-mbscasecmp.c (ASSERT): Likewise.
8941         * tests/test-mbscasestr1.c (ASSERT): Likewise.
8942         * tests/test-mbscasestr2.c (ASSERT): Likewise.
8943         * tests/test-mbscasestr3.c (ASSERT): Likewise.
8944         * tests/test-mbscasestr4.c (ASSERT): Likewise.
8945         * tests/test-mbschr.c (ASSERT): Likewise.
8946         * tests/test-mbscspn.c (ASSERT): Likewise.
8947         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
8948         * tests/test-mbspbrk.c (ASSERT): Likewise.
8949         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
8950         * tests/test-mbsrchr.c (ASSERT): Likewise.
8951         * tests/test-mbsspn.c (ASSERT): Likewise.
8952         * tests/test-mbsstr1.c (ASSERT): Likewise.
8953         * tests/test-mbsstr2.c (ASSERT): Likewise.
8954         * tests/test-mbsstr3.c (ASSERT): Likewise.
8955         * tests/test-memchr2.c (ASSERT): Likewise.
8956         * tests/test-memmem.c (ASSERT): Likewise.
8957         * tests/test-open.c (ASSERT): Likewise.
8958         * tests/test-printf-frexp.c (ASSERT): Likewise.
8959         * tests/test-printf-frexpl.c (ASSERT): Likewise.
8960         * tests/test-printf-posix.c (ASSERT): Likewise.
8961         * tests/test-quotearg.c (ASSERT): Likewise.
8962         * tests/test-rbtree_list.c (ASSERT): Likewise.
8963         * tests/test-rbtree_oset.c (ASSERT): Likewise.
8964         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
8965         * tests/test-round1.c (ASSERT): Likewise.
8966         * tests/test-roundf1.c (ASSERT): Likewise.
8967         * tests/test-roundl.c (ASSERT): Likewise.
8968         * tests/test-signbit.c (ASSERT): Likewise.
8969         * tests/test-sleep.c (ASSERT): Likewise.
8970         * tests/test-snprintf-posix.c (ASSERT): Likewise.
8971         * tests/test-snprintf.c (ASSERT): Likewise.
8972         * tests/test-sprintf-posix.c (ASSERT): Likewise.
8973         * tests/test-stat-time.c (ASSERT): Likewise.
8974         * tests/test-strcasestr.c (ASSERT): Likewise.
8975         * tests/test-strerror.c (ASSERT): Likewise.
8976         * tests/test-striconv.c (ASSERT): Likewise.
8977         * tests/test-striconveh.c (ASSERT): Likewise.
8978         * tests/test-striconveha.c (ASSERT): Likewise.
8979         * tests/test-strsignal.c (ASSERT): Likewise.
8980         * tests/test-strstr.c (ASSERT): Likewise.
8981         * tests/test-strtod.c (ASSERT): Likewise.
8982         * tests/test-trunc1.c (ASSERT): Likewise.
8983         * tests/test-trunc2.c (ASSERT): Likewise.
8984         * tests/test-truncf1.c (ASSERT): Likewise.
8985         * tests/test-truncf2.c (ASSERT): Likewise.
8986         * tests/test-truncl.c (ASSERT): Likewise.
8987         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
8988         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
8989         * tests/test-vasnprintf.c (ASSERT): Likewise.
8990         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
8991         * tests/test-vasprintf.c (ASSERT): Likewise.
8992         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
8993         * tests/test-vprintf-posix.c (ASSERT): Likewise.
8994         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
8995         * tests/test-vsnprintf.c (ASSERT): Likewise.
8996         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
8997         * tests/test-wcwidth.c (ASSERT): Likewise.
8998         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
8999         * tests/test-xprintf-posix.c (ASSERT): Likewise.
9000         * tests/test-xvasprintf.c (ASSERT): Likewise.
9001         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
9002         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
9003         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
9004         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
9005         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
9006         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
9007         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
9008         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
9009         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
9010         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
9011         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
9012         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
9013         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
9014         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
9015         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
9016         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
9017         * tests/unictype/test-block_list.c (ASSERT): Likewise.
9018         * tests/unictype/test-block_of.c (ASSERT): Likewise.
9019         * tests/unictype/test-block_test.c (ASSERT): Likewise.
9020         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
9021         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
9022         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
9023         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
9024         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
9025         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
9026         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
9027         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
9028         * tests/unictype/test-combining.c (ASSERT): Likewise.
9029         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
9030         * tests/unictype/test-digit.c (ASSERT): Likewise.
9031         * tests/unictype/test-mirror.c (ASSERT): Likewise.
9032         * tests/unictype/test-numeric.c (ASSERT): Likewise.
9033         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
9034         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
9035         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
9036         * tests/unictype/test-scripts.c (ASSERT): Likewise.
9037         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
9038         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
9039         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
9040         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
9041         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
9042         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
9043         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
9044         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
9045         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
9046         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
9047         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
9048         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
9049         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
9050         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
9051         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
9052         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
9053         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
9054         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
9055         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
9056         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
9057         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
9058         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
9059         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
9060         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
9061         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
9062         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
9063         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
9064         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
9065         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
9066         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
9067         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
9068         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
9069         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
9070         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
9071         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
9072         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
9073         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
9074         Reported by Eric Blake.
9075
9076 2008-04-11  Bruno Haible  <bruno@clisp.org>
9077
9078         * lib/wchar.in.h: Tweak comment.
9079
9080 2008-04-11  Bruno Haible  <bruno@clisp.org>
9081
9082         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
9083         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
9084         gl_COMMON.
9085         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
9086
9087 2008-04-11  Bruno Haible  <bruno@clisp.org>
9088
9089         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
9090
9091 2008-04-11  Simon Josefsson  <simon@josefsson.org>
9092
9093         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
9094         of attempting to use non-existing /dev/*random.  Based on patch
9095         from Adam Strzelecki <ono@java.pl> in
9096         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
9097
9098 2008-04-08  Bruno Haible  <bruno@clisp.org>
9099
9100         Add tentative support for emx+gcc.
9101         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
9102         * lib/fpurge.c (fpurge): Likewise.
9103         * lib/freadable.c (freadable): Likewise.
9104         * lib/freadahead.c (freadahead): Likewise.
9105         * lib/freading.c (freading): Likewise.
9106         * lib/freadptr.c (freadptr): Likewise.
9107         * lib/freadseek.c (freadptrinc): Likewise.
9108         * lib/fseeko.c (rpl_fseeko): Likewise.
9109         * lib/fseterr.c (fseterr): Likewise.
9110         * lib/fwritable.c (fwritable): Likewise.
9111         * lib/fwriting.c (fwriting): Likewise.
9112         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
9113
9114 2008-04-09  Eric Blake  <ebb9@byu.net>
9115
9116         Avoid some autoconf warnings.
9117         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
9118         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
9119         * m4/afs.m4 (gl_AFS): Likewise.
9120         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
9121         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
9122         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
9123         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
9124         (gl_INTEGER_TYPE_SUFFIX): Likewise.
9125         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
9126         (AC_CHECK_DECLS_ONCE): Likewise.
9127         Rename file...
9128         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
9129         gnulib-tool requires autoconf 2.59 or better.
9130         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
9131
9132 2008-04-08  Eric Blake  <ebb9@byu.net>
9133
9134         Use 'git describe --match' if present (added in git 1.5.5).
9135         * build-aux/git-version-gen: Limit result to tags that match 'v*'
9136         if possible.
9137
9138 2008-04-08  Bruno Haible  <bruno@clisp.org>
9139
9140         Add tentative support for OpenServer.
9141         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
9142         _ptr, _cnt.
9143         * lib/fpurge.c (fpurge): Likewise.
9144         * lib/freadable.c (freadable): Likewise.
9145         * lib/freadahead.c (freadahead): Likewise.
9146         * lib/freading.c (freading): Likewise.
9147         * lib/freadptr.c (freadptr): Likewise.
9148         * lib/freadseek.c (freadptrinc): Likewise.
9149         * lib/fseeko.c (rpl_fseeko): Likewise.
9150         * lib/fseterr.c (fseterr): Likewise.
9151         * lib/fwritable.c (fwritable): Likewise.
9152         * lib/fwriting.c (fwriting): Likewise.
9153         Reported by Roger Cornelius <rac@tenzing.org> and
9154         Brian K. White <brian@aljex.com>.
9155
9156 2008-04-06  Jim Meyering  <meyering@redhat.com>
9157
9158         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
9159
9160 2008-04-06  Bruno Haible  <bruno@clisp.org>
9161
9162         Avoid possible error with non-ASCII bytes in UTF-8 locales.
9163         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
9164         * tests/test-printf-posix.sh: Likewise.
9165         * tests/test-vfprintf-posix.sh: Likewise.
9166         * tests/test-vprintf-posix.sh: Likewise.
9167         * tests/test-xprintf-posix.sh: Likewise.
9168
9169 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9170
9171         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
9172         hide error from 'ls', needed on OS/2.
9173         Report by Elbert Pol <elbert.pol@gmail.com>.
9174
9175 2008-04-04  Eric Blake  <ebb9@byu.net>
9176
9177         Make test-fseeko.c failures meaningful.
9178         * tests/test-fseeko.c: Print line number on failure.
9179         * tests/test-fseek.c: Likewise.
9180         Reported by Nelson H. F. Beebe.
9181
9182         Improve strtod bug detection check.
9183         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
9184         required for Solaris 10.
9185         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
9186
9187 2008-04-04  Bruno Haible  <bruno@clisp.org>
9188
9189         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
9190         by m4/setenv.m4.
9191
9192 2008-04-03  Eric Blake  <ebb9@byu.net>
9193
9194         Ensure sane .version contents.
9195         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
9196         version string.
9197         * build-aux/git-version-gen: Improve documentation.
9198
9199         Make GNU make output nicer.
9200         * top/GNUmakefile [!_have-Makefile]: Add dependency on
9201         MAKECMDGOALS to enforce message for all command line targets.  Set
9202         srcdir for use in maint.mk.
9203
9204         Another maintainer tweak.
9205         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
9206         a target that regenerates version.
9207
9208 2008-04-03  Jim Meyering  <meyering@redhat.com>
9209
9210         vc-list-files: don't cause coreutils "make po-check" failure
9211         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
9212
9213 2008-04-03  Eric Blake  <ebb9@byu.net>
9214
9215         Allow VPATH usage of vc-list-files.
9216         * build-aux/vc-list-files (scriptversion): Add timestamp.
9217         (options): Add --help, --version, -C.
9218         (CVS): Support installed cvsu.
9219
9220 2008-04-02  Bruno Haible  <bruno@clisp.org>
9221
9222         Avoid some "statement with no effect" warnings from gcc.
9223         * tests/test-wctype.c (main): Explicitly ignore unused values.
9224         Reported by Jim Meyering.
9225
9226 2008-04-02  Jim Meyering  <meyering@redhat.com>
9227
9228         Avoid some warnings from "gcc -Wshadow".
9229         * tests/test-frexp.c (exp): Define to a different identifier.
9230         * tests/test-frexpl.c (exp): Likewise.
9231
9232 2008-04-03  Jim Meyering  <meyering@redhat.com>
9233
9234         bootstrap: remove dangling *.[ch] symlinks from lib
9235         * build-aux/bootstrap [dangling symlink removal]: Move find's
9236         -depth option to precede all others, to avoid a warning.
9237         Remove *.[ch] files too, and from "$source_base" (usually lib/).
9238
9239 2008-04-02  Bruno Haible  <bruno@clisp.org>
9240
9241         Avoid some warnings from "gcc -Wshadow".
9242         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
9243         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
9244         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
9245         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
9246         Reported by Jim Meyering.
9247
9248 2008-04-01  Bruno Haible  <bruno@clisp.org>
9249
9250         Fix test to work on IRIX 6.5 with cc.
9251         * tests/test-math.c (numeric_equal): New function.
9252         (main): Use it.
9253
9254 2008-04-01  Bruno Haible  <bruno@clisp.org>
9255
9256         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
9257
9258 2008-04-01  Bruno Haible  <bruno@clisp.org>
9259
9260         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
9261         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
9262         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
9263         (Depends-on): Remove math.
9264
9265         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
9266         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
9267         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
9268         (Depends-on): Remove math.
9269
9270         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
9271         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
9272         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
9273         (Depends-on): Remove math.
9274         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
9275         (Depends-on): Remove math.
9276
9277         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
9278         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
9279         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
9280         (Depends-on): Remove math.
9281         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
9282         (Depends-on): Remove math.
9283
9284         * tests/test-round1.c: Include nan.h.
9285         (main): Use NaNd instead of NAN.
9286         * modules/round-tests (Files): Add tests/nan.h.
9287
9288         * tests/test-trunc1.c: Include nan.h.
9289         (main): Use NaNd instead of NAN.
9290         * modules/trunc-tests (Files): Add tests/nan.h.
9291
9292         * tests/test-roundf1.c: Include nan.h.
9293         (main): Use NaNf instead of NAN.
9294         * modules/roundf-tests (Files): Add tests/nan.h.
9295
9296         * tests/test-truncf1.c: Include nan.h.
9297         (main): Use NaNf instead of NAN.
9298         * modules/truncf-tests (Files): Add tests/nan.h.
9299
9300         * tests/test-ceilf1.c: Include nan.h.
9301         (main): Use NaNf instead of NAN.
9302         * modules/ceilf-tests (Files): Add tests/nan.h.
9303
9304         * tests/test-floorf1.c: Include nan.h.
9305         (main): Use NaNf instead of NAN.
9306         * modules/floorf-tests (Files): Add tests/nan.h.
9307
9308         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
9309         (main): Use NaNf instead of NAN.
9310         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
9311
9312         * tests/test-isnand.c: Include nan.h instead of <math.h>.
9313         (main): Use NaNd instead of NAN.
9314         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
9315
9316         * tests/test-frexp.c: Include nan.h.
9317         (main): Use NaNd instead of NAN.
9318         * modules/frexp-tests (Files): Add tests/nan.h.
9319
9320         * lib/isnan.c: Don't include <math.h>.
9321         (FUNC): Don't use NAN macro.
9322         * modules/isnand-nolibm (Depends-on): Remove math.
9323         * modules/isnanf-nolibm (Depends-on): Remove math.
9324         * modules/isnanl (Depends-on): Remove math.
9325         * modules/isnanl-nolibm (Depends-on): Remove math.
9326
9327         * tests/nan.h: New file.
9328
9329 2008-04-01  Eric Blake  <ebb9@byu.net>
9330
9331         Fix typos.
9332         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
9333         values to be the right type.
9334
9335         For now, cater to gnulib strtod inaccuracies.
9336         * tests/test-strtod.c (main): Allow 1-ulp error on expected
9337         fractional results.  While not as nice from a QoI perspective, it
9338         is a quicker patch than correctly implementing decimal to binary
9339         rounding.
9340
9341 2008-03-31  Eric Blake  <ebb9@byu.net>
9342
9343         Guarantee a definition of NAN.
9344         * lib/math.in.h (NAN): Define if missing.
9345         * tests/test-math.c (main): Test it.
9346         * doc/posix-headers/math.texi (math.h): Document this.
9347         * lib/isnan.c (rpl_isnand): Use it.
9348         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
9349         * tests/test-floorf1.c (NaN): Likewise.
9350         * tests/test-frexp.c (NaN): Likewise.
9351         * tests/test-isnand.c (NaN): Likewise.
9352         * tests/test-isnanf.c (NaN): Likewise.
9353         * tests/test-round1.c (NaN): Likewise.
9354         * tests/test-roundf1.c (NaN): Likewise.
9355         * tests/test-snprintf-posix.h (NaN): Likewise.
9356         * tests/test-sprintf-posix.h (NaN): Likewise.
9357         * tests/test-trunc1.c (NaN): Likewise.
9358         * tests/test-truncf1.c (NaN): Likewise.
9359         * tests/test-vasnprintf-posix.c (NaN): Likewise.
9360         * tests/test-vasprintf-posix.c (NaN): Likewise.
9361         * modules/isnand-nolibm (Depends-on): Add math.
9362         * modules/isnanf-nolibm (Depends-on): Likewise.
9363         * modules/isnanl (Depends-on): Likewise.
9364         * modules/isnanl-nolibm (Depends-on): Likewise.
9365         * modules/snprintf-posix-tests (Depends-on): Likewise.
9366         * modules/sprintf-posix-tests (Depends-on): Likewise.
9367         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
9368         * modules/vsprintf-posix-tests (Depends-on): Likewise.
9369         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
9370         * modules/vasprintf-posix-tests (Depends-on): Likewise.
9371
9372 2008-03-31  Bruno Haible  <bruno@clisp.org>
9373
9374         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
9375         * doc/posix-functions/strtod.texi: Likewise.
9376
9377 2008-03-31  Bruno Haible  <bruno@clisp.org>
9378
9379         * tests/test-strtod.c (main): Don't use C99 syntax.
9380
9381 2008-03-31  Bruno Haible  <bruno@clisp.org>
9382
9383         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
9384         Reported by Eric Blake.
9385
9386 2008-03-31  Jim Meyering  <meyering@redhat.com>
9387
9388         Don't compare actual signbit return values.
9389         * tests/test-strtod.c (main): Rather, compare only their
9390         zero/non-zero nature.
9391
9392 2008-03-31  Eric Blake  <ebb9@byu.net>
9393
9394         More strtod documentation.
9395         * doc/posix-functions/strtod.texi (strtod): Interpret more test
9396         failures as distinct bugs.
9397
9398 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
9399
9400         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
9401         Problem reported by Erik Benada in
9402         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
9403
9404 2008-03-30  Bruno Haible  <bruno@clisp.org>
9405
9406         * tests/test-strtod.c: Add comments about which assertion fails on which
9407         platform.
9408         * doc/posix-functions/strtod.texi: Add info about many more platforms.
9409
9410 2008-03-30  Eric Blake  <ebb9@byu.net>
9411
9412         Test signbit behavior on zeros.
9413         * tests/test-signbit.c (test_signbitf): Add tests for zero.
9414         (test_signbitd, test_signbitl): Likewise.
9415
9416         More strtod touchups.
9417         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
9418         sign of negative underflow, for now.  Use .5, not .1.
9419         * doc/posix-functions/strtod.texi (strtod): Mention these
9420         limitations.
9421         Reported by Jim Meyering.
9422
9423 2008-03-30  Bruno Haible  <bruno@clisp.org>
9424
9425         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
9426         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
9427
9428 2008-03-30  Bruno Haible  <bruno@clisp.org>
9429
9430         Avoid failure when attempting to return empty iconv results on some
9431         platforms.
9432         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
9433         allocation, don't report ENOMEM when the resulting string is empty.
9434
9435 2008-03-30  Bruno Haible  <bruno@clisp.org>
9436
9437         Fix buffer overrun.
9438         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
9439         Don't consider the width for tmp_length. Check count against tmp_length
9440         before doing the padding. Ensure enough allocation during padding.
9441
9442 2008-03-30  Eric Blake  <ebb9@byu.net>
9443
9444         strtod touchups.
9445         * lib/strtod.c (strtod): Avoid compiler warnings.
9446         Reported by Jim Meyering.
9447
9448 2008-03-30  Bruno Haible  <bruno@clisp.org>
9449
9450         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
9451         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
9452         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
9453         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
9454         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
9455         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
9456         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
9457         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
9458
9459         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
9460         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
9461         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
9462         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
9463         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
9464         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
9465         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
9466         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
9467
9468         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
9469         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
9470         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
9471         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
9472         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
9473         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
9474         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
9475         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
9476
9477         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
9478         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
9479
9480         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
9481         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
9482
9483         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
9484         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
9485
9486         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
9487         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
9488         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
9489
9490         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
9491         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
9492         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
9493
9494         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
9495         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
9496         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
9497
9498         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
9499         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
9500         * modules/vasprintf (Depends-on): Add EOVERFLOW.
9501
9502         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
9503         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
9504         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
9505         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
9506         (Depends-on): Add EOVERFLOW.
9507         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
9508         (Depends-on): Add EOVERFLOW.
9509         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
9510         (Depends-on): Add EOVERFLOW.
9511         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
9512         (Depends-on): Add EOVERFLOW.
9513         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
9514         (Depends-on): Add EOVERFLOW.
9515         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
9516         (Depends-on): Add EOVERFLOW.
9517         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
9518         (Depends-on): Add EOVERFLOW.
9519         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
9520         (Depends-on): Add EOVERFLOW.
9521
9522         * lib/sprintf.c (EOVERFLOW): Remove fallback.
9523         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
9524         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
9525
9526         * lib/snprintf.c (EOVERFLOW): Remove fallback.
9527         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
9528         * modules/snprintf (Depends-on): Add EOVERFLOW.
9529
9530         * lib/poll.c (EOVERFLOW): Remove fallback.
9531         * modules/poll (Depends-on): Add EOVERFLOW.
9532
9533         * lib/getugroups.c (EOVERFLOW): Remove fallback.
9534         * modules/getugroups (Depends-on): Add EOVERFLOW.
9535
9536         * lib/getdelim.c (EOVERFLOW): Remove fallback.
9537         * modules/getdelim (Depends-on): Add EOVERFLOW.
9538
9539         * lib/ftell.c (EOVERFLOW): Remove fallback.
9540         * modules/ftell (Depends-on): Add EOVERFLOW.
9541
9542         * lib/fprintf.c (EOVERFLOW): Remove fallback.
9543         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
9544         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
9545
9546         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
9547
9548         * modules/EOVERFLOW-tests: New file.
9549         * tests/test-EOVERFLOW.c: New file.
9550
9551         * modules/EOVERFLOW: New file.
9552         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
9553
9554 2008-03-30  Bruno Haible  <bruno@clisp.org>
9555
9556         Fix bug introduced on 2007-06-10.
9557         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
9558         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
9559
9560 2008-03-30  Bruno Haible  <bruno@clisp.org>
9561
9562         Improve freadseek's efficiency after ungetc.
9563         * lib/freadseek.c: Include freadahead.h.
9564         (freadptrinc): New function, extracted from freadseek.
9565         (freadseek): Use it in a loop. Use freadahead to determine the number
9566         of loop iterations.
9567         * modules/freadseek (Depends-on): Add freadahead.
9568         (configure.ac): Require AC_C_INLINE.
9569
9570 2008-03-30  Bruno Haible  <bruno@clisp.org>
9571
9572         * lib/freadseek.c (freadseek): Don't ignore the return value of
9573         freadptr.
9574
9575 2008-03-29  Eric Blake  <ebb9@byu.net>
9576
9577         Add hex float support.
9578         * modules/strtod (Depends-on): Add c-ctype.
9579         (Link): Mention POW_LIB.
9580         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
9581         whitespace between 'e' and exponent.
9582         * tests/test-strtod.c (main): Enable hex float tests.
9583         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
9584         now provides.
9585
9586         Document various strtod bugs, with some fixes.
9587         * doc/posix-functions/strtod.texi (strtod): Document bugs with
9588         "-0x", "inf", "nan", and hex constants.
9589         * doc/posix-functions/atof.texi (atof): Likewise.
9590         * modules/stdlib (Makefile.am): Support strtod.
9591         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
9592         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
9593         detect additional strtod bugs.
9594         * lib/stdlib.in.h (rpl_strtod): Add declarations.
9595         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
9596         bool where appropriate.  Parse 'inf' and 'nan'.
9597         * tests/test-strtod.c: New file.
9598         * modules/strtod (Depends-on): Add stdbool, stdlib.
9599         (configure.ac): Turn on module indicator.
9600         * modules/strtod-tests: New module.
9601
9602 2008-03-29  Eric Blake  <ebb9@byu.net>
9603
9604         Fix ftell on mingw.
9605         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
9606         * modules/ftell-tests (Depends-on): Add binary-io.
9607         * modules/ftello-tests (Depends-on): Likewise.
9608         * tests/test-ftell.c (main): Enhance test to cover behavior after
9609         ungetc.  Enforce binary mode.
9610         * tests/test-ftello.c (main): Likewise.
9611
9612         Pass test-freadseek on cygwin.
9613         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
9614         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
9615         ungetc buffer.
9616
9617         * tests/test-fflush2.c (main): Fix typo.
9618
9619 2008-03-29  Bruno Haible  <bruno@clisp.org>
9620
9621         * tests/test-fflush2.c (main): Temporarily disable the contents of
9622         this test.
9623         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
9624         Reported by Eric Blake.
9625
9626 2008-03-28  Simon Josefsson  <simon@josefsson.org>
9627
9628         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
9629         (GC_SHA224_DIGEST_SIZE): Add.
9630
9631         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
9632         (gc_hash_digest_length): Likewise.
9633         (gc_hash_buffer): Likewise.
9634
9635 2008-03-25  Bruno Haible  <bruno@clisp.org>
9636
9637         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
9638         detail which gettext release to use.
9639         Reported by Simon Josefsson.
9640
9641 2008-03-26  Jim Meyering  <meyering@redhat.com>
9642
9643         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
9644         * modules/gnumakefile (clean-GNUmakefile): Also, use
9645         test ... && ... || : syntax rather than if-then ... fi.
9646
9647         gnumakefile: Don't double-quote-expand $(VPATH) value.
9648         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
9649
9650 2008-03-24  Eric Blake  <ebb9@byu.net>
9651
9652         Alter GNUmakefile to install into top directory.
9653         * modules/maintainer-makefile: Split, and add dependency...
9654         * modules/gnumakefile: to this new module.
9655         * build-aux/GNUmakefile: Move...
9656         * top/GNUmakefile: ...here.
9657         * build-aux/maint.mk: Move...
9658         * top/maint.mk: ...here.
9659         * MODULES.html.sh (Support for maintaining...): Document new
9660         module.
9661
9662 2008-03-23  Bruno Haible  <bruno@clisp.org>
9663
9664         * gnulib-tool: New options --vc-files, --no-vc-files.
9665         (func_usage): Document them.
9666         (vc_files): New variable.
9667         (func_import): Consider vc_files.
9668         (func_create_testdir): Set vc_files to empty.
9669         Suggested by Jim Meyering and Karl Berry.
9670
9671 2008-03-23  Bruno Haible  <bruno@clisp.org>
9672
9673         Fix regex compilation error on HP-UX 11.
9674         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
9675         * modules/regex (Files): Add m4/mbstate_t.m4.
9676         Reported by Ton Voon <ton.voon@altinity.com>.
9677
9678 2008-03-23  Bruno Haible  <bruno@clisp.org>
9679
9680         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
9681
9682 2008-03-23  Eric Blake  <ebb9@byu.net>
9683             Bruno Haible  <bruno@clisp.org>
9684
9685         Install files from top/ in the destination directory.
9686         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
9687         augmentation also for the files from top/.
9688         (func_import, func_create_testdir): Rewrite file names:
9689         top/filename -> filename.
9690
9691 2008-03-23  Bruno Haible  <bruno@clisp.org>
9692
9693         Tweak "gnulib --version" output.
9694         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
9695
9696 2008-03-23  Bruno Haible  <bruno@clisp.org>
9697
9698         Tweak "gnulib --version" output.
9699         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
9700         rather than contents of ChangeLog, when possible.
9701
9702 2008-03-21  Eric Blake  <ebb9@byu.net>
9703
9704         More --version tweaks.
9705         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
9706         date of last ChangeLog entry.
9707
9708 2008-03-21  Jim Meyering  <meyering@redhat.com>
9709
9710         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
9711
9712 2008-03-20  Eric Blake  <ebb9@byu.net>
9713
9714         VPATH fix.
9715         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
9716
9717 2008-03-20  Simon Josefsson  <simon@josefsson.org>
9718
9719         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
9720         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
9721
9722 2008-03-20  Eric Blake  <ebb9@byu.net>
9723
9724         Sync GNUmakefile with coreutils.
9725         * build-aux/GNUmakefile (have-Makefile): Rename...
9726         (_have-Makefile): ...to this, for namespace consideration.
9727         (GNUmakefile.cfg): Include, if present.
9728         (_autoreconf): Define a default.
9729         (_is-dist-target): New rule for rebuilds to pick up intra-release
9730         version.
9731         (maint-cfg.mk): Rename...
9732         (cfg.mk): ...to this.
9733
9734 2008-03-18  Jim Meyering  <meyering@redhat.com>
9735
9736         New script and module: mktempd
9737         * MODULES.html.sh (maint+release support): Add mktempd.
9738         * build-aux/mktempd: New file.
9739         * modules/mktempd: New file.
9740
9741 2008-03-15  Jim Meyering  <meyering@redhat.com>
9742
9743         Undo last change.
9744         * lib/sha1.c, lib/md5.c: 63 != ~63.
9745         Reported by Andreas Schwab.
9746
9747         sha1.c, md5.c: Hoist a redundant expression.
9748         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
9749         "ctx->buflen" only once, before calling *_process_block.
9750         * lib/md5.c (md5_process_bytes): Likewise.
9751
9752 2008-03-14  Eric Blake  <ebb9@byu.net>
9753
9754         Bump copyright year in files generated by gnulib-tool.
9755         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
9756         gnulib-tool, rather than hard-coding it.
9757
9758         Fix 'gnulib-tool --version' output to work with git.
9759         * gnulib-tool (func_gnulib_dir): New function, extracted from...
9760         (startup): ...here.
9761         (func_version): Use it to invoke git-version-gen, rather than
9762         relying on CVS keyword expansion.  Modernize wording.
9763         (cvsdatestamp, last_checkin_date, version): Kill unused
9764         variables.
9765
9766 2008-03-12  Jim Meyering  <meyering@redhat.com>
9767
9768         Recognize optional cast of the argument to free.
9769         * build-aux/useless-if-before-free: Update regexps.
9770
9771         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
9772
9773 2008-03-11  Bruno Haible  <bruno@clisp.org>
9774
9775         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
9776         by a single package.
9777         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
9778         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
9779         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
9780         Reported by Sam Steingold <sds@gnu.org>.
9781
9782 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
9783
9784         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
9785         repositories.
9786
9787 2008-03-11  Bruno Haible  <bruno@clisp.org>
9788
9789         Avoid conflicts between local macro definitions.
9790         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
9791         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
9792
9793 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
9794             Bruno Haible  <bruno@clisp.org>
9795
9796         Make va_copy work with some version of xlc on AIX 5.1.
9797         * lib/stdarg.in.h: New file.
9798         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
9799         On AIX, use a <stdarg.h> file substitute.
9800         * modules/stdarg (Files): Add lib/stdarg.in.h.
9801         (Depends-on): Add include_next.
9802         (Makefile.am): Build a stdarg.h substitute if requested.
9803         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
9804
9805 2008-03-10  Bruno Haible  <bruno@clisp.org>
9806
9807         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
9808         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
9809         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
9810
9811 2008-03-10  Bruno Haible  <bruno@clisp.org>
9812
9813         * modules/stdlib (Depends-on): Add include_next, remove
9814         absolute-header.
9815
9816 2008-03-09  Bruno Haible  <bruno@clisp.org>
9817
9818         * lib/freadahead.h (freadahead): Document more precisely.
9819         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
9820         the sum of both buffer sizes.
9821         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
9822         * NEWS: Document the change.
9823
9824 2008-03-09  Bruno Haible  <bruno@clisp.org>
9825
9826         Extend freadptr to return also the buffer size.
9827         * lib/freadptr.h (freadptr): Add sizep argument.
9828         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
9829         (freadptr): Add sizep argument. Determine buffer size like freadahead
9830         does.
9831         * tests/test-freadptr.c: Don't include freadahead.h.
9832         (main): Adapt for new calling convention of freadptr.
9833         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
9834         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
9835         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
9836         tests/test-freadptr2.sh.
9837         (Depends): Remove freadahead.
9838         (TESTS): Add test-freadptr2.sh.
9839         (check_PROGRAMS): Add test-freadptr2.
9840
9841 2008-03-09  Bruno Haible  <bruno@clisp.org>
9842
9843         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
9844         Report and solution by Simon Josefsson.
9845
9846 2008-03-06  Bruno Haible  <bruno@clisp.org>
9847
9848         Make fflush after ungetc work on BSD platforms.
9849         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
9850         * tests/test-fflush2.c: New file.
9851         * tests/test-fflush2.sh: New file.
9852         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
9853         tests/test-fflush2.c.
9854         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
9855         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
9856
9857 2008-03-06  Eric Blake  <ebb9@byu.net>
9858
9859         Likewise for ftello.
9860         * modules/ftello (Dependencies): Add extensions.
9861         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
9862
9863 2008-03-06  Bruno Haible  <bruno@clisp.org>
9864
9865         * modules/fseeko (Dependencies): Add extensions.
9866         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
9867         Needed on glibc systems.
9868
9869 2008-03-06  Bruno Haible  <bruno@clisp.org>
9870
9871         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
9872         email address.
9873         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
9874
9875 2008-03-06  Bruno Haible  <bruno@clisp.org>
9876
9877         * users.txt: Add libgnupdf.
9878
9879 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
9880
9881         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
9882         (Header File Substitutes, Function Substitutes,
9883         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
9884         (Build robot for gnulib): Fix typo.
9885
9886 2008-03-06  Bruno Haible  <bruno@clisp.org>
9887
9888         * doc/gnulib-tool.texi (VCS Issues): Small updates.
9889         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
9890
9891 2008-03-06  Bruno Haible  <bruno@clisp.org>
9892
9893         * doc/func.texi: New file, extracted from doc/gnulib.texi.
9894         * doc/gnulib.texi: Include it.
9895
9896 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9897
9898         * modules/func (License): Change license to unlimited; there was
9899         no LGPL parts in the module anyway.
9900
9901 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9902
9903         * modules/__func__: Renamed to modules/func.
9904         * modules/__func__-tests: Renamed to modules/func-tests.
9905         * tests/test-__func__.c: Renamed to tests/test-func.c.
9906         * m4/__func__.m4: Renamed to m4/func.m4.
9907         * doc/gnulib.texi (__func__): Section renamed to func.
9908         Suggested by Eric Blake <ebb9@byu.net>.
9909
9910 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9911
9912         * doc/gnulib.texi (__func__): Use C99 terminology when talking
9913         about __func__.  Make example self-contained.  Suggested by Eric
9914         Blake <ebb9@byu.net>.
9915
9916         * tests/test-__func__.c (main): Avoid extraneous () around __func.
9917         Suggested by Eric Blake <ebb9@byu.net>.
9918
9919 2008-03-06  Simon Josefsson  <simon@josefsson.org>
9920
9921         * modules/__func__: New file.
9922         * modules/__func__-tests: New file.
9923         * tests/test-__func__.c: New file.
9924         * m4/__func__.m4: New file.
9925         * doc/gnulib.texi (__func__): Document __func__ module.
9926
9927 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9928
9929         * modules/byteswap (License): Re-license as LGPLv2+.
9930
9931 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9932
9933         * doc/Makefile: Add pdf target.
9934
9935 2008-03-05  Simon Josefsson  <simon@josefsson.org>
9936
9937         * modules/inline (License): Use 'unlimited', since there are only
9938         *.m4 files in this module.
9939
9940 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
9941             Bruno Haible  <bruno@clisp.org>
9942
9943         Add support for HP C 7.1 on OpenVMS 8.3.
9944         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
9945
9946 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
9947
9948         Update VMS specifics.
9949         * lib/getopt.c [VMS]: Remove include of unixlib.h.
9950
9951 2008-03-02  Jim Meyering  <meyering@redhat.com>
9952
9953         Remove the last dependency on the "free" module.
9954         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
9955         Reported by Bob Proulx.
9956
9957         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
9958
9959         Remove useless "if" tests before free.  Deprecate "free" module.
9960         * doc/posix-functions/free.texi: Mention that this
9961         module is no longer useful.
9962         * modules/free (Notice): Say this module is obsolete.
9963         * modules/readutmp (Depends-on): Remove free.
9964         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
9965         * lib/putenv.c (putenv): Likewise.
9966         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
9967         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
9968         * tests/test-c-strcasestr.c (main): Likewise.
9969         * tests/test-c-strstr.c (main): Likewise.
9970         * tests/test-mbscasestr1.c (main): Likewise.
9971         * tests/test-mbscasestr2.c (main): Likewise.
9972         * tests/test-mbsstr1.c (main): Likewise.
9973         * tests/test-mbsstr2.c (main): Likewise.
9974         * tests/test-memmem.c (main): Likewise.
9975         * tests/test-strcasestr.c (main): Likewise.
9976         * tests/test-striconv.c (main): Likewise.
9977         * tests/test-striconveh.c (main): Likewise.
9978         * tests/test-striconveha.c (main): Likewise.
9979         * tests/test-strstr.c (main): Likewise.
9980
9981         * build-aux/git-version-gen: Adjust a comment and the Usage string.
9982
9983         bootstrap: sync from coreutils again
9984         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
9985
9986 2008-03-01  Jim Meyering  <meyering@redhat.com>
9987
9988         bootstrap: sync from coreutils
9989         * build-aux/bootstrap (update_po_files): Copy a .po file into place
9990         also when the target doesn't exist.
9991
9992 2008-03-01  Eric Blake  <ebb9@byu.net>
9993
9994         Fix bugs in last patch.
9995         * lib/memchr2.c (memchr2): Fix typo.
9996         * tests/test-memchr2.c: Test previous bug, and don't use GNU
9997         extension.
9998         Reported by Bruce Korb.
9999
10000         New module 'memchr2'.
10001         * modules/memchr2: New file.
10002         * modules/memchr2-tests: Likewise.
10003         * lib/memchr2.h: Likewise.
10004         * lib/memchr2.c: Likewise, based on memchr.c.
10005         * tests/test-memchr2.c: New test.
10006         * MODULES.html.sh (String handling): Add memchr2.
10007
10008 2008-02-29  Bruno Haible  <bruno@clisp.org>
10009
10010         * modules/freadseek-tests: New file.
10011         * tests/test-freadseek.sh: New file.
10012         * tests/test-freadseek.c: New file.
10013
10014         New module 'freadseek'.
10015         * modules/freadseek: New file.
10016         * lib/freadseek.h: New file.
10017         * lib/freadseek.c: New file.
10018         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
10019
10020 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
10021
10022         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
10023         wydawca.
10024
10025         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
10026         program_invocation_name and program_invocation_short_name are
10027         present.
10028
10029 2008-02-28  Bruno Haible  <bruno@clisp.org>
10030
10031         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
10032         * tests/test-freadptr.sh: Also test non-seekable stdin.
10033
10034 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
10035
10036         * build-aux/bootstrap (source_base, m4_base)
10037         (doc_base, tests_base): New variables.
10038         (gnulib_tool_options): Do not hardcode base directories, use
10039         the above variables instead.
10040
10041 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
10042
10043         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
10044
10045 2008-02-28  Bruno Haible  <bruno@clisp.org>
10046
10047         * modules/freadptr-tests: New file.
10048         * tests/test-freadptr.sh: New file.
10049         * tests/test-freadptr.c: New file.
10050
10051         New module 'freadptr'.
10052         * modules/freadptr: New file.
10053         * lib/freadptr.h: New file.
10054         * lib/freadptr.c: New file.
10055         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
10056
10057 2008-02-26  Karl Berry  <karl@freefriends.org>
10058
10059         Sync from Libtool:
10060         * libltdl/argz.c (argz_add, argz_count): New functions.
10061         * libltdl/argz.in.h: Declare them.
10062         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
10063
10064 2008-02-22  Bruno Haible  <bruno@clisp.org>
10065
10066         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
10067         is a pointer type.  Needed for HP-UX 10.
10068         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
10069         * doc/posix-functions/gmtime_r.texi: Likewise.
10070         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
10071
10072 2008-02-24  Bruno Haible  <bruno@clisp.org>
10073
10074         * modules/environ-tests: New file.
10075         * tests/test-environ.c: New file.
10076
10077         New module 'environ'.
10078         * modules/environ: New file.
10079         * lib/unistd.in.h (environ): New declaration.
10080         * m4/environ.m4: New file.
10081         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
10082         after use.
10083         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
10084         HAVE_DECL_ENVIRON.
10085         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
10086         HAVE_DECL_ENVIRON.
10087         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
10088         wrong claim that 'environ' is missing on some systems.
10089         * modules/execute (Depends-on): Add environ.
10090         * lib/execute.c (environ): Remove fallback declaration.
10091         * modules/pipe (Depends-on): Add environ.
10092         * lib/pipe.c (environ): Remove fallback declaration.
10093         * modules/setenv (Depends-on): Add environ.
10094         * lib/setenv.c (environ): Remove fallback declaration.
10095         * modules/unsetenv (Depends-on): Add environ.
10096         * lib/unsetenv.c (environ): Remove fallback declaration.
10097         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
10098         m4/environ.m4.
10099         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
10100         (gl_PREREQ_UNSETENV): Likewise.
10101
10102 2008-02-24  Bruno Haible  <bruno@clisp.org>
10103
10104         * doc/posix-functions/environ.texi: Document the MacOS X problem.
10105
10106 2008-02-20  Bob Proulx  <bob@proulx.com>
10107
10108         Enable use of older two part flavor 'git describe'.
10109         * build-aux/git-version-gen: If using the older two part flavor of
10110         git version then recreate the third part now present in the
10111         newer three part flavor of git describe.
10112
10113 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
10114
10115         * lib/fts.c (fts_build): Typo correction to comment.
10116
10117 2008-02-17  Bruno Haible  <bruno@clisp.org>
10118
10119         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
10120         generating no-op conflicts.
10121
10122 2008-02-17  Bruno Haible  <bruno@clisp.org>
10123
10124         Speed up by 10%.
10125         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
10126         result_entries, rather than an index-based loop.
10127
10128 2008-02-17  Bruno Haible  <bruno@clisp.org>
10129
10130         Speed up by 25%.
10131         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
10132         'hashcode_cached'.
10133         (entry_create): New function.
10134         (entry_hashcode): Use the cached hashcode if possible.
10135         (read_changelog_file, try_split_merged_entry): Use entry_create.
10136
10137 2008-02-17  Bruno Haible  <bruno@clisp.org>
10138
10139         Speed up from O(n^2) to O(n) for long ChangeLog files.
10140         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
10141         (read_changelog_file): Change implementation of entries_reversed list
10142         to rbtreehash.
10143         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
10144
10145 2008-02-17  Bruno Haible  <bruno@clisp.org>
10146
10147         New option --split-merged-entry.
10148         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
10149         (find_paragraph_end, try_split_merged_entry): New functions.
10150         (long_options): Add option --split-merged-entry.
10151         (usage): Document option --split-merged-entry.
10152         (main): Implement option --split-merged-entry.
10153         Reported by Eric Blake.
10154
10155 2008-02-17  Bruno Haible  <bruno@clisp.org>
10156
10157         * lib/git-merge-changelog.c: Include c-strstr.h.
10158         (main): Support the "git pull --rebase" situation.
10159         * modules/git-merge-changelog (Depends-on): Add c-strstr.
10160         Reported by Eric Blake.
10161
10162 2008-02-16  Eric Blake  <ebb9@byu.net>
10163
10164         Avoid doubling \ in common case of "c-maybe" quoting style.
10165         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
10166         eliding outer quotes.
10167         * lib/quotearg.h: Document this.
10168         * tests/test-quotearg.c (result_strings, inputs, results_g)
10169         (flag_results, locale_results): Test it by adding a new string to
10170         each test group.
10171         (compare_strings): Test new string.
10172
10173 2008-02-13  Eric Blake  <ebb9@byu.net>
10174
10175         Avoid trigraph quoting in default output.
10176         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
10177         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
10178         unless explicitly requested.
10179         * tests/test-quotearg.c (flag_results, main): Add additional tests.
10180
10181 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
10182
10183         Don't rely on signed integer overflowing to negative value.
10184         * lib/getugroups.c (getugroups): Include <limits.h>.
10185         Instead, compare against INT_MAX, and increment only if the test passes.
10186
10187 2008-02-13  Jim Meyering  <meyering@redhat.com>
10188         and Eric Blake  <ebb9@byu.net>
10189
10190         Avoid shadowing warning and compile errors on Linux.
10191         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
10192         forwarding macros on Linux.
10193         (dcgettext): Define a stub, for Linux.
10194         (results_g, main): Avoid warnings.
10195
10196 2008-02-12  Eric Blake  <ebb9@byu.net>
10197
10198         Silence warning in last patch.
10199         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
10200
10201         Quotearg part 4: add tests, fix c-maybe colon quoting.
10202         * lib/quotearg.h: Improve documentation.
10203         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
10204         escapes when adding outer quotes.  When quoting trigraphs, use
10205         valid C notation.  When quoting NUL, omit extra characters if next
10206         character is not digit.  Alter prototype.
10207         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
10208         callers.
10209         * modules/quotearg-tests: New module.
10210         * tests/test-quotearg.c: New test.
10211
10212 2008-02-07  Eric Blake  <ebb9@byu.net>
10213
10214         Quotearg part 3: add flag to control outer quote elision.
10215         * lib/quotearg.h (c_maybe_quoting_style): New style.
10216         (enum quoting_flags): Better documentation of flags.
10217         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
10218         c-maybe style.
10219         (quotearg_buffer_restyled): Handle new flag to elide outer
10220         quotes.
10221
10222         Quotearg part 2: add flag that can control NUL elision.
10223         * lib/quotearg.h (set_quoting_flags): New prototype.
10224         * lib/quotearg.c (struct quoting_options): Add flag field.
10225         (set_quoting_flags): New function.
10226         (quotearg_buffer_restyled): Add flags parameter.
10227         (quotearg_alloc_mem): Set the flag if length cannot be returned.
10228         (quotearg_n_options): Set the flag, since length cannot be
10229         returned.
10230         (quoting_options_from_style): Default flags correctly.
10231
10232         Quotearg part 1: more wrappers, restore quotearg_char state.
10233         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
10234         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
10235         (quotearg_colon_mem): New wrappers.
10236         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
10237         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
10238         functions.
10239         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
10240         (quotearg_colon_mem): New functions.
10241
10242 2008-02-11  Bruno Haible  <bruno@clisp.org>
10243
10244         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
10245         library in the current directory: it does not work with parallel make.
10246         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
10247
10248 2008-02-11  Bruno Haible  <bruno@clisp.org>
10249
10250         * .gitattributes: New file.
10251
10252 2008-02-11  Jim Meyering  <meyering@redhat.com>
10253
10254         useless-if-before-free: Fix reversed exit values.
10255         * build-aux/useless-if-before-free: Use correct values
10256         for EXIT_MATCH and EXIT_NO_MATCH.
10257
10258         * build-aux/useless-if-before-free: Close stdout carefully.
10259
10260 2008-02-10  Bruno Haible  <bruno@clisp.org>
10261
10262         New module 'git-merge-changelog'.
10263         * modules/git-merge-changelog: New file.
10264         * lib/git-merge-changelog.c: New file.
10265
10266 2008-02-10  Jim Meyering  <meyering@redhat.com>
10267
10268         useless-if-before-free: New option: --list (-l).
10269
10270         useless-if-before-free: Don't exit immediately upon open failure.
10271         * build-aux/useless-if-before-free: Exit 2 for errors.
10272         Upon failure to open a file, don't exit immediately.
10273         Rather, just warn and continue with any remaining files.
10274
10275 2008-02-10  Bruno Haible  <bruno@clisp.org>
10276
10277         New abstract list operation 'node_set_value'.
10278         * lib/gl_list.h (gl_list_node_set_value): New function.
10279         (struct gl_list_implementation): New field node_set_value.
10280         * lib/gl_list.c (gl_list_node_set_value): New function.
10281         * lib/gl_array_list.c (gl_array_node_set_value): New function.
10282         (gl_array_list_implementation): Update.
10283         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
10284         (gl_carray_list_implementation): Update.
10285         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
10286         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
10287         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
10288         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
10289         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
10290         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
10291         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
10292         Update.
10293         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
10294         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
10295         (gl_sublist_list_implementation): Update.
10296
10297 2008-02-10  Bruno Haible  <bruno@clisp.org>
10298
10299         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
10300         Needed when ELEMENT is #defined to 'some_type *'.
10301
10302 2008-02-10  Jim Meyering  <meyering@redhat.com>
10303
10304         New script and module: useless-if-before-free
10305         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
10306         * build-aux/useless-if-before-free: New file.
10307         * modules/useless-if-before-free: New file.
10308
10309         * build-aux/gitlog-to-changelog: Use committer date, not author date.
10310
10311         xstrtol_error: Fix typo.
10312         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
10313         s/exit_failure/exit_status/.
10314
10315 2008-02-09  Jim Meyering  <meyering@redhat.com>
10316
10317         New script and module: gitlog-to-changelog
10318         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
10319         * modules/gitlog-to-changelog: New file.
10320         * build-aux/gitlog-to-changelog: New file.
10321
10322 2008-02-08  Jim Meyering  <meyering@redhat.com>
10323
10324         Avoid two "parameter unused" warnings.
10325         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
10326         Mark "st" as used.
10327
10328         Use "git COMMAND", not "git-COMMAND".
10329         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
10330         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
10331         * build-aux/git-version-gen: Use "git status", not "git-status".
10332
10333 2008-02-07  Bruno Haible  <bruno@clisp.org>
10334
10335         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
10336         Avoids a crash on Windows Vista.
10337         Reported by Adam Strzelecki <ono@java.pl> via
10338         Simon Josefsson <simon@josefsson.org>.
10339
10340 2008-02-06  Bruno Haible  <bruno@clisp.org>
10341
10342         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
10343         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
10344         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
10345         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
10346         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
10347         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
10348         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
10349         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
10350         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
10351         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
10352         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
10353         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
10354         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
10355         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
10356         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
10357         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
10358         left-adjust flag.
10359         * tests/test-snprintf-posix.h (test_function): Likewise.
10360         * tests/test-sprintf-posix.h (test_function): Likewise.
10361         * tests/test-vasprintf-posix.c (test_function): Likewise.
10362         * doc/posix-functions/fprintf.texi: Update.
10363         * doc/posix-functions/printf.texi: Update.
10364         * doc/posix-functions/snprintf.texi: Update.
10365         * doc/posix-functions/sprintf.texi: Update.
10366         * doc/posix-functions/vfprintf.texi: Update.
10367         * doc/posix-functions/vprintf.texi: Update.
10368         * doc/posix-functions/vsnprintf.texi: Update.
10369         * doc/posix-functions/vsprintf.texi: Update.
10370         Reported by Peter Fales <psfales@alcatel-lucent.com>.
10371
10372 2008-02-06  Bruno Haible  <bruno@clisp.org>
10373
10374         Fix bug introduced on 2008-01-26.
10375         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
10376
10377 2008-02-06  Bruno Haible  <bruno@clisp.org>
10378
10379         Fix bug introduced on 2007-06-10.
10380         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
10381         !NEED_PRINTF_FLAG_ZERO.
10382
10383 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
10384
10385         getloadavg: use libperfstat on AIX5
10386         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
10387
10388 2008-02-03  Bruno Haible  <bruno@clisp.org>
10389
10390         * lib/diffseq.h: Add comments about required #includes.
10391         Reported by Michael Biggs <gnulib@doubleplum.net>.
10392
10393 2008-02-01  Bruno Haible  <bruno@clisp.org>
10394
10395         * users.txt: Add gnuit.
10396
10397 2008-01-31  Bruno Haible  <bruno@clisp.org>
10398
10399         * lib/md4.c (set_uint32): Mark as inline.
10400         * lib/md5.c (set_uint32): Likewise.
10401         * lib/sha1.c (set_uint32): Likewise.
10402         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
10403         * m4/md5.m4 (gl_MD5): Likewise.
10404         * m4/sha1.m4 (gl_SHA1): Likewise.
10405
10406 2008-01-31  Jim Meyering  <meyering@redhat.com>
10407
10408         Use "sizeof VAR", rather than a literal "4".
10409         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
10410         * lib/md4.c (md4_read_ctx): Likewise.
10411         * lib/sha1.c (sha1_read_ctx): Likewise.
10412
10413 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10414
10415         * tests/test-sha1.c: New file, based on test-md5.c.
10416
10417         * modules/crypto/sha1-tests: New file.
10418
10419 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10420
10421         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
10422
10423 2008-01-31  Jim Meyering  <meyering@redhat.com>
10424
10425         Prefer "sizeof v" over the equivalent "4".
10426         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
10427         * lib/md5.c (set_uint32): Likewise.
10428         * lib/sha1.c (set_uint32): Likewise.
10429
10430 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10431
10432         * lib/sha1.c (set_uint32): Mark function as static.
10433
10434 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10435
10436         md2: clarify comments to say that alignment is not required.
10437         * lib/md2.h: Remove warning about alignment in comment.
10438         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
10439         never been required.
10440
10441 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10442
10443         md4: adapt alignment constraint fix from sha1.
10444         * lib/md4.c (set_uint32): New function, from sha1.c
10445         (md4_read_ctx): Use it.
10446         (md4_finish_ctx): Doc fix.
10447         * lib/md4.h: Doc fix.
10448
10449 2008-01-31  Simon Josefsson  <simon@josefsson.org>
10450
10451         md5: adapt alignment constraint fix from sha1.
10452         * lib/md5.c (set_uint32): New function, from sha1.c
10453         (md5_read_ctx): Use it.
10454         (md5_finish_ctx): Doc fix.
10455         * lib/md5.h: Doc fix.
10456
10457 2008-01-30  Peter Palfrader  <weasel@debian.org>
10458
10459         sha1: remove the result buffer alignment constraint
10460         * lib/sha1.c (set_uint32): New function.
10461         (sha1_read_ctx): Rewrite to remove the result buffer alignment
10462         constraint.
10463         (sha1_finish_ctx): Remove comment warning about alignment constraint.
10464         * lib/sha1.h: Likewise.
10465
10466 2008-01-30  Andreas Schwab  <schwab@suse.de>
10467             Bruno Haible  <bruno@clisp.org>
10468
10469         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
10470         correct definition of LDBL_MIN_EXP.
10471
10472 2008-01-30  Karl Berry  <karl@gnu.org>
10473
10474         * config/srclist-update: try to preserve x bit on updates.
10475         * config/srclistvars.sh: update for karl.
10476
10477 2008-01-29  Jim Meyering  <meyering@redhat.com>
10478
10479         vasnprintf.c: Avoid warning about unused label
10480         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
10481         "overflow" label definition and associated code with the
10482         same cpp condition that guards the sole use of that label.
10483
10484 2008-01-26  Bruno Haible  <bruno@clisp.org>
10485
10486         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
10487         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
10488         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
10489         * lib/isnanl-nolibm.h (isnanl): Likewise.
10490         Reported by Paul Eggert <eggert@cs.ucla.edu>.
10491
10492 2008-01-26  Bruno Haible  <bruno@clisp.org>
10493
10494         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
10495         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
10496
10497 2008-01-26  Bruno Haible  <bruno@clisp.org>
10498
10499         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
10500         GCC >= 4.0 built-in.
10501         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
10502
10503 2008-01-26  Bruno Haible  <bruno@clisp.org>
10504
10505         Rename isnan, applicable to 'double' only, to isnand.
10506         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
10507         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
10508         (configure.ac): Update.
10509         (Include): Replace "isnan.h" with "isnand.h".
10510         * m4/isnand.m4: Renamed from m4/isnan.m4.
10511         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
10512         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
10513         instead of isnan.c.
10514         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
10515         instead of HAVE_ISNAN_IN_LIBC.
10516         (isnand): Renamed from isnan.
10517         * lib/isnand.c: New file.
10518         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
10519         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
10520         (Makefile.am): Update.
10521         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
10522         Include isnand.h instead of isnan.h.
10523         (main): Test isnand instead of isnan.
10524         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
10525         isnan-nolibm.
10526         * modules/frexp (Depends-on): Likewise.
10527         * modules/frexp-tests (Depends-on): Likewise.
10528         * modules/frexp-nolibm (Depends-on): Likewise.
10529         * modules/frexp-nolibm-tests (Depends-on): Likewise.
10530         * modules/isfinite (Depends-on): Likewise.
10531         * modules/round-tests (Depends-on): Likewise.
10532         * modules/signbit (Depends-on): Likewise.
10533         * modules/signbit-tests (Depends-on): Likewise.
10534         * modules/snprintf-posix (Depends-on): Likewise.
10535         * modules/sprintf-posix (Depends-on): Likewise.
10536         * modules/trunc-tests (Depends-on): Likewise.
10537         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
10538         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
10539         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
10540         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
10541         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
10542         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
10543         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
10544         * modules/vasnprintf-posix (Depends-on): Likewise.
10545         * modules/vasprintf-posix (Depends-on): Likewise.
10546         * modules/vfprintf-posix (Depends-on): Likewise.
10547         * modules/vsnprintf-posix (Depends-on): Likewise.
10548         * modules/vsprintf-posix (Depends-on): Likewise.
10549         * lib/frexp.c: Include isnand.h instead of isnan.h.
10550         (ISNAN): Set to isnand instead of isnan.
10551         * lib/isfinite.c: Include isnand.h instead of isnan.h.
10552         (gl_isfinited): Use isnand instead of isnan.
10553         * lib/signbitd.c: Include isnand.h instead of isnan.h.
10554         (gl_signbitd): Use isnand instead of isnan.
10555         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
10556         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
10557         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
10558         (main): Use isnand instead of isnan.
10559         * tests/test-round1.c: Include isnand.h.
10560         (main): Use isnand instead of isnan.
10561         * tests/test-round2.c: Include isnand.h instead of isnan.h.
10562         (ISNAN): Set to isnand instead of isnan.
10563         * tests/test-trunc1.c: Include isnand.h.
10564         (main): Use isnand instead of isnan.
10565         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
10566         (equal): Use isnand instead of isnan.
10567         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
10568         isnand-nolibm.
10569         * NEWS: Mention the change.
10570
10571 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
10572             Bruno Haible  <bruno@clisp.org>
10573
10574         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
10575         the GCC builtins for signbits are present and set
10576         REPLACE_SIGNBIT_USING_GCC if so.
10577         * lib/math.in.h (signbit): Define using GCC builtins if
10578         REPLACE_SIGNBIT_USING_GCC is set.
10579         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
10580         REPLACE_SIGNBIT_USING_GCC.
10581         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
10582
10583 2008-01-25  Jim Meyering  <meyering@redhat.com>
10584
10585         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
10586         * lib/poll.c: Include <config.h>, not "config.h".
10587         * tests/test-getaddrinfo.c: Likewise.
10588
10589 2008-01-25  Simon Josefsson  <simon@josefsson.org>
10590
10591         * modules/sockets-tests: New file.
10592
10593 2008-01-24  Simon Josefsson  <simon@josefsson.org>
10594
10595         * modules/sockets: New module, can be used to call WSA_Startup and
10596         WSA_Cleanup when needed.
10597
10598         * lib/sockets.h, lib/sockets.c: New files.
10599
10600         * m4/sockets.m4: New file.
10601
10602         * tests/test-sockets.c: New file.
10603
10604 2008-01-19  Bruno Haible  <bruno@clisp.org>
10605
10606         * doc/posix-headers: Renamed from doc/headers.
10607         * doc/posix-functions: Renamed from doc/functions.
10608         * doc/gnulib.texi: Update.
10609
10610 2008-01-19  Bruno Haible  <bruno@clisp.org>
10611
10612         * doc/glibc-functions/strcasestr.texi: Include contents of
10613         doc/functions/strcasestr.texi, fixing the list of platforms.
10614         * doc/functions/strcasestr.texi: Remove file.
10615
10616 2008-01-19  Bruno Haible  <bruno@clisp.org>
10617
10618         * doc/glibc-functions/memmem.texi: Include contents of
10619         doc/functions/memmem.texi.
10620         * doc/functions/memmem.texi: Remove file.
10621
10622 2008-01-18  Bruno Haible  <bruno@clisp.org>
10623
10624         * doc/glibc-functions/*.texi: New files.
10625         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
10626         to use the new files.
10627
10628 2008-01-17  Bruno Haible  <bruno@clisp.org>
10629
10630         * tests/test-gethostname.c (main): Fix printf statement.
10631
10632 2008-01-17  Simon Josefsson  <simon@josefsson.org>
10633
10634         * modules/gethostname-tests: New file.
10635
10636         * tests/test-gethostname.c: New file.
10637
10638 2008-01-17  Simon Josefsson  <simon@josefsson.org>
10639
10640         * lib/gethostname.c: Include string.h unconditionally, strncpy is
10641         used by the UNAME case.  Reported by Bruno Haible
10642         <bruno@clisp.org>.
10643
10644 2008-01-17  Eric Blake  <ebb9@byu.net>
10645
10646         Convert c-strcasestr to be more efficient.
10647         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
10648         (Depends-on): Add c-strcase, remove malloca, strnlen.
10649         * tests/test-c-strcasestr.c (main): Enhance test.
10650         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
10651
10652 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
10653
10654         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
10655         Use it in creating po/Makevars.
10656
10657 2008-01-15  Simon Josefsson  <simon@josefsson.org>
10658
10659         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
10660         Applications that requires it should initialize libgcrypt
10661         manually.
10662
10663 2008-01-16  Simon Josefsson  <simon@josefsson.org>
10664
10665         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
10666
10667 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
10668
10669         Fix problem with getdate on mingw32 reported by Simon Josefsson
10670         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
10671         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
10672         tzname", when deciding whether to declare tzname.
10673         * lib/strftime.c (tzname): Likewise.
10674
10675 2008-01-15  Bruno Haible  <bruno@clisp.org>
10676
10677         Work around a MacOS X 10.5 bug in frexpl().
10678         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
10679         * doc/functions/frexpl.texi: Document the bug.
10680         Reported by Elias Pipping <pipping@gentoo.org>.
10681
10682 2008-01-14  Eric Blake  <ebb9@byu.net>
10683
10684         Touch up previous patch.
10685         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
10686         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
10687
10688         Convert strcasestr module to use Two-Way algorithm.
10689         * modules/strcasestr-simple: New module, based on the old
10690         strcasestr, but with Two-Way rather than KMP.
10691         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
10692         * lib/string.in.h (rpl_strcasestr): Declare.
10693         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
10694         performance.
10695         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
10696         * modules/string (Makefile.am): Support strcasestr.
10697         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
10698         * modules/strcasestr-tests (Depends-on): Check for alarm.
10699         * tests/test-strcasestr.c: Augment test.
10700         * lib/str-two-way.h: Clean up stray macro.
10701         * NEWS: Document new module.
10702         * MODULES.html.sh (string handling): Likewise.
10703         * doc/functions/strcasestr.texi: New file.
10704         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
10705         here, since it is not a POSIX function.
10706
10707 2008-01-14  Colin Watson  <cjwatson@debian.org>
10708             Bruno Haible  <bruno@clisp.org>
10709
10710         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
10711         works fine; if not, set REPLACE_STRSIGNAL.
10712         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
10713         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10714         REPLACE_STRSIGNAL.
10715         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
10716         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
10717         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
10718
10719 2008-01-14  Bruno Haible  <bruno@clisp.org>
10720
10721         * modules/strsignal (Include): Change to <string.h>.
10722
10723 2008-01-14  Colin Watson  <cjwatson@debian.org>
10724
10725         * modules/argp (Notice): Add a notice recommending to change
10726         XGETTEXT_OPTIONS.
10727         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
10728
10729 2008-01-13  Colin Watson  <cjwatson@debian.org>
10730
10731         * modules/strsignal-tests: New file.
10732         * tests/test-strsignal.c: New file.
10733
10734         * lib/strsignal.c: New file, from glibc with modifications.
10735         * lib/siglist.h: New file, from glibc with modifications.
10736         * lib/string.in.h (strsignal): New declaration.
10737         * m4/strsignal.m4: New file.
10738         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10739         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
10740         * modules/strsignal: New file.
10741         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
10742         HAVE_DECL_STRSIGNAL.
10743
10744 2008-01-13  Bruno Haible  <bruno@clisp.org>
10745
10746         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
10747         locale encoding is not ASCII. Needed for OpenBSD 4.0.
10748         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
10749         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
10750
10751 2008-01-13  Bruno Haible  <bruno@clisp.org>
10752
10753         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
10754         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
10755         * lib/argp.h (__attribute__): Likewise.
10756         * lib/c-stack.c (__attribute__): Likewise.
10757         * lib/error.h (__attribute__): Likewise.
10758         * lib/fts.c (__attribute__): Likewise.
10759         * lib/openat.h (__attribute__): Likewise.
10760         * lib/stdio.in.h (__attribute__): Likewise.
10761         * lib/string.in.h (__attribute__): Likewise.
10762         * lib/utimens.c (__attribute__): Likewise.
10763         * lib/vasnprintf.h (__attribute__): Likewise.
10764         * lib/xalloc.h (__attribute__): Likewise.
10765         * lib/xprintf.h (__attribute__): Likewise.
10766         * lib/xstrtol.h (__attribute__): Likewise.
10767         * lib/xvasprintf.h (__attribute__): Likewise.
10768
10769 2008-01-12  Bruno Haible  <bruno@clisp.org>
10770
10771         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
10772         * doc/glibc-headers/a.out.texi: New file.
10773         * doc/glibc-headers/aliases.texi: New file.
10774         * doc/glibc-headers/alloca.texi: New file.
10775         * doc/glibc-headers/ar.texi: New file.
10776         * doc/glibc-headers/argp.texi: New file.
10777         * doc/glibc-headers/argz.texi: New file.
10778         * doc/glibc-headers/byteswap.texi: New file.
10779         * doc/glibc-headers/crypt.texi: New file.
10780         * doc/glibc-headers/endian.texi: New file.
10781         * doc/glibc-headers/envz.texi: New file.
10782         * doc/glibc-headers/err.texi: New file.
10783         * doc/glibc-headers/error.texi: New file.
10784         * doc/glibc-headers/execinfo.texi: New file.
10785         * doc/glibc-headers/fpu_control.texi: New file.
10786         * doc/glibc-headers/fstab.texi: New file.
10787         * doc/glibc-headers/fts.texi: New file.
10788         * doc/glibc-headers/getopt.texi: New file.
10789         * doc/glibc-headers/ieee754.texi: New file.
10790         * doc/glibc-headers/ifaddrs.texi: New file.
10791         * doc/glibc-headers/libintl.texi: New file.
10792         * doc/glibc-headers/mcheck.texi: New file.
10793         * doc/glibc-headers/mntent.texi: New file.
10794         * doc/glibc-headers/obstack.texi: New file.
10795         * doc/glibc-headers/paths.texi: New file.
10796         * doc/glibc-headers/printf.texi: New file.
10797         * doc/glibc-headers/pty.texi: New file.
10798         * doc/glibc-headers/resolv.texi: New file.
10799         * doc/glibc-headers/shadow.texi: New file.
10800         * doc/glibc-headers/sysexits.texi: New file.
10801         * doc/glibc-headers/ttyent.texi: New file.
10802
10803 2008-01-12  Jim Meyering  <meyering@redhat.com>
10804
10805         announce-gen: emit Gnulib's git-based version string.
10806         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
10807         New option --gnulib-version=V, where V is expected to be
10808         the output of running git describe in the gnulib directory.
10809         (get_tool_versions): Request feedback on xdelta.  I suspect it's
10810         not useful, and plan to stop publishing an xdelta file with each
10811         coreutils release.
10812
10813         * build-aux/announce-gen: Also check for lzma-compressed files.
10814
10815 2008-01-11  Bruno Haible  <bruno@clisp.org>
10816
10817         * tests/test-memmem.c (main): Increase maximum allowed time.
10818         * tests/test-strstr.c (main): Likewise.
10819
10820 2008-01-11  Bruno Haible  <bruno@clisp.org>
10821
10822         * doc/functions/memmem.texi: Add more precisions about platforms.
10823         * doc/functions/strstr.texi: Likewise.
10824
10825 2008-01-10  Eric Blake  <ebb9@byu.net>
10826
10827         * m4/strstr.m4: Delete cruft from copy-n-paste.
10828         Reported by Bruno Haible.
10829
10830 2008-01-10  Bruno Haible  <bruno@clisp.org>
10831
10832         Make c-strstr rely on strstr.
10833         * lib/c-strstr.c: Don't include str-kmp.h.
10834         (c_strstr): Define in terms of strstr.
10835         * modules/c-strstr (Files): Remove lib/str-kmp.h.
10836         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
10837
10838 2008-01-10  Bruno Haible  <bruno@clisp.org>
10839
10840         * doc/gnulib.texi (String Functions in C Locale): New section.
10841         * doc/c-ctype.texi: New file.
10842         * doc/c-strcase.texi: New file.
10843         * doc/c-strcaseeq.texi: New file.
10844         * doc/c-strcasestr.texi: New file.
10845         * doc/c-strstr.texi: New file.
10846         * doc/c-strtod.texi: New file.
10847         * doc/c-strtold.texi: New file.
10848
10849 2008-01-10  Eric Blake  <ebb9@byu.net>
10850
10851         * lib/relocatable.h: Fix a comment.
10852
10853 2008-01-10  Eric Blake  <ebb9@byu.net>
10854
10855         Share two-way algorithm.
10856         * lib/str-two-way.h: New file, merged from...
10857         * lib/memmem.c: ...here...
10858         * lib/strstr.c: ...and here.
10859         * modules/memmem (Files): Use it.
10860         * modules/strstr (Files): Likewise.
10861
10862         Avoid quadratic strstr implementations.
10863         * lib/strstr.c: New file.
10864         * m4/strstr.m4: Likewise.
10865         * modules/strstr: Likewise.
10866         * modules/strstr-tests: Likewise.
10867         * tests/test-strstr.c: Likewise.
10868         * lib/string.in.h (rpl_strstr): Declare.
10869         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
10870         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
10871         * modules/string (Makefile.am): Likewise.
10872         * MODULES.html.sh (string handling): Mention new module.
10873         * doc/functions/strstr.texi (strstr): Document the bug.
10874
10875 2008-01-10  Bruno Haible  <bruno@clisp.org>
10876
10877         * lib/relocatable.h (relocate): State whether result is freshly
10878         allocated or not.
10879         * lib/relocatable.c (relocate): Return a freshly allocated string
10880         instead of a pointer to a privately held string.
10881         Reported by Sylvain Beucler <beuc@gnu.org>.
10882
10883 2008-01-10  Colin Watson  <cjwatson@debian.org>
10884
10885         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
10886         s/S_ISNLK/S_ISLNK/.
10887
10888 2008-01-09  Bruno Haible  <bruno@clisp.org>
10889
10890         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
10891         and other files.
10892         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
10893         if it's only a guess.
10894         * modules/memmem: Simplify by depending on memmem-simple.
10895
10896 2008-01-09  Bruno Haible  <bruno@clisp.org>
10897
10898         Work around OpenBSD 4.0 tdelete() bug.
10899         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
10900         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
10901         macros and don't redefine the enum values.
10902         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
10903         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
10904         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
10905
10906 2008-01-09  Bruno Haible  <bruno@clisp.org>
10907
10908         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
10909         (main): Don't perform the tests if setlocale did not install a UTF-8
10910         locale. Needed on OpenBSD 4.0.
10911         * modules/wcwidth-tests (Depends-on): Add localcharset.
10912
10913 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
10914
10915         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
10916         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
10917         * NEWS: announce this.
10918         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
10919
10920 2008-01-09  Simon Josefsson  <simon@josefsson.org>
10921         and Eric Blake  <ebb9@byu.net>
10922
10923         Add memmem-simple module.
10924         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
10925         (gl_FUNC_MEMMEM): Separate performance from presence checks.
10926         * modules/memmem-simple: New file.
10927         * modules/memmem (Description): Tweak.
10928         * MODULES.html.sh (string handling): Mention new module.
10929         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
10930         addressed by memmem-simple.
10931         * NEWS: Document the difference.
10932
10933 2008-01-09  Eric Blake  <ebb9@byu.net>
10934
10935         Give gcc some memmem optimization hints.
10936         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
10937         (strcasestr): Declare as pure.
10938         * modules/memmem (Maintainer): Claim my implementation.
10939
10940 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10941
10942         Support AIX 6.1 and higher.
10943         * build-aux/config.libpath: Likewise.
10944         * build-aux/config.rpath: Likewise.
10945
10946 2008-01-08  Jim Meyering  <meyering@redhat.com>
10947             Bruno Haible  <bruno@clisp.org>
10948
10949         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
10950         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
10951         Reported by Peter Fales in
10952         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
10953
10954 2008-01-08  Bruno Haible  <bruno@clisp.org>
10955
10956         * modules/unictype/category-of (Depends-on): Add
10957         unictype/category-none.
10958         * modules/unictype/category-and-tests (Depends-on): Add
10959         unictype/category-{L,N,Lu,Nd}.
10960         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
10961         * modules/unictype/category-or-tests (Depends-on): Add
10962         unictype/category-{L,N}.
10963         * modules/unictype/category-name-tests (Depends-on): Add
10964         unictype/category-{Z,Nl}.
10965         Reported by Simon Josefsson.
10966
10967 2008-01-08  Bruno Haible  <bruno@clisp.org>
10968
10969         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
10970         convention better.
10971         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
10972         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
10973         Reported by Peter Miller <millerp@canb.auug.org.au>.
10974
10975 2008-01-08  Eric Blake  <ebb9@byu.net>
10976
10977         Rewrite memmem to guarantee linear complexity without malloc.
10978         * lib/memmem.c (memmem): Use Two-Way rather than
10979         Knuth-Morris-Pratt, to allow O(1) space usage.
10980         (critical_factorization, two_way_short_needle)
10981         (two_way_long_needle): New functions.
10982         (knuth_morris_pratt): Delete.
10983         * modules/memmem (Depends-on): No longer need malloca or stdbool.
10984         Add stdint.
10985         * tests/test-memmem.c (main): Add tests for periodic needle and
10986         sublinear performance.
10987         * doc/functions/memmem.texi (memmem): Document other deficiencies
10988         in cygwin and older glibc.
10989
10990 2008-01-08  Bruno Haible  <bruno@clisp.org>
10991
10992         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
10993         augmentation.
10994
10995 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
10996
10997         Add a configure time option: --disable-acl.
10998         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
10999         AC_ARG_ENABLE(acl).
11000
11001 2008-01-06  Simon Josefsson  <simon@josefsson.org>
11002
11003         * tests/test-localename.c: Don't include obsolete "setenv.h".
11004
11005         * modules/localename-tests (Depends-on): Need unsetenv.
11006
11007 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11008
11009         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
11010
11011 2008-01-06  Colin Watson  <cjwatson@debian.org>
11012
11013         * users.txt: Add man-db.
11014
11015 2008-01-07  Bruno Haible  <bruno@clisp.org>
11016
11017         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
11018         previous section name.
11019
11020 2008-01-07  Bruno Haible  <bruno@clisp.org>
11021
11022         * lib/progname.c (set_program_name): Don't strip off a leading
11023         "lt-" prefix outside a .libs directory.
11024         Suggested by Paul Eggert.
11025
11026 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
11027             Bruno Haible  <bruno@clisp.org>
11028
11029         Improve memory cleanup in 'relocatable' module.
11030         * lib/relocatable.h (compute_curr_prefix): Change return type to
11031         'char *'.
11032         * lib/relocatable.c (compute_curr_prefix): Change return type to
11033         'char *'. Free curr_installdir after use.
11034         (relocate): Free curr_prefix_better after use.
11035         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
11036
11037 2008-01-01  Bruno Haible  <bruno@clisp.org>
11038
11039         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
11040         failure on older glibc systems.
11041         Reported by Peter Fales <psfales@alcatel-lucent.com>.
11042
11043 2008-01-05  Eric Blake  <ebb9@byu.net>
11044
11045         Avoid quadratic system memmem.
11046         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
11047         Reported by Ralf Wildenhues.
11048
11049         Fix memmem test for mingw.
11050         * modules/memmem-tests (configure.ac): Check for alarm.
11051         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
11052         it.
11053         * doc/functions/memmem.texi: New file.
11054         * doc/gnulib.texi (Function Substitutes): Add memmem.
11055         Reported by Bruno Haible.
11056
11057 2008-01-04  Bruno Haible  <bruno@clisp.org>
11058
11059         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
11060         Require gl_HEADER_STRINGS_H_DEFAULTS, not
11061         gl_HEADER_STRING_H_DEFAULTS.
11062
11063 2008-01-04  Eric Blake  <ebb9@byu.net>
11064
11065         Shorten duration of memmem test.
11066         * tests/test-memmem.c (main): Use alarm to declare failure if test
11067         is taking too long.
11068         Reported by Ralf Wildenhues.
11069
11070 2007-12-21  Simon Josefsson  <simon@josefsson.org>
11071
11072         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
11073         string, needed by strerror.
11074
11075 2008-01-03  Colin Watson  <cjwatson@debian.org>
11076             Bruno Haible  <bruno@clisp.org>
11077
11078         * doc/gnulib-tool.texi (Localization): New section.
11079
11080 2008-01-02  Bruno Haible  <bruno@clisp.org>
11081
11082         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
11083         variables to 'unsigned char *' type.
11084         Reported by Paul Eggert.
11085
11086 2008-01-02  Jim Meyering  <jim@meyering.net>
11087
11088         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
11089
11090 2007-12-31  Jim Meyering  <jim@meyering.net>
11091
11092         Avoid use of private FTS type name.
11093         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
11094
11095 2007-12-30  Karl Berry  <karl@gnu.org>
11096
11097         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
11098         work around defect in Texinfo and/or the standalone Info browser.
11099
11100 2007-12-30  Bruno Haible  <bruno@clisp.org>
11101
11102         Unify 5 copies of the KMP code.
11103         * lib/str-kmp.h: New file.
11104         * lib/c-strcasestr.c: Include str-kmp.h.
11105         (knuth_morris_pratt): Remove function.
11106         (c_strcasestr): Update.
11107         * lib/c-strstr.c: Include str-kmp.h.
11108         (knuth_morris_pratt): Remove function.
11109         (c_strcasestr): Update.
11110         * lib/mbscasestr.c: Include str-kmp.h.
11111         (knuth_morris_pratt_unibyte): Remove function.
11112         * lib/mbsstr.c: Include str-kmp.h.
11113         (knuth_morris_pratt_unibyte): Remove function.
11114         * lib/strcasestr.c: Include str-kmp.h.
11115         (knuth_morris_pratt): Remove function.
11116         (strcasestr): Update.
11117         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
11118         * modules/c-strstr (Files): Likewise.
11119         * modules/mbscasestr (Files): Likewise.
11120         * modules/mbsstr (Files): Likewise.
11121         * modules/strcasestr (Files): Likewise.
11122         Suggested by Paul Eggert.
11123
11124 2007-12-30  Bruno Haible  <bruno@clisp.org>
11125
11126         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
11127         defined.
11128
11129 2007-12-30  Bruno Haible  <bruno@clisp.org>
11130
11131         * lib/xmalloca.h: Include xalloc.h.
11132         (xnmalloca): New macro.
11133
11134 2007-12-30  Bruno Haible  <bruno@clisp.org>
11135
11136         * lib/malloca.h (nmalloca): New macro.
11137         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
11138         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
11139         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
11140         knuth_morris_pratt_multibyte): Likewise.
11141         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
11142         knuth_morris_pratt_multibyte): Likewise.
11143         * lib/memmem.c (knuth_morris_pratt): Likewise.
11144         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
11145
11146 2007-12-25  Bruno Haible  <bruno@clisp.org>
11147
11148         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
11149         * lib/glob.c: Don't include openat.h.
11150         (link_exists2_p): Add back the code that deals with the
11151         !GLOB_ALTDIRFUNC case.
11152         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
11153         let it do the filename concatenation.
11154         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
11155         * modules/glob (Depends-on): Remove openat.
11156
11157 2007-12-31  Bruno Haible  <bruno@clisp.org>
11158
11159         * modules/dirfd (License): Change to LGPLv2+.
11160         Approved by Jim Meyering.
11161
11162 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11163
11164         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
11165         when multiplying M by sizeof (size_t).
11166
11167 2007-12-10  Martin Lambers  <marlam@marlam.de>
11168
11169         Override getpagesize on mingw.
11170         * lib/getpagesize.c: New file.
11171         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
11172         * modules/getpagesize (Files): Add lib/getpagesize.c.
11173         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
11174         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
11175         REPLACE_GETPAGESIZE.
11176         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
11177
11178 2007-12-25  Bruno Haible  <bruno@clisp.org>
11179
11180         * modules/localcharset (Notice): New field.
11181         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
11182         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
11183
11184 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
11185             Bruno Haible  <bruno@clisp.org>
11186
11187         Avoid using the syntax symbol() in formatted documentation.
11188         * MODULES.html.sh (func_module): When replacing symbol() with a
11189         hyperlink, remove the parentheses. Show an error if some remain.
11190         Recognize and render the '...' syntax.
11191         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
11192         Rework. Add paragraph about GCC's inlining.
11193         * doc/alloca.texi: Likewise.
11194         * doc/error.texi: Remove parentheses from symbol reference.
11195         * doc/gnulib-intro.texi: Likewise.
11196         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
11197         * modules/fnmatch (Description): Reword to say "the ... function".
11198         * modules/full-read (Description): Likewise.
11199         * modules/full-write (Description): Likewise.
11200         * modules/safe-read (Description): Likewise.
11201         * modules/safe-write (Description): Likewise.
11202         * modules/strchrnul (Description): Likewise.
11203         * modules/trim (Description): Likewise.
11204         * modules/error (Description): Remove parentheses from symbol
11205         references.
11206         * modules/verror (Description): Likewise.
11207         Reported by Karl Berry.
11208
11209 2007-12-25  Bruno Haible  <bruno@clisp.org>
11210
11211         Fixup after 2007-10-16 commit.
11212         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
11213
11214 2007-12-24  Bruno Haible  <bruno@clisp.org>
11215
11216         Make --enable-relocatable work with DESTDIR.
11217         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
11218         to compute installdir from destprog.
11219         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
11220         also set the RELOC_DESTDIR variable.
11221         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
11222
11223 2007-12-24  Bruno Haible  <bruno@clisp.org>
11224
11225         Fix link error due to xalloc_die().
11226         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
11227         of xreadlink.
11228         * lib/relocwrapper.c: Update comments.
11229         * build-aux/install-reloc: Remove xreadlink.c from file list.
11230         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
11231         xreadlink.c.
11232         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
11233
11234 2007-12-24  Bruno Haible  <bruno@clisp.org>
11235
11236         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
11237         * lib/setenv.h: Remove file.
11238         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
11239         lib/setenv.h.
11240         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
11241         (Depends-on): Add stdlib.
11242         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
11243         gl_FUNC_UNSETENV.
11244         (Include): Replace setenv.h with <stdlib.h>.
11245         * modules/unsetenv: New file.
11246         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
11247         * lib/unsetenv.c: Include <stdlib.h> first.
11248         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
11249         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
11250         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
11251         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
11252         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
11253         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
11254         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
11255         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
11256         * doc/functions/unsetenv.texi: Update.
11257         * modules/xsetenv (Depends-on): Add unsetenv.
11258         * modules/getdate (Depends-on): Likewise.
11259         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
11260         * lib/xsetenv.c: Don't include setenv.h.
11261         * lib/getdate.y: Likewise.
11262         * lib/relocwrapper.c: Likewise.
11263         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
11264         (Depends-on): Add stdlib.
11265         * NEWS: Mention the changes.
11266         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
11267
11268 2007-12-23  Bruno Haible  <bruno@clisp.org>
11269
11270         * lib/memmem.c (memmem): Use lowercase variable names. Tab
11271         indentation.
11272
11273 2007-12-23  Bruno Haible  <bruno@clisp.org>
11274
11275         * lib/c-strcasestr.c: Add more comments.
11276         * lib/c-strstr.c: Likewise.
11277         * lib/mbscasestr.c: Likewise.
11278         * lib/mbsstr.c: Likewise.
11279         * lib/strcasestr.c: Likewise.
11280         * lib/memmem.c: Likewise.
11281
11282 2007-12-23  Bruno Haible  <bruno@clisp.org>
11283
11284         * tests/test-memmem.c: Include <string.h> first.
11285
11286 2007-12-22  Bruno Haible  <bruno@clisp.org>
11287
11288         * gnulib-tool (func_create_testdir): Change $auxdir while generating
11289         the contents of $testsbase.
11290         Reported by Ralf Wildenhues.
11291
11292 2007-12-22  Bruno Haible  <bruno@clisp.org>
11293
11294         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
11295         two variables local_ldadd_before, local_ldadd_last.
11296
11297 2007-12-20  Eric Blake  <ebb9@byu.net>
11298
11299         Work around circular library issue when cross-compiling.
11300         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
11301         that progname.o does not need to pull in rpl_memcmp.
11302
11303 2007-12-19  Eric Blake  <ebb9@byu.net>
11304
11305         Fix memmem to avoid O(n^2) worst-case complexity.
11306         * lib/memmem.c (knuth_morris_pratt): New function.
11307         (memmem): Use it if first few naive iterations fail.
11308         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
11309         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
11310         * modules/memchr (License): Likewise.
11311         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
11312         malloca.
11313         * tests/test-memmem.c: Rewrite, borrowing ideas from
11314         test-mbsstr1.c; the old version wouldn't even compile!
11315         * modules/memmem-tests: New file.
11316         * lib/string.in.h (rpl_memmem): Add declaration.
11317         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
11318         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
11319         REPLACE_MEMMEM.
11320
11321 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
11322
11323         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
11324         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
11325         before any system include files, and undef after them all.  This
11326         should fix a problem on VMS reported by John E. Malmberg in
11327         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
11328
11329 2007-12-17  Eric Blake  <ebb9@byu.net>
11330
11331         Revert addition of verify, for BSD/OS.
11332         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
11333         can't handle large files, for the sake of obsolete platforms.
11334         * modules/fseeko (Depends-on): Remove verify.
11335         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
11336         * doc/functions/ftello.texi (ftello): Likewise.
11337         * doc/functions/fgetpos.texi (fgetpos): Likewise.
11338         Reported by Larry Jones.
11339
11340 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
11341
11342         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
11343         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
11344
11345 2007-12-17  Jim Meyering  <meyering@redhat.com>
11346
11347         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
11348         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
11349         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
11350         * modules/getcwd (Depends-on): Add openat.
11351         Reported by Petr Salinger.
11352
11353 2007-12-17  Bruno Haible  <bruno@clisp.org>
11354
11355         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
11356         avoid a segmentation fault of the configure test on x86_64 systems.
11357
11358 2007-12-15  Jim Meyering  <meyering@redhat.com>
11359
11360         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
11361
11362 2007-12-13  Eric Blake  <ebb9@byu.net>
11363
11364         Another fseek test.
11365         * tests/test-fseek.c (main): Also test ungetc handling.
11366         * tests/test-fseeko.c (main): Likewise.
11367         * modules/fseeko (Depends-on): Add verify.
11368         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
11369         large.
11370         Reported by Larry Jones.
11371
11372         Fix fseeko on mingw.
11373         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
11374         seek.
11375
11376         Beef up fseek tests.
11377         * tests/test-fseek.c (main): Also test eof handling.
11378         * tests/test-fseeko.c (main): Likewise.
11379         Reported by Larry Jones.
11380
11381 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
11382
11383         Fix fseeko on BSD-based platforms.
11384         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
11385         successful seek.
11386
11387 2007-12-12  Eric Blake  <ebb9@byu.net>
11388
11389         Allow circular dependency of separate libtests.a
11390         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
11391         when use_libtests.
11392
11393 2007-12-11  Eric Blake  <ebb9@byu.net>
11394
11395         Fix bug with -0.0L in previous patch.
11396         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
11397         * tests/test-isnan.c (main): Also test on zeroes.
11398         * tests/test-isnanf.c (main): Likewise.
11399         * tests/test-isnanl.h (main): Likewise.
11400
11401         Detect pseudo-denormals on x86 even when cross-compiling.
11402         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
11403         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
11404         invalid bit patterns that happen to satisfy ==.
11405
11406         Avoid link failures with separate libtests.a.
11407         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
11408         last, to satisfy circular dependencies.
11409
11410 2007-12-11  Eric Blake  <ebb9@byu.net>
11411         and Bruno Haible  <bruno@clisp.org>
11412
11413         Fix OpenBSD 4.0 <float.h> handling of long double.
11414         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
11415         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
11416         * doc/headers/float.texi (float.h): Document OpenBSD bug.
11417
11418 2007-12-11  Jim Meyering  <meyering@redhat.com>
11419
11420         * users.txt: Add libvirt.
11421
11422         Support versions of autoconf prior to 2.59c.
11423         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
11424         if it is not already defined.
11425
11426 2007-12-09  Bruno Haible  <bruno@clisp.org>
11427
11428         Let 'gnulib-tool --import' collect sources needed for the tests in
11429         tests/ rather than in lib/.
11430         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
11431         argument. If true, add rules to generate libtests.a, and put libtests.a
11432         into $(LDADD). Consider source files in subdirectories and set
11433         uses_subdirs.
11434         (func_emit_initmacro_start, func_emit_initmacro_end,
11435         func_emit_initmacro_done): Pass all arguments explicitly.
11436         (func_import): Determine two module lists main_modules,
11437         testsrelated_modules. Determine use_libtests. Determine two variables
11438         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
11439         instead of just sed_transform_lib_file. Determine two variables
11440         main_files and testsrelated_files. Compute 'files' as the union of
11441         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
11442         func_add_or_update. In the generated gnulib-comp.m4, collect the
11443         object files for tests/ in different variables than those for lib/.
11444         Substitute LIBTESTS_LIBDEPS.
11445         (func_create_testdir): Combine the uses_subdirs results from
11446         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
11447
11448 2007-12-09  Bruno Haible  <bruno@clisp.org>
11449
11450         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
11451         the build-aux directory.
11452
11453 2007-12-09  Bruno Haible  <bruno@clisp.org>
11454
11455         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
11456         introduced on 2006-09-09.
11457
11458 2007-12-07  Jim Meyering  <meyering@redhat.com>
11459
11460         Let these macros work also with autoconf-2.59.
11461         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
11462         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
11463         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
11464
11465 2007-12-06  Jim Meyering  <meyering@redhat.com>
11466
11467         Avoid a configure-time syntax error in gl_FUNC_ACL.
11468         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
11469         function in each branch, before testing the cache variable.
11470
11471 2007-12-04  Eric Blake  <ebb9@byu.net>
11472
11473         Make scripts executable.
11474         * build-aux/config.guess: Add execute permissions.
11475         * build-aux/config.sub: Likewise.
11476         * build-aux/gendocs.sh: Likewise.
11477
11478         Fix frexp on mingw.
11479         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
11480         cross-compiling.
11481         * doc/functions/frexp.texi (frexp): Document the bug.
11482
11483         Make cygwin fseeko check more reliable.
11484         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
11485         version numbers, rather than unrelated feature check.
11486         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
11487         * doc/functions/ftello.texi (ftello): Likewise.
11488         Reported by Bruno Haible.
11489
11490         * m4/strerror.m4: Bump version number.
11491
11492 2007-12-03  Bruno Haible  <bruno@clisp.org>
11493
11494         * doc/functions/mprotect.texi: Mention the mingw problem.
11495
11496 2007-12-03  Eric Blake  <ebb9@byu.net>
11497
11498         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
11499         REPLACE_STRERROR is initialized before this macro.
11500
11501 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
11502
11503         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
11504         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
11505         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
11506         put -lsec in even for programs other than 'ls'.  This fixes a problem
11507         for gettext reported by Bruno Haible in
11508         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
11509         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
11510         Add support for Solaris 10.  This isn't efficient, but should get the
11511         job done for now.
11512
11513 2007-12-03  James Youngman  <jay@gnu.org>
11514
11515         * doc/regexprops-generic.texi: change "an close-group" to "a
11516         close-group" and "illegal" to "not allowed".
11517
11518 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11519
11520         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
11521         pr_byname.h. Needed for the rare case when the maintainer has done
11522         "make maintainer-clean" in the source directory and then attempts a
11523         build outside the source directory.
11524         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
11525         scripts_byname.h.
11526
11527 2007-12-02  Martin Lambers <marlam@marlam.de>
11528             Bruno Haible  <bruno@clisp.org>
11529
11530         * lib/getpagesize.h: Remove file.
11531         * lib/unistd.in.h: Include declaration of getpagesize here.
11532         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
11533         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
11534         HAVE_SYS_PARAM_H.
11535         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
11536         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
11537         * modules/getpagesize (Files): Remove lib/getpagesize.h.
11538         (Depends-on): Add unistd.
11539         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
11540         (Include): Use <unistd.h> instead of getpagesize.h.
11541         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
11542         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
11543         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
11544         gl_GETPAGESIZE invocation, already handled by module dependency.
11545         * lib/pagealign_alloc.c: Don't include getpagesize.h.
11546
11547 2007-12-02  Bruno Haible  <bruno@clisp.org>
11548
11549         * modules/strings-tests: New file.
11550         * tests/test-strings.c: New file.
11551
11552         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
11553         * lib/strings.in.h: New file.
11554         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
11555         * m4/strings_h.m4: New file.
11556         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
11557         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
11558         * modules/strings: New file.
11559         * modules/string (Makefile.am): Update.
11560         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
11561         Reported by Karl Berry.
11562
11563 2007-12-01  Eric Blake  <ebb9@byu.net>
11564
11565         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
11566         accomodate fix in cygwin 1.5.25.
11567
11568 2007-12-01  Jim Meyering  <meyering@redhat.com>
11569
11570         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
11571         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
11572         that would inhibit utf8-optimization of a regexp containing line-
11573         or buffer-anchors, e.g., `^', `$'.
11574
11575 2007-11-30  Bruno Haible  <bruno@clisp.org>
11576
11577         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
11578         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
11579         glthread_recursive_lock_init.
11580         * lib/lock.c (glthread_recursive_lock_init)
11581         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
11582         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
11583
11584 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
11585
11586         New function qset_acl, like set_acl but with syscall semantics.
11587         * lib/acl.h (qset_acl): New decl.
11588         * lib/acl.c (qset_acl): New function.
11589         (set_acl): Use new function.  Use more-consistent diagnostics.
11590
11591 2007-11-28  Jim Meyering  <meyering@redhat.com>
11592
11593         * modules/physmem (License): Change from GPL to LGPLv2+.
11594
11595 2007-11-26  Bruno Haible  <bruno@clisp.org>
11596
11597         * lib/vasnprintf.c (decode_long_double): Don't abort if the
11598         'long double' type has excess precision.
11599         Reported by Jim Meyering in
11600         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
11601
11602 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11603
11604         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
11605         Sync from <http://gnu.org/licenses>.
11606         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
11607         with license text from same location.
11608         * doc/maintain.texi, doc/standards.texi:  Sync from
11609         <http://savannah.gnu.org/projects/gnustandards>.
11610
11611 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
11612         and Jim Meyering  <meyering@redhat.com>
11613
11614         Adjust getdate' grammar to accept a slightly more regular language.
11615         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
11616         Before, the former was rejected.
11617         * lib/getdate.y (digits_to_date_time): New function, factored
11618         out of ...
11619         (number): ...here.  Just call digits_to_date_time.
11620         (hybrid): New non-terminal to handle an <unsigned number,
11621         signed relative offset> sequence consistently.
11622
11623 2007-11-18  Jim Meyering  <meyering@redhat.com>
11624
11625         Pull my changes from coreutils:
11626         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
11627         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
11628         use of $gnulib_tool_option_extras, so that it's separated from the
11629         preceding argument.
11630
11631         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
11632         * build-aux/bootstrap (cp_mark_as_generated): Create any required
11633         parent destination directories before copying a file into place.
11634
11635 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11636
11637         bootstrap: work also with 4-argument variant of AC_INIT
11638         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
11639
11640 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11641
11642         Port test-getaddrinfo to Solaris.
11643         Problem reported by Bruno Haible in
11644         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
11645         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
11646         explanation of setting 'hints'.
11647         Don't reject an implementation merely because it returns EAI_SERVICE.
11648         (EAI_SERVICE): Define to 0 if not defined.
11649
11650 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
11651
11652         The license of gnu-make and posix-shell is now "GPLed build tool".
11653         * modules/gnu-make (License): Likewise.
11654         * modules/posix-shell (License): Likewise.
11655
11656         New module posix-shell, for determining a POSIX shell
11657         or perhaps something that is close enough to a POSIX shell.
11658         * m4/posix-shell.m4: New file.
11659         * modules/posix-shell: New file.
11660
11661         * MODULES.html.sh: Mention new module.
11662
11663         New module gnu-make, for determining whether we're using GNU Make.
11664         * m4/gnu-make.m4: New file.
11665         * modules/gnu-make: New file.
11666         * MODULES.html.sh: Mention new module.
11667
11668 2007-11-14  Jim Meyering  <meyering@redhat.com>
11669
11670         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
11671         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
11672         use this macro to create a function _definition_.
11673         Remove useless "#undef ARGMATCH_DIE".
11674
11675 2007-11-14  Bruno Haible  <bruno@clisp.org>
11676
11677         * lib/config.charset: Update for OpenBSD 4.1.
11678         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
11679
11680 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
11681
11682         Document 64-bit #if problems in stdint.texi.
11683         * doc/headers/stdint.texi (stdint.h): Mention problems with
11684         64-bit-#if, and how to work around them.
11685
11686         Don't insist on 'long long int' support in the preprocessor.  It
11687         breaks too many things.  For example, PRIdMAX still uses a 'long
11688         long int' format with the latest Sun compiler, even though
11689         HAVE_LONG_LONG_INT isn't defined due to that compiler's
11690         preprocessor problem.  This causes the latest coreutils to dump
11691         core on Solaris 10 sparc with the Sun C compiler.
11692         Instead, fix the 2007-10-16 problem in a different way, by evaluating
11693         the troublesome expressions at configure-time, not at #if-time.
11694         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
11695         preprocessor.
11696         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
11697         compile-time C checks, done at 'configure'-time.
11698         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
11699         * modules/inttypes (Makefile): Substitute the new symbols that
11700         gl_INTTYPES_H now generates.
11701         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
11702
11703 2007-11-12  Bruno Haible  <bruno@clisp.org>
11704
11705         Tests for Unicode character classification functions.
11706
11707         * modules/unictype/bidicategory-byname-tests: New file.
11708         * modules/unictype/bidicategory-name-tests: New file.
11709         * modules/unictype/bidicategory-of-tests: New file.
11710         * modules/unictype/bidicategory-test-tests: New file.
11711         * modules/unictype/block-list-tests: New file.
11712         * modules/unictype/block-of-tests: New file.
11713         * modules/unictype/block-test-tests: New file.
11714         * modules/unictype/category-C-tests: New file.
11715         * modules/unictype/category-Cc-tests: New file.
11716         * modules/unictype/category-Cf-tests: New file.
11717         * modules/unictype/category-Cn-tests: New file.
11718         * modules/unictype/category-Co-tests: New file.
11719         * modules/unictype/category-Cs-tests: New file.
11720         * modules/unictype/category-L-tests: New file.
11721         * modules/unictype/category-Ll-tests: New file.
11722         * modules/unictype/category-Lm-tests: New file.
11723         * modules/unictype/category-Lo-tests: New file.
11724         * modules/unictype/category-Lt-tests: New file.
11725         * modules/unictype/category-Lu-tests: New file.
11726         * modules/unictype/category-M-tests: New file.
11727         * modules/unictype/category-Mc-tests: New file.
11728         * modules/unictype/category-Me-tests: New file.
11729         * modules/unictype/category-Mn-tests: New file.
11730         * modules/unictype/category-N-tests: New file.
11731         * modules/unictype/category-Nd-tests: New file.
11732         * modules/unictype/category-Nl-tests: New file.
11733         * modules/unictype/category-No-tests: New file.
11734         * modules/unictype/category-P-tests: New file.
11735         * modules/unictype/category-Pc-tests: New file.
11736         * modules/unictype/category-Pd-tests: New file.
11737         * modules/unictype/category-Pe-tests: New file.
11738         * modules/unictype/category-Pf-tests: New file.
11739         * modules/unictype/category-Pi-tests: New file.
11740         * modules/unictype/category-Po-tests: New file.
11741         * modules/unictype/category-Ps-tests: New file.
11742         * modules/unictype/category-S-tests: New file.
11743         * modules/unictype/category-Sc-tests: New file.
11744         * modules/unictype/category-Sk-tests: New file.
11745         * modules/unictype/category-Sm-tests: New file.
11746         * modules/unictype/category-So-tests: New file.
11747         * modules/unictype/category-Z-tests: New file.
11748         * modules/unictype/category-Zl-tests: New file.
11749         * modules/unictype/category-Zp-tests: New file.
11750         * modules/unictype/category-Zs-tests: New file.
11751         * modules/unictype/category-and-not-tests: New file.
11752         * modules/unictype/category-and-tests: New file.
11753         * modules/unictype/category-byname-tests: New file.
11754         * modules/unictype/category-name-tests: New file.
11755         * modules/unictype/category-none-tests: New file.
11756         * modules/unictype/category-of-tests: New file.
11757         * modules/unictype/category-or-tests: New file.
11758         * modules/unictype/category-test-withtable-tests: New file.
11759         * modules/unictype/combining-class-tests: New file.
11760         * modules/unictype/ctype-alnum-tests: New file.
11761         * modules/unictype/ctype-alpha-tests: New file.
11762         * modules/unictype/ctype-blank-tests: New file.
11763         * modules/unictype/ctype-cntrl-tests: New file.
11764         * modules/unictype/ctype-digit-tests: New file.
11765         * modules/unictype/ctype-graph-tests: New file.
11766         * modules/unictype/ctype-lower-tests: New file.
11767         * modules/unictype/ctype-print-tests: New file.
11768         * modules/unictype/ctype-punct-tests: New file.
11769         * modules/unictype/ctype-space-tests: New file.
11770         * modules/unictype/ctype-upper-tests: New file.
11771         * modules/unictype/ctype-xdigit-tests: New file.
11772         * modules/unictype/decimal-digit-tests: New file.
11773         * modules/unictype/digit-tests: New file.
11774         * modules/unictype/mirror-tests: New file.
11775         * modules/unictype/numeric-tests: New file.
11776         * modules/unictype/property-alphabetic-tests: New file.
11777         * modules/unictype/property-ascii-hex-digit-tests: New file.
11778         * modules/unictype/property-bidi-arabic-digit-tests: New file.
11779         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
11780         * modules/unictype/property-bidi-block-separator-tests: New file.
11781         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
11782         * modules/unictype/property-bidi-common-separator-tests: New file.
11783         * modules/unictype/property-bidi-control-tests: New file.
11784         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
11785         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
11786         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
11787         * modules/unictype/property-bidi-european-digit-tests: New file.
11788         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
11789         * modules/unictype/property-bidi-left-to-right-tests: New file.
11790         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
11791         * modules/unictype/property-bidi-other-neutral-tests: New file.
11792         * modules/unictype/property-bidi-pdf-tests: New file.
11793         * modules/unictype/property-bidi-segment-separator-tests: New file.
11794         * modules/unictype/property-bidi-whitespace-tests: New file.
11795         * modules/unictype/property-byname-tests: New file.
11796         * modules/unictype/property-combining-tests: New file.
11797         * modules/unictype/property-composite-tests: New file.
11798         * modules/unictype/property-currency-symbol-tests: New file.
11799         * modules/unictype/property-dash-tests: New file.
11800         * modules/unictype/property-decimal-digit-tests: New file.
11801         * modules/unictype/property-default-ignorable-code-point-tests: New file.
11802         * modules/unictype/property-deprecated-tests: New file.
11803         * modules/unictype/property-diacritic-tests: New file.
11804         * modules/unictype/property-extender-tests: New file.
11805         * modules/unictype/property-format-control-tests: New file.
11806         * modules/unictype/property-grapheme-base-tests: New file.
11807         * modules/unictype/property-grapheme-extend-tests: New file.
11808         * modules/unictype/property-grapheme-link-tests: New file.
11809         * modules/unictype/property-hex-digit-tests: New file.
11810         * modules/unictype/property-hyphen-tests: New file.
11811         * modules/unictype/property-id-continue-tests: New file.
11812         * modules/unictype/property-id-start-tests: New file.
11813         * modules/unictype/property-ideographic-tests: New file.
11814         * modules/unictype/property-ids-binary-operator-tests: New file.
11815         * modules/unictype/property-ids-trinary-operator-tests: New file.
11816         * modules/unictype/property-ignorable-control-tests: New file.
11817         * modules/unictype/property-iso-control-tests: New file.
11818         * modules/unictype/property-join-control-tests: New file.
11819         * modules/unictype/property-left-of-pair-tests: New file.
11820         * modules/unictype/property-line-separator-tests: New file.
11821         * modules/unictype/property-logical-order-exception-tests: New file.
11822         * modules/unictype/property-lowercase-tests: New file.
11823         * modules/unictype/property-math-tests: New file.
11824         * modules/unictype/property-non-break-tests: New file.
11825         * modules/unictype/property-not-a-character-tests: New file.
11826         * modules/unictype/property-numeric-tests: New file.
11827         * modules/unictype/property-other-alphabetic-tests: New file.
11828         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
11829         * modules/unictype/property-other-grapheme-extend-tests: New file.
11830         * modules/unictype/property-other-id-continue-tests: New file.
11831         * modules/unictype/property-other-id-start-tests: New file.
11832         * modules/unictype/property-other-lowercase-tests: New file.
11833         * modules/unictype/property-other-math-tests: New file.
11834         * modules/unictype/property-other-uppercase-tests: New file.
11835         * modules/unictype/property-paired-punctuation-tests: New file.
11836         * modules/unictype/property-paragraph-separator-tests: New file.
11837         * modules/unictype/property-pattern-syntax-tests: New file.
11838         * modules/unictype/property-pattern-white-space-tests: New file.
11839         * modules/unictype/property-private-use-tests: New file.
11840         * modules/unictype/property-punctuation-tests: New file.
11841         * modules/unictype/property-quotation-mark-tests: New file.
11842         * modules/unictype/property-radical-tests: New file.
11843         * modules/unictype/property-sentence-terminal-tests: New file.
11844         * modules/unictype/property-soft-dotted-tests: New file.
11845         * modules/unictype/property-space-tests: New file.
11846         * modules/unictype/property-terminal-punctuation-tests: New file.
11847         * modules/unictype/property-test-tests: New file.
11848         * modules/unictype/property-titlecase-tests: New file.
11849         * modules/unictype/property-unassigned-code-value-tests: New file.
11850         * modules/unictype/property-unified-ideograph-tests: New file.
11851         * modules/unictype/property-uppercase-tests: New file.
11852         * modules/unictype/property-variation-selector-tests: New file.
11853         * modules/unictype/property-white-space-tests: New file.
11854         * modules/unictype/property-xid-continue-tests: New file.
11855         * modules/unictype/property-xid-start-tests: New file.
11856         * modules/unictype/property-zero-width-tests: New file.
11857         * modules/unictype/scripts-tests: New file.
11858         * modules/unictype/syntax-c-ident-tests: New file.
11859         * modules/unictype/syntax-c-whitespace-tests: New file.
11860         * modules/unictype/syntax-java-ident-tests: New file.
11861         * modules/unictype/syntax-java-whitespace-tests: New file.
11862         * tests/unictype/test-bidi_byname.c: New file.
11863         * tests/unictype/test-bidi_name.c: New file.
11864         * tests/unictype/test-bidi_of.c: New file.
11865         * tests/unictype/test-bidi_test.c: New file.
11866         * tests/unictype/test-block_list.c: New file.
11867         * tests/unictype/test-block_of.c: New file.
11868         * tests/unictype/test-block_test.c: New file.
11869         * tests/unictype/test-categ_and.c: New file.
11870         * tests/unictype/test-categ_and_not.c: New file.
11871         * tests/unictype/test-categ_byname.c: New file.
11872         * tests/unictype/test-categ_name.c: New file.
11873         * tests/unictype/test-categ_none.c: New file.
11874         * tests/unictype/test-categ_of.c: New file.
11875         * tests/unictype/test-categ_or.c: New file.
11876         * tests/unictype/test-categ_test_withtable.c: New file.
11877         * tests/unictype/test-combining.c: New file.
11878         * tests/unictype/test-decdigit.c: New file.
11879         * tests/unictype/test-digit.c: New file.
11880         * tests/unictype/test-mirror.c: New file.
11881         * tests/unictype/test-numeric.c: New file.
11882         * tests/unictype/test-pr_byname.c: New file.
11883         * tests/unictype/test-pr_test.c: New file.
11884         * tests/unictype/test-predicate-part1.h: New file.
11885         * tests/unictype/test-predicate-part2.h: New file.
11886         * tests/unictype/test-scripts.c: New file.
11887         * tests/unictype/test-sy_c_ident.c: New file.
11888         * tests/unictype/test-sy_java_ident.c: New file.
11889
11890         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
11891         for Unicode 5.0.0.
11892         * tests/unictype/test-categ_Cc.c: Likewise.
11893         * tests/unictype/test-categ_Cf.c: Likewise.
11894         * tests/unictype/test-categ_Cn.c: Likewise.
11895         * tests/unictype/test-categ_Co.c: Likewise.
11896         * tests/unictype/test-categ_Cs.c: Likewise.
11897         * tests/unictype/test-categ_L.c: Likewise.
11898         * tests/unictype/test-categ_Ll.c: Likewise.
11899         * tests/unictype/test-categ_Lm.c: Likewise.
11900         * tests/unictype/test-categ_Lo.c: Likewise.
11901         * tests/unictype/test-categ_Lt.c: Likewise.
11902         * tests/unictype/test-categ_Lu.c: Likewise.
11903         * tests/unictype/test-categ_M.c: Likewise.
11904         * tests/unictype/test-categ_Mc.c: Likewise.
11905         * tests/unictype/test-categ_Me.c: Likewise.
11906         * tests/unictype/test-categ_Mn.c: Likewise.
11907         * tests/unictype/test-categ_N.c: Likewise.
11908         * tests/unictype/test-categ_Nd.c: Likewise.
11909         * tests/unictype/test-categ_Nl.c: Likewise.
11910         * tests/unictype/test-categ_No.c: Likewise.
11911         * tests/unictype/test-categ_P.c: Likewise.
11912         * tests/unictype/test-categ_Pc.c: Likewise.
11913         * tests/unictype/test-categ_Pd.c: Likewise.
11914         * tests/unictype/test-categ_Pe.c: Likewise.
11915         * tests/unictype/test-categ_Pf.c: Likewise.
11916         * tests/unictype/test-categ_Pi.c: Likewise.
11917         * tests/unictype/test-categ_Po.c: Likewise.
11918         * tests/unictype/test-categ_Ps.c: Likewise.
11919         * tests/unictype/test-categ_S.c: Likewise.
11920         * tests/unictype/test-categ_Sc.c: Likewise.
11921         * tests/unictype/test-categ_Sk.c: Likewise.
11922         * tests/unictype/test-categ_Sm.c: Likewise.
11923         * tests/unictype/test-categ_So.c: Likewise.
11924         * tests/unictype/test-categ_Z.c: Likewise.
11925         * tests/unictype/test-categ_Zl.c: Likewise.
11926         * tests/unictype/test-categ_Zp.c: Likewise.
11927         * tests/unictype/test-categ_Zs.c: Likewise.
11928         * tests/unictype/test-ctype_alnum.c: Likewise.
11929         * tests/unictype/test-ctype_alpha.c: Likewise.
11930         * tests/unictype/test-ctype_blank.c: Likewise.
11931         * tests/unictype/test-ctype_cntrl.c: Likewise.
11932         * tests/unictype/test-ctype_digit.c: Likewise.
11933         * tests/unictype/test-ctype_graph.c: Likewise.
11934         * tests/unictype/test-ctype_lower.c: Likewise.
11935         * tests/unictype/test-ctype_print.c: Likewise.
11936         * tests/unictype/test-ctype_punct.c: Likewise.
11937         * tests/unictype/test-ctype_space.c: Likewise.
11938         * tests/unictype/test-ctype_upper.c: Likewise.
11939         * tests/unictype/test-ctype_xdigit.c: Likewise.
11940         * tests/unictype/test-decdigit.h: Likewise.
11941         * tests/unictype/test-digit.h: Likewise.
11942         * tests/unictype/test-numeric.h: Likewise.
11943         * tests/unictype/test-pr_alphabetic.c: Likewise.
11944         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
11945         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
11946         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
11947         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
11948         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
11949         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
11950         * tests/unictype/test-pr_bidi_control.c: Likewise.
11951         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
11952         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
11953         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
11954         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
11955         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
11956         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
11957         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
11958         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
11959         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
11960         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
11961         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
11962         * tests/unictype/test-pr_combining.c: Likewise.
11963         * tests/unictype/test-pr_composite.c: Likewise.
11964         * tests/unictype/test-pr_currency_symbol.c: Likewise.
11965         * tests/unictype/test-pr_dash.c: Likewise.
11966         * tests/unictype/test-pr_decimal_digit.c: Likewise.
11967         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
11968         * tests/unictype/test-pr_deprecated.c: Likewise.
11969         * tests/unictype/test-pr_diacritic.c: Likewise.
11970         * tests/unictype/test-pr_extender.c: Likewise.
11971         * tests/unictype/test-pr_format_control.c: Likewise.
11972         * tests/unictype/test-pr_grapheme_base.c: Likewise.
11973         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
11974         * tests/unictype/test-pr_grapheme_link.c: Likewise.
11975         * tests/unictype/test-pr_hex_digit.c: Likewise.
11976         * tests/unictype/test-pr_hyphen.c: Likewise.
11977         * tests/unictype/test-pr_id_continue.c: Likewise.
11978         * tests/unictype/test-pr_id_start.c: Likewise.
11979         * tests/unictype/test-pr_ideographic.c: Likewise.
11980         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
11981         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
11982         * tests/unictype/test-pr_ignorable_control.c: Likewise.
11983         * tests/unictype/test-pr_iso_control.c: Likewise.
11984         * tests/unictype/test-pr_join_control.c: Likewise.
11985         * tests/unictype/test-pr_left_of_pair.c: Likewise.
11986         * tests/unictype/test-pr_line_separator.c: Likewise.
11987         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
11988         * tests/unictype/test-pr_lowercase.c: Likewise.
11989         * tests/unictype/test-pr_math.c: Likewise.
11990         * tests/unictype/test-pr_non_break.c: Likewise.
11991         * tests/unictype/test-pr_not_a_character.c: Likewise.
11992         * tests/unictype/test-pr_numeric.c: Likewise.
11993         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
11994         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
11995         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
11996         * tests/unictype/test-pr_other_id_continue.c: Likewise.
11997         * tests/unictype/test-pr_other_id_start.c: Likewise.
11998         * tests/unictype/test-pr_other_lowercase.c: Likewise.
11999         * tests/unictype/test-pr_other_math.c: Likewise.
12000         * tests/unictype/test-pr_other_uppercase.c: Likewise.
12001         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
12002         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
12003         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
12004         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
12005         * tests/unictype/test-pr_private_use.c: Likewise.
12006         * tests/unictype/test-pr_punctuation.c: Likewise.
12007         * tests/unictype/test-pr_quotation_mark.c: Likewise.
12008         * tests/unictype/test-pr_radical.c: Likewise.
12009         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
12010         * tests/unictype/test-pr_soft_dotted.c: Likewise.
12011         * tests/unictype/test-pr_space.c: Likewise.
12012         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
12013         * tests/unictype/test-pr_titlecase.c: Likewise.
12014         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
12015         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
12016         * tests/unictype/test-pr_uppercase.c: Likewise.
12017         * tests/unictype/test-pr_variation_selector.c: Likewise.
12018         * tests/unictype/test-pr_white_space.c: Likewise.
12019         * tests/unictype/test-pr_xid_continue.c: Likewise.
12020         * tests/unictype/test-pr_xid_start.c: Likewise.
12021         * tests/unictype/test-pr_zero_width.c: Likewise.
12022         * tests/unictype/test-sy_c_whitespace.c: Likewise.
12023         * tests/unictype/test-sy_java_whitespace.c: Likewise.
12024
12025 2007-11-12  Bruno Haible  <bruno@clisp.org>
12026
12027         Unicode character classification functions.
12028         * lib/unictype.h: New file.
12029         * modules/unictype/base: New file.
12030         * modules/unictype/category-L: New file.
12031         * modules/unictype/category-Lu: New file.
12032         * modules/unictype/category-Ll: New file.
12033         * modules/unictype/category-Lt: New file.
12034         * modules/unictype/category-Lm: New file.
12035         * modules/unictype/category-Lo: New file.
12036         * modules/unictype/category-M: New file.
12037         * modules/unictype/category-Mn: New file.
12038         * modules/unictype/category-Mc: New file.
12039         * modules/unictype/category-Me: New file.
12040         * modules/unictype/category-N: New file.
12041         * modules/unictype/category-Nd: New file.
12042         * modules/unictype/category-Nl: New file.
12043         * modules/unictype/category-No: New file.
12044         * modules/unictype/category-P: New file.
12045         * modules/unictype/category-Pc: New file.
12046         * modules/unictype/category-Pd: New file.
12047         * modules/unictype/category-Ps: New file.
12048         * modules/unictype/category-Pe: New file.
12049         * modules/unictype/category-Pi: New file.
12050         * modules/unictype/category-Pf: New file.
12051         * modules/unictype/category-Po: New file.
12052         * modules/unictype/category-S: New file.
12053         * modules/unictype/category-Sm: New file.
12054         * modules/unictype/category-Sc: New file.
12055         * modules/unictype/category-Sk: New file.
12056         * modules/unictype/category-So: New file.
12057         * modules/unictype/category-Z: New file.
12058         * modules/unictype/category-Zs: New file.
12059         * modules/unictype/category-Zl: New file.
12060         * modules/unictype/category-Zp: New file.
12061         * modules/unictype/category-C: New file.
12062         * modules/unictype/category-Cc: New file.
12063         * modules/unictype/category-Cf: New file.
12064         * modules/unictype/category-Cs: New file.
12065         * modules/unictype/category-Co: New file.
12066         * modules/unictype/category-Cn: New file.
12067         * modules/unictype/category-or: New file.
12068         * modules/unictype/category-of: New file.
12069         * modules/unictype/category-test: New file.
12070         * modules/unictype/category-test-withtable: New file.
12071         * modules/unictype/category-byname: New file.
12072         * modules/unictype/category-none: New file.
12073         * modules/unictype/category-and: New file.
12074         * modules/unictype/category-and-not: New file.
12075         * modules/unictype/category-name: New file.
12076         * modules/unictype/combining-class: New file.
12077         * modules/unictype/category-all: New file.
12078         * modules/unictype/bidicategory-all: New file.
12079         * modules/unictype/bidicategory-byname: New file.
12080         * modules/unictype/bidicategory-name: New file.
12081         * modules/unictype/bidicategory-of: New file.
12082         * modules/unictype/bidicategory-test: New file.
12083         * modules/unictype/decimal-digit: New file.
12084         * modules/unictype/digit: New file.
12085         * modules/unictype/numeric: New file.
12086         * modules/unictype/mirror: New file.
12087         * modules/unictype/property-white-space: New file.
12088         * modules/unictype/property-alphabetic: New file.
12089         * modules/unictype/property-other-alphabetic: New file.
12090         * modules/unictype/property-not-a-character: New file.
12091         * modules/unictype/property-default-ignorable-code-point: New file.
12092         * modules/unictype/property-other-default-ignorable-code-point: New
12093         file.
12094         * modules/unictype/property-deprecated: New file.
12095         * modules/unictype/property-logical-order-exception: New file.
12096         * modules/unictype/property-variation-selector: New file.
12097         * modules/unictype/property-private-use: New file.
12098         * modules/unictype/property-unassigned-code-value: New file.
12099         * modules/unictype/property-uppercase: New file.
12100         * modules/unictype/property-other-uppercase: New file.
12101         * modules/unictype/property-lowercase: New file.
12102         * modules/unictype/property-other-lowercase: New file.
12103         * modules/unictype/property-titlecase: New file.
12104         * modules/unictype/property-soft-dotted: New file.
12105         * modules/unictype/property-id-start: New file.
12106         * modules/unictype/property-other-id-start: New file.
12107         * modules/unictype/property-id-continue: New file.
12108         * modules/unictype/property-other-id-continue: New file.
12109         * modules/unictype/property-xid-start: New file.
12110         * modules/unictype/property-xid-continue: New file.
12111         * modules/unictype/property-pattern-white-space: New file.
12112         * modules/unictype/property-pattern-syntax: New file.
12113         * modules/unictype/property-join-control: New file.
12114         * modules/unictype/property-grapheme-base: New file.
12115         * modules/unictype/property-grapheme-extend: New file.
12116         * modules/unictype/property-other-grapheme-extend: New file.
12117         * modules/unictype/property-grapheme-link: New file.
12118         * modules/unictype/property-bidi-control: New file.
12119         * modules/unictype/property-bidi-left-to-right: New file.
12120         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
12121         * modules/unictype/property-bidi-arabic-right-to-left: New file.
12122         * modules/unictype/property-bidi-european-digit: New file.
12123         * modules/unictype/property-bidi-eur-num-separator: New file.
12124         * modules/unictype/property-bidi-eur-num-terminator: New file.
12125         * modules/unictype/property-bidi-arabic-digit: New file.
12126         * modules/unictype/property-bidi-common-separator: New file.
12127         * modules/unictype/property-bidi-block-separator: New file.
12128         * modules/unictype/property-bidi-segment-separator: New file.
12129         * modules/unictype/property-bidi-whitespace: New file.
12130         * modules/unictype/property-bidi-non-spacing-mark: New file.
12131         * modules/unictype/property-bidi-boundary-neutral: New file.
12132         * modules/unictype/property-bidi-pdf: New file.
12133         * modules/unictype/property-bidi-embedding-or-override: New file.
12134         * modules/unictype/property-bidi-other-neutral: New file.
12135         * modules/unictype/property-hex-digit: New file.
12136         * modules/unictype/property-ascii-hex-digit: New file.
12137         * modules/unictype/property-ideographic: New file.
12138         * modules/unictype/property-unified-ideograph: New file.
12139         * modules/unictype/property-radical: New file.
12140         * modules/unictype/property-ids-binary-operator: New file.
12141         * modules/unictype/property-ids-trinary-operator: New file.
12142         * modules/unictype/property-zero-width: New file.
12143         * modules/unictype/property-space: New file.
12144         * modules/unictype/property-non-break: New file.
12145         * modules/unictype/property-iso-control: New file.
12146         * modules/unictype/property-format-control: New file.
12147         * modules/unictype/property-dash: New file.
12148         * modules/unictype/property-hyphen: New file.
12149         * modules/unictype/property-punctuation: New file.
12150         * modules/unictype/property-line-separator: New file.
12151         * modules/unictype/property-paragraph-separator: New file.
12152         * modules/unictype/property-quotation-mark: New file.
12153         * modules/unictype/property-sentence-terminal: New file.
12154         * modules/unictype/property-terminal-punctuation: New file.
12155         * modules/unictype/property-currency-symbol: New file.
12156         * modules/unictype/property-math: New file.
12157         * modules/unictype/property-other-math: New file.
12158         * modules/unictype/property-paired-punctuation: New file.
12159         * modules/unictype/property-left-of-pair: New file.
12160         * modules/unictype/property-combining: New file.
12161         * modules/unictype/property-composite: New file.
12162         * modules/unictype/property-decimal-digit: New file.
12163         * modules/unictype/property-numeric: New file.
12164         * modules/unictype/property-diacritic: New file.
12165         * modules/unictype/property-extender: New file.
12166         * modules/unictype/property-ignorable-control: New file.
12167         * modules/unictype/property-test: New file.
12168         * modules/unictype/property-byname: New file.
12169         * modules/unictype/property-all: New file.
12170         * modules/unictype/scripts: New file.
12171         * modules/unictype/scripts-all: New file.
12172         * modules/unictype/block-of: New file.
12173         * modules/unictype/block-test: New file.
12174         * modules/unictype/block-list: New file.
12175         * modules/unictype/block-all: New file.
12176         * modules/unictype/syntax-c-whitespace: New file.
12177         * modules/unictype/syntax-java-whitespace: New file.
12178         * modules/unictype/syntax-c-ident: New file.
12179         * modules/unictype/syntax-java-ident: New file.
12180         * modules/unictype/ctype-alnum: New file.
12181         * modules/unictype/ctype-alpha: New file.
12182         * modules/unictype/ctype-cntrl: New file.
12183         * modules/unictype/ctype-digit: New file.
12184         * modules/unictype/ctype-graph: New file.
12185         * modules/unictype/ctype-lower: New file.
12186         * modules/unictype/ctype-print: New file.
12187         * modules/unictype/ctype-punct: New file.
12188         * modules/unictype/ctype-space: New file.
12189         * modules/unictype/ctype-upper: New file.
12190         * modules/unictype/ctype-xdigit: New file.
12191         * modules/unictype/ctype-blank: New file.
12192         * lib/unictype/bidi_byname.c: New file.
12193         * lib/unictype/bidi_name.c: New file.
12194         * lib/unictype/bidi_of.c: New file.
12195         * lib/unictype/bidi_test.c: New file.
12196         * lib/unictype/bitmap.h: New file.
12197         * lib/unictype/block_test.c: New file.
12198         * lib/unictype/blocks.c: New file.
12199         * lib/unictype/categ_C.c: New file.
12200         * lib/unictype/categ_Cc.c: New file.
12201         * lib/unictype/categ_Cf.c: New file.
12202         * lib/unictype/categ_Cn.c: New file.
12203         * lib/unictype/categ_Co.c: New file.
12204         * lib/unictype/categ_Cs.c: New file.
12205         * lib/unictype/categ_L.c: New file.
12206         * lib/unictype/categ_Ll.c: New file.
12207         * lib/unictype/categ_Lm.c: New file.
12208         * lib/unictype/categ_Lo.c: New file.
12209         * lib/unictype/categ_Lt.c: New file.
12210         * lib/unictype/categ_Lu.c: New file.
12211         * lib/unictype/categ_M.c: New file.
12212         * lib/unictype/categ_Mc.c: New file.
12213         * lib/unictype/categ_Me.c: New file.
12214         * lib/unictype/categ_Mn.c: New file.
12215         * lib/unictype/categ_N.c: New file.
12216         * lib/unictype/categ_Nd.c: New file.
12217         * lib/unictype/categ_Nl.c: New file.
12218         * lib/unictype/categ_No.c: New file.
12219         * lib/unictype/categ_P.c: New file.
12220         * lib/unictype/categ_Pc.c: New file.
12221         * lib/unictype/categ_Pd.c: New file.
12222         * lib/unictype/categ_Pe.c: New file.
12223         * lib/unictype/categ_Pf.c: New file.
12224         * lib/unictype/categ_Pi.c: New file.
12225         * lib/unictype/categ_Po.c: New file.
12226         * lib/unictype/categ_Ps.c: New file.
12227         * lib/unictype/categ_S.c: New file.
12228         * lib/unictype/categ_Sc.c: New file.
12229         * lib/unictype/categ_Sk.c: New file.
12230         * lib/unictype/categ_Sm.c: New file.
12231         * lib/unictype/categ_So.c: New file.
12232         * lib/unictype/categ_Z.c: New file.
12233         * lib/unictype/categ_Zl.c: New file.
12234         * lib/unictype/categ_Zp.c: New file.
12235         * lib/unictype/categ_Zs.c: New file.
12236         * lib/unictype/categ_and.c: New file.
12237         * lib/unictype/categ_and_not.c: New file.
12238         * lib/unictype/categ_byname.c: New file.
12239         * lib/unictype/categ_name.c: New file.
12240         * lib/unictype/categ_none.c: New file.
12241         * lib/unictype/categ_of.c: New file.
12242         * lib/unictype/categ_or.c: New file.
12243         * lib/unictype/categ_test.c: New file.
12244         * lib/unictype/combining.c: New file.
12245         * lib/unictype/ctype_alnum.c: New file.
12246         * lib/unictype/ctype_alpha.c: New file.
12247         * lib/unictype/ctype_blank.c: New file.
12248         * lib/unictype/ctype_cntrl.c: New file.
12249         * lib/unictype/ctype_digit.c: New file.
12250         * lib/unictype/ctype_graph.c: New file.
12251         * lib/unictype/ctype_lower.c: New file.
12252         * lib/unictype/ctype_print.c: New file.
12253         * lib/unictype/ctype_punct.c: New file.
12254         * lib/unictype/ctype_space.c: New file.
12255         * lib/unictype/ctype_upper.c: New file.
12256         * lib/unictype/ctype_xdigit.c: New file.
12257         * lib/unictype/decdigit.c: New file.
12258         * lib/unictype/digit.c: New file.
12259         * lib/unictype/identsyntaxmap.h: New file.
12260         * lib/unictype/mirror.c: New file.
12261         * lib/unictype/numeric.c: New file.
12262         * lib/unictype/pr_alphabetic.c: New file.
12263         * lib/unictype/pr_ascii_hex_digit.c: New file.
12264         * lib/unictype/pr_bidi_arabic_digit.c: New file.
12265         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
12266         * lib/unictype/pr_bidi_block_separator.c: New file.
12267         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
12268         * lib/unictype/pr_bidi_common_separator.c: New file.
12269         * lib/unictype/pr_bidi_control.c: New file.
12270         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
12271         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
12272         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
12273         * lib/unictype/pr_bidi_european_digit.c: New file.
12274         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
12275         * lib/unictype/pr_bidi_left_to_right.c: New file.
12276         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
12277         * lib/unictype/pr_bidi_other_neutral.c: New file.
12278         * lib/unictype/pr_bidi_pdf.c: New file.
12279         * lib/unictype/pr_bidi_segment_separator.c: New file.
12280         * lib/unictype/pr_bidi_whitespace.c: New file.
12281         * lib/unictype/pr_byname.c: New file.
12282         * lib/unictype/pr_byname.gperf: New file.
12283         * lib/unictype/pr_combining.c: New file.
12284         * lib/unictype/pr_composite.c: New file.
12285         * lib/unictype/pr_currency_symbol.c: New file.
12286         * lib/unictype/pr_dash.c: New file.
12287         * lib/unictype/pr_decimal_digit.c: New file.
12288         * lib/unictype/pr_default_ignorable_code_point.c: New file.
12289         * lib/unictype/pr_deprecated.c: New file.
12290         * lib/unictype/pr_diacritic.c: New file.
12291         * lib/unictype/pr_extender.c: New file.
12292         * lib/unictype/pr_format_control.c: New file.
12293         * lib/unictype/pr_grapheme_base.c: New file.
12294         * lib/unictype/pr_grapheme_extend.c: New file.
12295         * lib/unictype/pr_grapheme_link.c: New file.
12296         * lib/unictype/pr_hex_digit.c: New file.
12297         * lib/unictype/pr_hyphen.c: New file.
12298         * lib/unictype/pr_id_continue.c: New file.
12299         * lib/unictype/pr_id_start.c: New file.
12300         * lib/unictype/pr_ideographic.c: New file.
12301         * lib/unictype/pr_ids_binary_operator.c: New file.
12302         * lib/unictype/pr_ids_trinary_operator.c: New file.
12303         * lib/unictype/pr_ignorable_control.c: New file.
12304         * lib/unictype/pr_iso_control.c: New file.
12305         * lib/unictype/pr_join_control.c: New file.
12306         * lib/unictype/pr_left_of_pair.c: New file.
12307         * lib/unictype/pr_line_separator.c: New file.
12308         * lib/unictype/pr_logical_order_exception.c: New file.
12309         * lib/unictype/pr_lowercase.c: New file.
12310         * lib/unictype/pr_math.c: New file.
12311         * lib/unictype/pr_non_break.c: New file.
12312         * lib/unictype/pr_not_a_character.c: New file.
12313         * lib/unictype/pr_numeric.c: New file.
12314         * lib/unictype/pr_other_alphabetic.c: New file.
12315         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
12316         * lib/unictype/pr_other_grapheme_extend.c: New file.
12317         * lib/unictype/pr_other_id_continue.c: New file.
12318         * lib/unictype/pr_other_id_start.c: New file.
12319         * lib/unictype/pr_other_lowercase.c: New file.
12320         * lib/unictype/pr_other_math.c: New file.
12321         * lib/unictype/pr_other_uppercase.c: New file.
12322         * lib/unictype/pr_paired_punctuation.c: New file.
12323         * lib/unictype/pr_paragraph_separator.c: New file.
12324         * lib/unictype/pr_pattern_syntax.c: New file.
12325         * lib/unictype/pr_pattern_white_space.c: New file.
12326         * lib/unictype/pr_private_use.c: New file.
12327         * lib/unictype/pr_punctuation.c: New file.
12328         * lib/unictype/pr_quotation_mark.c: New file.
12329         * lib/unictype/pr_radical.c: New file.
12330         * lib/unictype/pr_sentence_terminal.c: New file.
12331         * lib/unictype/pr_soft_dotted.c: New file.
12332         * lib/unictype/pr_space.c: New file.
12333         * lib/unictype/pr_terminal_punctuation.c: New file.
12334         * lib/unictype/pr_test.c: New file.
12335         * lib/unictype/pr_titlecase.c: New file.
12336         * lib/unictype/pr_unassigned_code_value.c: New file.
12337         * lib/unictype/pr_unified_ideograph.c: New file.
12338         * lib/unictype/pr_uppercase.c: New file.
12339         * lib/unictype/pr_variation_selector.c: New file.
12340         * lib/unictype/pr_white_space.c: New file.
12341         * lib/unictype/pr_xid_continue.c: New file.
12342         * lib/unictype/pr_xid_start.c: New file.
12343         * lib/unictype/pr_zero_width.c: New file.
12344         * lib/unictype/scripts.c: New file.
12345         * lib/unictype/sy_c_ident.c: New file.
12346         * lib/unictype/sy_c_whitespace.c: New file.
12347         * lib/unictype/sy_java_ident.c: New file.
12348         * lib/unictype/sy_java_whitespace.c: New file.
12349
12350         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
12351         Unicode 5.0.0.
12352         * lib/unictype/blocks.h: Likewise.
12353         * lib/unictype/categ_C.h: Likewise.
12354         * lib/unictype/categ_Cc.h: Likewise.
12355         * lib/unictype/categ_Cf.h: Likewise.
12356         * lib/unictype/categ_Cn.h: Likewise.
12357         * lib/unictype/categ_Co.h: Likewise.
12358         * lib/unictype/categ_Cs.h: Likewise.
12359         * lib/unictype/categ_L.h: Likewise.
12360         * lib/unictype/categ_Ll.h: Likewise.
12361         * lib/unictype/categ_Lm.h: Likewise.
12362         * lib/unictype/categ_Lo.h: Likewise.
12363         * lib/unictype/categ_Lt.h: Likewise.
12364         * lib/unictype/categ_Lu.h: Likewise.
12365         * lib/unictype/categ_M.h: Likewise.
12366         * lib/unictype/categ_Mc.h: Likewise.
12367         * lib/unictype/categ_Me.h: Likewise.
12368         * lib/unictype/categ_Mn.h: Likewise.
12369         * lib/unictype/categ_N.h: Likewise.
12370         * lib/unictype/categ_Nd.h: Likewise.
12371         * lib/unictype/categ_Nl.h: Likewise.
12372         * lib/unictype/categ_No.h: Likewise.
12373         * lib/unictype/categ_P.h: Likewise.
12374         * lib/unictype/categ_Pc.h: Likewise.
12375         * lib/unictype/categ_Pd.h: Likewise.
12376         * lib/unictype/categ_Pe.h: Likewise.
12377         * lib/unictype/categ_Pf.h: Likewise.
12378         * lib/unictype/categ_Pi.h: Likewise.
12379         * lib/unictype/categ_Po.h: Likewise.
12380         * lib/unictype/categ_Ps.h: Likewise.
12381         * lib/unictype/categ_S.h: Likewise.
12382         * lib/unictype/categ_Sc.h: Likewise.
12383         * lib/unictype/categ_Sk.h: Likewise.
12384         * lib/unictype/categ_Sm.h: Likewise.
12385         * lib/unictype/categ_So.h: Likewise.
12386         * lib/unictype/categ_Z.h: Likewise.
12387         * lib/unictype/categ_Zl.h: Likewise.
12388         * lib/unictype/categ_Zp.h: Likewise.
12389         * lib/unictype/categ_Zs.h: Likewise.
12390         * lib/unictype/categ_of.h: Likewise.
12391         * lib/unictype/combining.h: Likewise.
12392         * lib/unictype/ctype_alnum.h: Likewise.
12393         * lib/unictype/ctype_alpha.h: Likewise.
12394         * lib/unictype/ctype_blank.h: Likewise.
12395         * lib/unictype/ctype_cntrl.h: Likewise.
12396         * lib/unictype/ctype_digit.h: Likewise.
12397         * lib/unictype/ctype_graph.h: Likewise.
12398         * lib/unictype/ctype_lower.h: Likewise.
12399         * lib/unictype/ctype_print.h: Likewise.
12400         * lib/unictype/ctype_punct.h: Likewise.
12401         * lib/unictype/ctype_space.h: Likewise.
12402         * lib/unictype/ctype_upper.h: Likewise.
12403         * lib/unictype/ctype_xdigit.h: Likewise.
12404         * lib/unictype/decdigit.h: Likewise.
12405         * lib/unictype/digit.h: Likewise.
12406         * lib/unictype/mirror.h: Likewise.
12407         * lib/unictype/numeric.h: Likewise.
12408         * lib/unictype/pr_alphabetic.h: Likewise.
12409         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
12410         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
12411         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
12412         * lib/unictype/pr_bidi_block_separator.h: Likewise.
12413         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
12414         * lib/unictype/pr_bidi_common_separator.h: Likewise.
12415         * lib/unictype/pr_bidi_control.h: Likewise.
12416         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
12417         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
12418         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
12419         * lib/unictype/pr_bidi_european_digit.h: Likewise.
12420         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
12421         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
12422         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
12423         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
12424         * lib/unictype/pr_bidi_pdf.h: Likewise.
12425         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
12426         * lib/unictype/pr_bidi_whitespace.h: Likewise.
12427         * lib/unictype/pr_combining.h: Likewise.
12428         * lib/unictype/pr_composite.h: Likewise.
12429         * lib/unictype/pr_currency_symbol.h: Likewise.
12430         * lib/unictype/pr_dash.h: Likewise.
12431         * lib/unictype/pr_decimal_digit.h: Likewise.
12432         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
12433         * lib/unictype/pr_deprecated.h: Likewise.
12434         * lib/unictype/pr_diacritic.h: Likewise.
12435         * lib/unictype/pr_extender.h: Likewise.
12436         * lib/unictype/pr_format_control.h: Likewise.
12437         * lib/unictype/pr_grapheme_base.h: Likewise.
12438         * lib/unictype/pr_grapheme_extend.h: Likewise.
12439         * lib/unictype/pr_grapheme_link.h: Likewise.
12440         * lib/unictype/pr_hex_digit.h: Likewise.
12441         * lib/unictype/pr_hyphen.h: Likewise.
12442         * lib/unictype/pr_id_continue.h: Likewise.
12443         * lib/unictype/pr_id_start.h: Likewise.
12444         * lib/unictype/pr_ideographic.h: Likewise.
12445         * lib/unictype/pr_ids_binary_operator.h: Likewise.
12446         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
12447         * lib/unictype/pr_ignorable_control.h: Likewise.
12448         * lib/unictype/pr_iso_control.h: Likewise.
12449         * lib/unictype/pr_join_control.h: Likewise.
12450         * lib/unictype/pr_left_of_pair.h: Likewise.
12451         * lib/unictype/pr_line_separator.h: Likewise.
12452         * lib/unictype/pr_logical_order_exception.h: Likewise.
12453         * lib/unictype/pr_lowercase.h: Likewise.
12454         * lib/unictype/pr_math.h: Likewise.
12455         * lib/unictype/pr_non_break.h: Likewise.
12456         * lib/unictype/pr_not_a_character.h: Likewise.
12457         * lib/unictype/pr_numeric.h: Likewise.
12458         * lib/unictype/pr_other_alphabetic.h: Likewise.
12459         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
12460         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
12461         * lib/unictype/pr_other_id_continue.h: Likewise.
12462         * lib/unictype/pr_other_id_start.h: Likewise.
12463         * lib/unictype/pr_other_lowercase.h: Likewise.
12464         * lib/unictype/pr_other_math.h: Likewise.
12465         * lib/unictype/pr_other_uppercase.h: Likewise.
12466         * lib/unictype/pr_paired_punctuation.h: Likewise.
12467         * lib/unictype/pr_paragraph_separator.h: Likewise.
12468         * lib/unictype/pr_pattern_syntax.h: Likewise.
12469         * lib/unictype/pr_pattern_white_space.h: Likewise.
12470         * lib/unictype/pr_private_use.h: Likewise.
12471         * lib/unictype/pr_punctuation.h: Likewise.
12472         * lib/unictype/pr_quotation_mark.h: Likewise.
12473         * lib/unictype/pr_radical.h: Likewise.
12474         * lib/unictype/pr_sentence_terminal.h: Likewise.
12475         * lib/unictype/pr_soft_dotted.h: Likewise.
12476         * lib/unictype/pr_space.h: Likewise.
12477         * lib/unictype/pr_terminal_punctuation.h: Likewise.
12478         * lib/unictype/pr_titlecase.h: Likewise.
12479         * lib/unictype/pr_unassigned_code_value.h: Likewise.
12480         * lib/unictype/pr_unified_ideograph.h: Likewise.
12481         * lib/unictype/pr_uppercase.h: Likewise.
12482         * lib/unictype/pr_variation_selector.h: Likewise.
12483         * lib/unictype/pr_white_space.h: Likewise.
12484         * lib/unictype/pr_xid_continue.h: Likewise.
12485         * lib/unictype/pr_xid_start.h: Likewise.
12486         * lib/unictype/pr_zero_width.h: Likewise.
12487         * lib/unictype/scripts.h: Likewise.
12488         * lib/unictype/scripts_byname.gperf: Likewise.
12489         * lib/unictype/sy_c_ident.h: Likewise.
12490         * lib/unictype/sy_c_whitespace.h: Likewise.
12491         * lib/unictype/sy_java_ident.h: Likewise.
12492         * lib/unictype/sy_java_whitespace.h: Likewise.
12493
12494         * lib/unictype/Makefile: New file.
12495         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
12496         glibc.
12497         * lib/unictype/3level.h: New file, copied from glibc.
12498         * lib/unictype/3levelbit.h: New file.
12499
12500 2007-11-11  Bruno Haible  <bruno@clisp.org>
12501
12502         * modules/gperf: New file.
12503         * modules/iconv_open (Depends-on): Add it.
12504         (Makefile.am): Remove the GPERF definition.
12505
12506 2007-11-11  Bruno Haible  <bruno@clisp.org>
12507
12508         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
12509         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
12510
12511 2007-11-11  Bruno Haible  <bruno@clisp.org>
12512
12513         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
12514         (usage): Remove function.
12515
12516 2007-11-11  Bruno Haible  <bruno@clisp.org>
12517
12518         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
12519         gl_FUNC_CEILF_LIBS.
12520         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
12521         gl_FUNC_CEIL_LIBS.
12522         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
12523         gl_FUNC_CEILL_LIBS.
12524         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
12525         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
12526         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
12527
12528 2007-11-11  Bruno Haible  <bruno@clisp.org>
12529
12530         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
12531         roundf were declared but do not exist on functions.
12532         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
12533         roundl were declared but do not exist on functions.
12534         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
12535         HAVE_FLOORL_AND_CEILL, respectively.
12536         Needed for Sun C on Solaris 10.
12537
12538 2007-11-11  Bruno Haible  <bruno@clisp.org>
12539
12540         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
12541         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
12542         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
12543         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
12544         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
12545         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
12546         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
12547         HAVE_DECL_ROUNDF.
12548         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
12549         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
12550         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
12551         of HAVE_DECL_ROUND*.
12552         * modules/math (Makefile.am): Update.
12553
12554 2007-11-10  Bruno Haible  <bruno@clisp.org>
12555
12556         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
12557         ptrdiff_t as m4/intl.m4.
12558
12559 2007-11-10  Jim Meyering  <meyering@redhat.com>
12560
12561         Avoid link failure for the argmatch test.
12562         * tests/test-argmatch.c (usage): Define function to avoid a link
12563         failure: argmatch_die requires a usage function.
12564
12565 2007-11-09  Bruno Haible  <bruno@clisp.org>
12566
12567         * doc/functions/snprintf.texi: Mention BeOS deficiency.
12568         * doc/functions/vsnprintf.texi: Likewise.
12569         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
12570         with a size argument < 2.
12571
12572 2007-11-09  Bruno Haible  <bruno@clisp.org>
12573
12574         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
12575         buffer. Fixes an inefficiency introduced on 2007-11-03.
12576
12577 2007-11-09  Bruno Haible  <bruno@clisp.org>
12578
12579         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
12580         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
12581
12582 2007-11-08  Jim Meyering  <meyering@redhat.com>
12583
12584         Change cache variable name prefix "jm_" to "gl_" everywhere.
12585         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
12586         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
12587         * m4/uptime.m4: s/gl_/jm_/
12588
12589 2007-11-07  Bruno Haible  <bruno@clisp.org>
12590
12591         Update to GNU gettext 0.17.
12592         * m4/intl.m4: Update to GNU gettext 0.17.
12593         * m4/po.m4: Likewise.
12594         * modules/gettext (Files): Remove m4/ulonglong.m4.
12595         (configure.ac): Require gettext infrastructure from version 0.17.
12596
12597 2007-11-06  Bruno Haible  <bruno@clisp.org>
12598
12599         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
12600         symbolic values are not defined in a public header.
12601         * lib/freadable.c (freadable) [QNX]: Likewise.
12602         * lib/freadahead.c (freadahead) [QNX]: Likewise.
12603         * lib/freading.c (freading) [QNX]: Likewise.
12604         * lib/fseterr.c (fseterr) [QNX]: Likewise.
12605         * lib/fwritable.c (fwritable) [QNX]: Likewise.
12606         * lib/fwriting.c (fwriting) [QNX]: Likewise.
12607         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
12608         Reported by Alain Magloire.
12609
12610         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
12611
12612 2007-11-05  Bruno Haible  <bruno@clisp.org>
12613
12614         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
12615         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
12616         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
12617         Reported by Eric Blake.
12618
12619 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12620             Bruno Haible  <bruno@clisp.org>
12621
12622         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
12623         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
12624         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
12625         (malloc): Undefine also before including <stdlib.h>.
12626         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
12627         Needed on OSF/1 4.0.
12628
12629 2007-11-05  Jim Meyering  <meyering@redhat.com>
12630
12631         git-version-gen: sync from coreutils.
12632         * build-aux/git-version-gen: Add comments.
12633         Change the first '-' to '.' in the snapshot version string,
12634         e.g., 6.9-377-08144 -> 6.9.377-08144
12635         Remove first parameter.
12636         Don't declare a version "-dirty" merely because a time
12637         stamp has changed.
12638
12639 2007-11-04  Bruno Haible  <bruno@clisp.org>
12640
12641         * lib/lock.h: Protect all macro definitions containing an 'if'
12642         statement through a "do { ... } while (0)".
12643         * lib/tls.h: Likewise.
12644
12645 2007-11-04  Bruno Haible  <bruno@clisp.org>
12646
12647         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
12648
12649 2007-11-04  Bruno Haible  <bruno@clisp.org>
12650
12651         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
12652         * modules/fprintf-posix (Depends-on): Add nocrash.
12653         * modules/snprintf-posix (Depends-on): Likewise.
12654         * modules/sprintf-posix (Depends-on): Likewise.
12655         * modules/vasnprintf-posix (Depends-on): Likewise.
12656         * modules/vasprintf-posix (Depends-on): Likewise.
12657         * modules/vfprintf-posix (Depends-on): Likewise.
12658         * modules/vsnprintf-posix (Depends-on): Likewise.
12659         * modules/vsprintf-posix (Depends-on): Likewise.
12660         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
12661         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
12662         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
12663         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
12664         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
12665         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
12666         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
12667
12668 2007-11-04  Bruno Haible  <bruno@clisp.org>
12669
12670         * modules/nocrash: New file.
12671         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
12672         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
12673
12674 2007-11-04  Bruno Haible  <bruno@clisp.org>
12675
12676         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
12677         precision handling.
12678         * tests/test-vasprintf-posix.c (test_function): Likewise.
12679         * tests/test-snprintf-posix.h (test_function): Likewise.
12680         * tests/test-sprintf-posix.h (test_function): Likewise.
12681
12682         Fix *printf behaviour for large precisions on mingw and BeOS.
12683         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
12684         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
12685         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
12686         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
12687         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12688         gl_PRINTF_PRECISION and test its result. Invoke
12689         gl_PREREQ_VASNPRINTF_PRECISION.
12690         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12691         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12692         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12693         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12694         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12695         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12696         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12697         * doc/functions/fprintf.texi: Update.
12698         * doc/functions/printf.texi: Update.
12699         * doc/functions/snprintf.texi: Update.
12700         * doc/functions/sprintf.texi: Update.
12701         * doc/functions/vfprintf.texi: Update.
12702         * doc/functions/vprintf.texi: Update.
12703         * doc/functions/vsnprintf.texi: Update.
12704         * doc/functions/vsprintf.texi: Update.
12705
12706 2007-11-04  Bruno Haible  <bruno@clisp.org>
12707
12708         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
12709
12710 2007-11-04  Bruno Haible  <bruno@clisp.org>
12711
12712         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
12713         Reported by Sylvain Beucler <beuc@gnu.org>.
12714
12715 2007-11-03  Bruno Haible  <bruno@clisp.org>
12716
12717         * tests/test-fprintf-posix2.sh: New file.
12718         * tests/test-fprintf-posix2.c: New file.
12719         * modules/fprintf-posix-tests (Files): Add them.
12720         (TESTS): Add test-fprintf-posix2.sh.
12721         (configure.ac): Check for getrlimit and setrlimit.
12722         (check_PROGRAMS): Add test-fprintf-posix2.
12723
12724         * tests/test-printf-posix2.sh: New file.
12725         * tests/test-printf-posix2.c: New file.
12726         * modules/printf-posix-tests (Files): Add them.
12727         (TESTS): Add test-printf-posix2.sh.
12728         (configure.ac): Check for getrlimit and setrlimit.
12729         (check_PROGRAMS): Add test-printf-posix2.
12730
12731         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
12732         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
12733         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
12734         (decode_double): New function, copied from decode_long_double.
12735         (scale10_round_decimal_decoded): New function, extracted from
12736         scale10_round_decimal_long_double.
12737         (scale10_round_decimal_long_double): Use it.
12738         (scale10_round_decimal_double): New function.
12739         (floorlog10): New function.
12740         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
12741         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
12742         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
12743         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12744         gl_PRINTF_ENOMEM and test its result. Invoke
12745         gl_PREREQ_VASNPRINTF_ENOMEM.
12746         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12747         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
12748         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
12749         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
12750         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
12751         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12752         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
12753         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
12754         * modules/snprintf-posix (Depends-on): Likewise.
12755         * modules/sprintf-posix (Depends-on): Likewise.
12756         * modules/vasnprintf-posix (Depends-on): Likewise.
12757         * modules/vasprintf-posix (Depends-on): Likewise.
12758         * modules/vfprintf-posix (Depends-on): Likewise.
12759         * modules/vsnprintf-posix (Depends-on): Likewise.
12760         * modules/vsprintf-posix (Depends-on): Likewise.
12761         * doc/functions/fprintf.texi: Update.
12762         * doc/functions/printf.texi: Update.
12763         * doc/functions/snprintf.texi: Update.
12764         * doc/functions/sprintf.texi: Update.
12765         * doc/functions/vfprintf.texi: Update.
12766         * doc/functions/vprintf.texi: Update.
12767         * doc/functions/vsnprintf.texi: Update.
12768         * doc/functions/vsprintf.texi: Update.
12769
12770 2007-11-03  Bruno Haible  <bruno@clisp.org>
12771
12772         * modules/frexp-nolibm-tests: New file.
12773
12774         * modules/frexp-nolibm: New file.
12775         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
12776
12777 2007-11-03  Bruno Haible  <bruno@clisp.org>
12778
12779         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
12780         value is C99 compliant.
12781         Needed for OSF/1 5.1.
12782
12783 2007-11-03  Bruno Haible  <bruno@clisp.org>
12784
12785         Fix out-of-memory handling of vasnprintf.
12786         * lib/printf-parse.c: Include <errno.h>.
12787         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
12788         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
12789         is already set.
12790
12791 2007-11-02  Eric Blake  <ebb9@byu.net>
12792
12793         Fix tests on cygwin.
12794         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
12795
12796 2007-11-01  Bruno Haible  <bruno@clisp.org>
12797
12798         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
12799         warning.
12800         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
12801         needed for POSIX compatibility.
12802
12803 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12804
12805         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
12806         for compatibility with GNU.
12807
12808 2007-11-01  Bruno Haible  <bruno@clisp.org>
12809
12810         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
12811         (putenv): Renamed from rpl_putenv. Change argument type from
12812         'const char *' to 'char *'.
12813         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
12814         of defining putenv in config.h, just set REPLACE_PUTENV.
12815         * modules/putenv (Depends-on): Add stdlib.
12816         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
12817         (Include): Use <stdlib.h>.
12818         * lib/stdlib.in.h (putenv): New declaration.
12819         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
12820         REPLACE_PUTENV.
12821         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
12822         REPLACE_PUTENV.
12823         Needed for MacOS X 10.5.0.
12824         Reported by Peter O'Gorman <peter@pogma.com>.
12825
12826 2007-11-01  Jim Meyering  <meyering@redhat.com>
12827
12828         Treat an empty date string exactly like "0".
12829         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
12830         if the remaining date string (to be parsed) is empty, use "0".
12831         Reported by Mischa Molhoek and discussed in this thread:
12832         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
12833
12834 2007-10-31  Bruno Haible  <bruno@clisp.org>
12835
12836         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
12837         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
12838         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
12839         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
12840         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
12841         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
12842
12843 2007-10-31  Bruno Haible  <bruno@clisp.org>
12844
12845         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
12846         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
12847         (AC_TYPE_LONG_LONG_INT): Use it.
12848         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
12849         it as well.
12850         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
12851         to m4/longlong.m4.
12852         * modules/stdint (Files): Remove m4/ulonglong.m4.
12853         * modules/strtoull (Files): Use m4/longlong.m4 instead of
12854         m4/ulonglong.m4.
12855         * modules/strtoumax (Files): Likewise.
12856
12857 2007-10-30  Bruno Haible  <bruno@clisp.org>
12858
12859         * modules/xvasprintf-posix: New file.
12860         Suggested by Eric Blake.
12861
12862 2007-10-30  Bruno Haible  <bruno@clisp.org>
12863
12864         * modules/xprintf-posix-tests: New file.
12865         * tests/test-xprintf-posix.sh: New file.
12866         * tests/test-xprintf-posix.c: New file.
12867         * tests/test-xfprintf-posix.c: New file.
12868
12869         * modules/xprintf-posix: New file.
12870
12871 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12872
12873         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
12874         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
12875         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
12876
12877 2007-10-29  Bruno Haible  <bruno@clisp.org>
12878
12879         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
12880         contain the special marker '_cv_'.
12881         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
12882         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
12883         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
12884         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
12885         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
12886         Reported by Ralf Wildenhues.
12887
12888 2007-10-29  Bruno Haible  <bruno@clisp.org>
12889
12890         * gnulib-tool (func_import): When --lgpl is not specified, set
12891         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
12892         GPLv3.
12893         Reported by Simon Josefsson.
12894
12895 2007-10-28  Bruno Haible  <bruno@clisp.org>
12896
12897         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
12898         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
12899         HAVE_DECL_ISFINITE.
12900         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
12901         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
12902         HAVE_DECL_ISFINITE.
12903
12904 2007-10-28  Bruno Haible  <bruno@clisp.org>
12905
12906         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
12907         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
12908
12909 2007-10-28  Bruno Haible  <bruno@clisp.org>
12910
12911         Fix link errors with Sun C 5.0 on Solaris 10.
12912         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
12913         function is declared but not present in the compiler's libm.
12914         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
12915         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
12916         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
12917         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
12918         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
12919         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
12920         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
12921         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
12922         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
12923         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
12924         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
12925         HAVE_DECL_FLOORL.
12926
12927 2007-10-28  Bruno Haible  <bruno@clisp.org>
12928
12929         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
12930         gl_FUNC_FLOORL. Cache the result.
12931         (gl_FUNC_FLOORL): Use it.
12932         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
12933         gl_FUNC_CEILL. Cache the result.
12934         (gl_FUNC_CEILL): Use it.
12935
12936         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
12937         gl_FUNC_FLOOR. Cache the result.
12938         (gl_FUNC_FLOOR): Use it.
12939         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
12940         gl_FUNC_CEIL. Cache the result.
12941         (gl_FUNC_CEIL): Use it.
12942
12943         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
12944         gl_FUNC_FLOORF. Cache the result.
12945         (gl_FUNC_FLOORF): Use it.
12946         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
12947         gl_FUNC_CEILF. Cache the result.
12948         (gl_FUNC_CEILF): Use it.
12949
12950 2007-10-28  Bruno Haible  <bruno@clisp.org>
12951
12952         * gnulib-tool: Allow specifying the LGPL version number through
12953         --lgpl=2 or --lgpl=3.
12954         (func_usage): Document --lgpl with argument.
12955         Handle --lgpl=... arguments.
12956         (func_import): Recognize also gl_LGPL calls with an argument. When
12957         --lgpl=2 is used and the module's license is just LGPL, report an
12958         error. Set sed_transform_lib_file according to the lgpl variable. In
12959         the generated files, use --lgpl or gl_LGPL invocations with argument,
12960         if necessary.
12961         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
12962         an LGPv2+ license.
12963         * doc/gnulib-tool.texi (Modified imports): Update explanation of
12964         gl_LGPL macro.
12965
12966 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12967             Bruno Haible  <bruno@clisp.org>
12968
12969         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
12970         (u16_uctomb_aux): Likewise.
12971         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
12972         !HAVE_INLINE.
12973         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
12974
12975 2007-10-28  Bruno Haible  <bruno@clisp.org>
12976
12977         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
12978         Invoke AM_GETTEXT_OPTION if it exists.
12979         * modules/vasprintf: Likewise.
12980         * modules/verror: Likewise.
12981         * modules/xprintf: Likewise.
12982         * modules/xvasprintf: Likewise.
12983
12984 2007-10-27  Ben Pfaff  <blp@gnu.org>
12985
12986         * lib/math.in.h: Define isfinite macro and prototypes for
12987         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
12988         implementations.
12989         * m4/math_h.m4: New substitutions for isfinite module.
12990         * lib/isfinite.c: New file.
12991         * m4/isfinite.m4: New file.
12992         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
12993         * modules/isfinite: New file.
12994         * modules/isfinite-tests: New file.
12995         * tests/tests-isfinite.c: New file.
12996         * doc/functions/isfinite.texi: Mention isfinite module.
12997         * MODULES.html.sh: Mention new module.
12998
12999 2007-10-27  Ben Pfaff  <blp@gnu.org>
13000
13001         Ralf Wildenhues reported that Tru64 4.0D declares the round
13002         functions but does not have definitions.
13003         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
13004         cannot be found in any library, set the output variable to
13005         "missing" instead of "".
13006         * m4/round.m4: Also use our substitute if we cannot find round in
13007         any library, even if it is declared.
13008         * m4/roundf.m4: Likewise for roundf.
13009         * m4/roundl.m4: Likewise for roundl.
13010         * lib/math.in.h: Undefine roundf, round, roundl before defining
13011         their replacements, to allow for hypothetical systems where these
13012         may be defined as macros but not available in libraries.
13013
13014 2007-10-27  Bruno Haible  <bruno@clisp.org>
13015
13016         * doc/gnulib.texi: Invoke @firstparagraphindent.
13017         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
13018         changes in gnulib.
13019         (Source changes): New section.
13020
13021 2007-10-26  Bruno Haible  <bruno@clisp.org>
13022
13023         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
13024         borrowed from autoconf.
13025
13026 2007-10-26  Bruno Haible  <bruno@clisp.org>
13027
13028         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
13029         strerror returned the empty string. Needed on HP-UX 11.00.
13030
13031 2007-10-24  Micah Cowan  <micah@cowan.name>
13032
13033         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
13034         * build-aux/bootstrap: Remove support for now-unnecessary option,
13035         --cvs-user, and envvars CVS_USER, CVS_RSH.
13036
13037 2007-10-24  Jim Meyering  <meyering@redhat.com>
13038
13039         Avoid diagnostics from sha1sum when there is no cached checksum.
13040         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
13041         if the po.s1 file hasn't been created yet.
13042
13043         * build-aux/bootstrap: Sync from coreutils:
13044         2007-10-24  Jim Meyering  <meyering@redhat.com>
13045         Get gnulib from the git repository, not from an obsolete cvs one.
13046         * build-aux/bootstrap: Suggestion from Micah Cowan.
13047         2007-10-04  Jim Meyering  <jim@meyering.net>
13048         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
13049         (update_po_files): Work also when there are no .po files in po/.
13050
13051 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13052
13053         * README: Append ".git" to git and cg examples.
13054         Problem reported by Benoit Sigoure.
13055
13056 2007-10-23  Micah Cowan  <micah@cowan.name>
13057
13058         * users.txt: Add wget.
13059
13060 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13061
13062         Fix linking of some unistdio tests on FreeBSD.
13063         * modules/unistdio/u16-vsnprintf-tests
13064         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
13065         * modules/unistdio/u16-vsprintf-tests
13066         (test_u16_vsnprintf1_LDADD): Likewise.
13067         * modules/unistdio/u32-vsnprintf-tests
13068         (test_u32_vsnprintf1_LDADD): Likewise.
13069         * modules/unistdio/u32-vsprintf-tests
13070         (test_u32_vsprintf1_LDADD): Likewise.
13071         * modules/unistdio/u8-vsnprintf-tests
13072         (test_u8_vsnprintf1_LDADD): Likewise.
13073         * modules/unistdio/u8-vsprintf-tests
13074         (test_u8_vsprintf1_LDADD): Likewise.
13075         * modules/unistdio/ulc-vsnprintf-tests
13076         (test_ulc_vsnprintf1_LDADD): Likewise.
13077         * modules/unistdio/ulc-vsprintf-tests
13078         (test_ulc_vsprintf1_LDADD): Likewise.
13079
13080         Fix linking of some uniconv tests on FreeBSD.
13081         * modules/uniconv/u16-conv-from-enc-tests
13082         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
13083         * modules/uniconv/u16-conv-to-enc-tests
13084         (test_u16_conv_to_enc_LDADD): Likewise.
13085         * modules/uniconv/u16-strconv-from-enc-tests
13086         (test_u16_strconv_from_enc_LDADD): Likewise.
13087         * modules/uniconv/u16-strconv-to-enc-tests
13088         (test_u16_strconv_to_enc_LDADD): Likewise.
13089         * modules/uniconv/u32-conv-from-enc-tests
13090         (test_u32_conv_from_enc_LDADD): Likewise.
13091         * modules/uniconv/u32-conv-to-enc-tests
13092         (test_u32_conv_to_enc_LDADD): Likewise.
13093         * modules/uniconv/u32-strconv-from-enc-tests
13094         (test_u32_strconv_from_enc_LDADD): Likewise.
13095         * modules/uniconv/u32-strconv-to-enc-tests
13096         (test_u32_strconv_to_enc_LDADD): Likewise.
13097         * modules/uniconv/u8-conv-from-enc-tests
13098         (test_u8_conv_from_enc_LDADD): Likewise.
13099         * modules/uniconv/u8-conv-to-enc-tests
13100         (test_u8_conv_to_enc_LDADD): Likewise.
13101         * modules/uniconv/u8-strconv-from-enc-tests
13102         (test_u8_strconv_from_enc_LDADD): Likewise.
13103         * modules/uniconv/u8-strconv-to-enc-tests
13104         (test_u8_strconv_to_enc_LDADD): Likewise.
13105
13106 2007-10-22  Bruno Haible  <bruno@clisp.org>
13107
13108         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
13109         size.
13110
13111 2007-10-22  Eric Blake  <ebb9@byu.net>
13112
13113         Tweak x*printf documentation.
13114         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
13115         variable name and comments.
13116         Suggested by Bruno Haible.
13117
13118 2007-10-22  Bruno Haible  <bruno@clisp.org>
13119
13120         * lib/acl.c (copy_acl): Fix file name in comment.
13121
13122 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
13123
13124         Fix Tru64 problem with stdbool.h.
13125         * lib/stdbool.in.h (false, true):
13126         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
13127         Don't declare as an enum in this situation; it runs afoul of Tru64.
13128         Problem reported by Steven M. Schweda in
13129         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
13130
13131 2007-10-22  Eric Blake  <ebb9@byu.net>
13132
13133         Also wrap vf?printf.
13134         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
13135         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
13136         (xvprintf, xvfprintf): New functions.
13137
13138 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13139
13140         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
13141         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
13142
13143         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
13144         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
13145
13146 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
13147
13148         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
13149         by Bruno Haible.
13150
13151 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13152
13153         * lib/getloadavg.c
13154         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
13155         Undef `sys' after including sys/table.h, for Tru64 4.0D.
13156
13157         * tests/test-i-ring.c: Work for C89.
13158
13159 2007-10-22  Bruno Haible  <bruno@clisp.org>
13160
13161         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
13162         -1u, in preprocessor expression, so that we don't test for the bug
13163         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
13164         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
13165
13166 2007-10-22  Eric Blake  <ebb9@byu.net>
13167
13168         * tests/test-yesno.sh: Silence stderr during test.
13169
13170 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13171
13172         * modules/crypto/gc-camellia: New file.
13173
13174         * m4/gc-camellia.m4: New file.
13175
13176         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
13177
13178         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
13179
13180 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13181
13182         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
13183         --help to stdout.  Reported by sms@antinode.org (Steven
13184         M. Schweda).
13185
13186 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13187
13188         * users.txt: Fix link to libksba.
13189
13190 2007-10-21  Ben Pfaff  <blp@gnu.org>
13191
13192         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
13193         round.c roundf implementation that depends on floorf and ceilf to
13194         be tested unconditionally.
13195
13196 2007-10-21  Ben Pfaff  <blp@gnu.org>
13197
13198         * m4/check-libm-func.m4: Removed.
13199         * m4/check-math-lib.m4: New file.
13200         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
13201         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
13202         definition and lack of AC_LIBOBJ([roundf]).
13203         * m4/roundl.m4: Ditto, and similarly for roundl.
13204         * modules/round: Reference new m4 file.
13205         * modules/roundf: Ditto.
13206         * modules/roundl: Ditto.
13207         * tests/test-round2.c (main): Use ROUND instead of round.
13208         Bug report from Bruno Haible.
13209
13210 2007-10-21  Bruno Haible  <bruno@clisp.org>
13211
13212         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
13213         context.
13214
13215 2007-10-21  Bruno Haible  <bruno@clisp.org>
13216
13217         * tests/test-wcwidth.c (main): Allow negative result for some control
13218         characters.
13219
13220         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
13221         Needed on OSF/1 5.1.
13222
13223 2007-10-21  Bruno Haible  <bruno@clisp.org>
13224
13225         * tests/test-floorf1.c: Include isnanf.h.
13226         (main): Use isnanf() instead of isnan().
13227         * tests/test-ceilf1.c: Include isnanf.h.
13228         (main): Use isnanf() instead of isnan().
13229         * tests/test-truncf1.c: Include isnanf.h.
13230         (main): Use isnanf() instead of isnan().
13231         * tests/test-roundf1.c: Include isnanf.h.
13232         (main): Use isnanf() instead of isnan().
13233
13234 2007-10-21  Eric Blake  <ebb9@byu.net>
13235
13236         * users.txt: Update URL for m4.
13237
13238 2007-10-21  Bruno Haible  <bruno@clisp.org>
13239
13240         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
13241
13242 2007-10-21  Bruno Haible  <bruno@clisp.org>
13243
13244         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
13245         Git's management files if the CVS files are not present.
13246
13247 2007-10-20  Bruno Haible  <bruno@clisp.org>
13248
13249         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
13250         gcc-3.4.x.
13251
13252 2007-10-20  Ben Pfaff  <blp@gnu.org>
13253
13254         * lib/math.in.h: Declare round, roundf, roundl if we are providing
13255         implementations.
13256         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
13257         * lib/round.c: New file.
13258         * lib/roundf.c: New file.
13259         * lib/roundl.c: New file.
13260         * m4/round.m4: New file.
13261         * m4/roundf.m4: New file.
13262         * m4/roundl.m4: New file.
13263         * m4/check-libm-func-m4: New file.
13264         * modules/math: Replace round, roundf, roundl related @VARS@ in
13265         math.in.h.
13266         * modules/round: New file.
13267         * modules/round-tests: New file.
13268         * modules/roundf: New file.
13269         * modules/roundf-tests: New file.
13270         * modules/roundl: New file.
13271         * modules/roundl-tests: New file.
13272         * tests/test-round1.c: New file.
13273         * tests/test-round2.c: New file.
13274         * tests/test-roundf1.c: New file.
13275         * tests/test-roundf2.c: New file.
13276         * tests/test-roundl.c: New file.
13277         * doc/functions/round.texi: Mention round module.
13278         * doc/functions/roundf.texi: Mention roundf module.
13279         * doc/functions/roundl.texi: Mention roundl module.
13280         * MODULES.html.sh: Mention new modules.
13281         Thanks to Bruno Haible for suggestions.
13282
13283 2007-10-20  Jim Meyering  <meyering@redhat.com>
13284
13285         * lib/xprintf.c: Include <config.h> unconditionally.
13286
13287         Change xprintf's license to GPL.
13288         * modules/xprintf (License): s/LGPL/GPL/, since this module
13289         depends on modules (exit and exitfail) which are GPL.
13290         Suggestion from Bruno Haible.
13291
13292         xprintf fixes.
13293         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
13294         Use a clearer diagnostic.
13295         Patch from Bruno Haible.
13296
13297 2007-10-20  Bruno Haible  <bruno@clisp.org>
13298
13299         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
13300         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
13301         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13302
13303 2007-10-20  Bruno Haible  <bruno@clisp.org>
13304
13305         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
13306         precision in the comparison result > x - 1 or similar.
13307         * tests/test-ceilf2.c (correct_result_p): Likewise.
13308         * tests/test-truncf2.c (correct_result_p): Likewise.
13309         * tests/test-trunc2.c (correct_result_p): Likewise.
13310         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13311
13312 2007-10-20  Bruno Haible  <bruno@clisp.org>
13313
13314         * modules/ceil: New file.
13315         * m4/ceil.m4: New file.
13316         * doc/functions/ceil.texi: Mention the 'ceil' module.
13317
13318 2007-10-20  Bruno Haible  <bruno@clisp.org>
13319
13320         * modules/floor: New file.
13321         * m4/floor.m4: New file.
13322         * doc/functions/floor.texi: Mention the 'floor' module.
13323
13324 2007-10-20  Bruno Haible  <bruno@clisp.org>
13325
13326         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
13327         of %a.
13328         * modules/floorf-tests (Depends-on): Likewise.
13329         * modules/truncf-tests (Depends-on): Likewise.
13330         * modules/trunc-tests (Depends-on): Likewise.
13331         Reported by Ben Pfaff.
13332
13333 2007-10-19  Jim Meyering  <meyering@redhat.com>
13334
13335         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
13336         Don't bother testing specific errno values.  Just test ferror.
13337
13338         New module: xprintf
13339         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
13340
13341 2007-10-19  Bruno Haible  <bruno@clisp.org>
13342
13343         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
13344         syntax.
13345         * modules/javaexec (Makefile.am): Likewise.
13346         * modules/relocatable-prog (Makefile.am): Likewise.
13347         Suggested by Jim Meyering.
13348
13349 2007-10-18  Bruno Haible  <bruno@clisp.org>
13350
13351         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
13352         Reported by Jim Meyering.
13353
13354 2007-10-18  Eric Blake  <ebb9@byu.net>
13355
13356         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
13357
13358 2007-10-18  Bruno Haible  <bruno@clisp.org>
13359
13360         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
13361         the format string into writable memory. Needed in Fortify conditions.
13362
13363 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
13364             Bruno Haible  <bruno@clisp.org>
13365
13366         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
13367         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
13368         * modules/trim (Depends-on): Add mbchar.
13369         (configure.ac): Add gl_FUNC_MBRTOWC.
13370         (Makefile.am): Augment lib_SOURCES.
13371
13372 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
13373
13374         Modify glob.c to use fstatat and dirfd, to simplify it.
13375         Suggested by Eric Blake.
13376         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
13377         Don't include <stdbool.h>; not used.
13378         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
13379         (link_exists_p): Simplify implementation, since we can now assume
13380         dirfd and fstatat.
13381         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
13382
13383 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13384
13385         * gnulib-tool (func_get_dependencies): Fix sed script to
13386         match only tests.
13387
13388 2007-10-17  Bruno Haible  <bruno@clisp.org>
13389
13390         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
13391         allow locale names without encoding suffix.
13392         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
13393         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
13394
13395 2007-10-16  Bruno Haible  <bruno@clisp.org>
13396
13397         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
13398         * lib/getgroups.c (getgroups): Likewise.
13399         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
13400
13401 2007-10-16  Bruno Haible  <bruno@clisp.org>
13402
13403         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
13404         * modules/malloc-posix (License): Likewise.
13405         * modules/realloc-posix (License): Likewise.
13406         * modules/calloc-posix (License): Likewise.
13407         * modules/intprops (License): Change from GPL to LGPL, with
13408         Paul Eggert's approval.
13409
13410 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
13411
13412         Merge glibc changes into lib/glob.c.
13413
13414         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
13415         2007-10-15 04:59:03 UTC.  Here are the changes:
13416
13417         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
13418
13419         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
13420
13421         * lib/glob.c: Add some branch prediction throughout.
13422
13423         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
13424
13425         [BZ #5103]
13426         * lib/glob.c (glob): Recognize patterns starting \/.
13427
13428         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
13429
13430         [BZ #3996]
13431         * lib/glob.c (attribute_hidden): Define if not defined.
13432         (glob): Unescape dirname, filename or username when needed and not
13433         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
13434         is NULL.  Handle unescaped [ in pattern without closing ].
13435         Don't pass GLOB_CHECK down to recursive glob for directories.
13436         (__glob_pattern_type): New function.
13437         (__glob_pattern_p): Implement using __glob_pattern_type.
13438         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
13439         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
13440         Remove unreachable code.
13441
13442         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
13443
13444         * lib/glob.c (glob_in_dir): Add some comments and asserts to
13445         explain why there are no leaks.
13446
13447         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
13448
13449         [BZ #3253]
13450         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
13451         time, rather allocate increasingly bigger arrays of pointers, if
13452         possible with alloca, if too large with malloc.
13453
13454 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
13455
13456         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
13457         Problem reported by H.Merijn Brand in
13458         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
13459         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
13460         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
13461
13462 2007-10-15  Bruno Haible  <bruno@clisp.org>
13463
13464         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
13465         with explicit rpl_ prefix.
13466         * lib/fopen.c (fopen): Likewise.
13467         * lib/freopen.c (freopen): Likewise.
13468         * lib/iconv.c (iconv): Likewise.
13469         * lib/iconv_close.c (iconv_close): Likewise.
13470
13471 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13472
13473         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
13474
13475 2007-10-15  Bruno Haible  <bruno@clisp.org>
13476
13477         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
13478         <stddef.h> instead of <stdlib.h> since we only need NULL.
13479         Reported by Ben Pfaff <blp@cs.stanford.edu>.
13480
13481 2007-10-15  Bruno Haible  <bruno@clisp.org>
13482
13483         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
13484         Replace paragraph talking about LIBOBJS.
13485         Reported by Colin Watson <cjwatson@debian.org>.
13486
13487 2007-10-15  Bruno Haible  <bruno@clisp.org>
13488
13489         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
13490         <stdlib.h> before using NULL.
13491
13492 2007-10-15  Simon Josefsson  <simon@josefsson.org>
13493
13494         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
13495         Reported by Albert Chin <china@thewrittenword.com>.
13496
13497 2007-10-14  Bruno Haible  <bruno@clisp.org>
13498
13499         * modules/iconv_open-utf-tests: New file.
13500         * tests/test-iconv-utf.c: New file.
13501
13502         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
13503         * modules/iconv_open-utf: New file.
13504         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
13505         (iconv, iconv_close): New declarations.
13506         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
13507         be defined.
13508         (iconv_open): Add special handling of conversion between UTF-8 and
13509         UTF-{16,32}{BE,LE}.
13510         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
13511         * lib/iconv_close.c: New file.
13512         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
13513         gl_FUNC_ICONV_OPEN.
13514         (gl_FUNC_ICONV_OPEN): Use it.
13515         (gl_FUNC_ICONV_OPEN_UTF): New macro.
13516         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
13517         and REPLACE_ICONV_UTF.
13518         * modules/iconv_open (Depends-on): Add c-strcase.
13519         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
13520         ICONV_CONST.
13521         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
13522
13523 2007-10-13  Albert Chin  <china@thewrittenword.com>
13524             Bruno Haible  <bruno@clisp.org>
13525
13526         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
13527         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
13528
13529 2007-10-13  Bruno Haible  <bruno@clisp.org>
13530
13531         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
13532         defined, use the ISO C99 inline semantics.
13533         * lib/argp.h (ARGP_EI): Likewise.
13534
13535 2007-10-13  Bruno Haible  <bruno@clisp.org>
13536
13537         Handle 'inline' change in gcc 4.3.0.
13538         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
13539         argp_fmtstream_write, argp_fmtstream_set_lmargin,
13540         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
13541         argp_fmtstream_point): Disable 'extern' declaration if the function
13542         definition is going to be provided inline.
13543         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
13544         semantics, not the ISO C99 inline semantics.
13545         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
13546         'extern' declaration if the function definition is going to be provided
13547         inline.
13548         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
13549         the GNU C inline semantics, not the ISO C99 inline semantics. With
13550         GCC 4.2, avoid a warning.
13551
13552 2007-10-13  Bruno Haible  <bruno@clisp.org>
13553
13554         * lib/freading.h (freading): Enable the use of __freading for
13555         glibc >= 2.7.
13556         * lib/freading.c (freading): Likewise.
13557
13558 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
13559
13560         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
13561         "warning: C99 inline functions are not supported; using GNU89".
13562
13563 2007-10-12  Bruno Haible  <bruno@clisp.org>
13564
13565         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
13566         of 2.
13567         * tests/test-ceilf2.c: New file.
13568         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
13569
13570         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
13571         * modules/ceilf-tests: Update.
13572
13573 2007-10-12  Bruno Haible  <bruno@clisp.org>
13574
13575         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
13576         of 2.
13577         * tests/test-floorf2.c: New file.
13578         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
13579
13580         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
13581         * modules/floorf-tests: Update.
13582
13583 2007-10-12  Bruno Haible  <bruno@clisp.org>
13584
13585         * tests/test-trunc2.c: New file.
13586         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
13587
13588         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
13589         * modules/trunc-tests: Update.
13590
13591 2007-10-12  Bruno Haible  <bruno@clisp.org>
13592
13593         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
13594         of 2.
13595         * tests/test-truncf2.c: New file.
13596         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
13597
13598         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
13599         * modules/truncf-tests: Update.
13600
13601 2007-10-11  Eric Blake  <ebb9@byu.net>
13602
13603         Don't claim strerror is broken on Interix.
13604         * doc/functions/strerror.texi (strerror): Known broken systems are
13605         now Solaris 8, and not Interix.
13606         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
13607         Interix on cross-compile.
13608         Reported by Martin Koeppe in
13609         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
13610
13611 2007-10-11  Bruno Haible  <bruno@clisp.org>
13612
13613         * modules/i-ring-tests: New file.
13614         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
13615         instead of assert.
13616
13617 2007-10-11  Bruno Haible  <bruno@clisp.org>
13618
13619         * modules/filenamecat-tests: New file.
13620         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
13621         * lib/filenamecat.c: Remove test code.
13622
13623 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
13624
13625         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
13626
13627         * lib/strerror.c: Include <string.h> always, to test interface,
13628         and to remove the need for the dummy.
13629         Include intprops.h to compute width instead of doing it ourselves
13630         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
13631         (strerror): Define it to return NULL if there's no system strerror.
13632         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
13633         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
13634         ancient pre-strerror Unix systems well any more.  Saying "unknown
13635         system error" is enough.
13636         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
13637         simpler strerror.c implementation.
13638         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
13639         Simplify the tests to reflect the simpler strerror implementation.
13640         * modules/strerror (Depends-on): Add intprops.
13641
13642 2007-10-09  Eric Blake  <ebb9@byu.net>
13643
13644         Silence test-fpending.
13645         * modules/fpending-tests (Files): Add wrapper script.
13646         * tests/test-fpending.sh: New file.
13647
13648 2007-10-09  Bruno Haible  <bruno@clisp.org>
13649
13650         * MODULES.html.sh (func_module): Don't create a hyperlink for
13651         function names like 'printf_frexp'.
13652         (Misc): Add crc, memxor.
13653         (Characteristics of floating types): New section.
13654         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
13655         isnanf-nolibm, signbit, trunc, truncf, truncl.
13656         (Enhancements for ISO C 99 functions): New subsection Input/output.
13657         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
13658         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
13659         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
13660         (Compatibility checks for POSIX:2001 functions): Add clock-time.
13661         (Enhancements for POSIX:2001 functions): Add chdir-long.
13662         (File system functions): Add areadlink, chdir-safer, read-file.
13663         Remove cycle-check.
13664         (File system as inode set): New section.
13665         (Date and time): Add gethrxtime.
13666         (Multithreading): Add openmp.
13667         (Internationalization functions): Add localename.
13668         (Unicode string functions): Add unistr/u*-mbsnlen.
13669         (Support for maintaining and releasing projects): Add git-version-gen.
13670         (Lone files): Remove directories.
13671
13672 2007-10-08  Ben Pfaff  <blp@gnu.org>
13673
13674         * lib/xmalloca.h: Fix typo in comment.
13675
13676 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13677
13678         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
13679         when avoiding problems with integer overflow.  Use a portable test
13680         instead.
13681
13682 2007-10-08  Simon Josefsson  <simon@josefsson.org>
13683
13684         * modules/dummy (License): Change to LGPLv2+.
13685         * modules/float (License): Likewise
13686         * modules/realloc (License): Likewise
13687         * modules/stdlib (License): Likewise
13688
13689 2007-10-07  Bruno Haible  <bruno@clisp.org>
13690
13691         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
13692         * floor.c (TWO_MANT_DIG): Likewise.
13693         * ceil.c (TWO_MANT_DIG): Likewise.
13694         Reported by Ben Pfaff.
13695
13696 2007-10-07  Bruno Haible  <bruno@clisp.org>
13697
13698         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
13699         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
13700         * lib/frexp.c (FUNC): Likewise.
13701         * lib/printf-frexp.h (printf_frexp): Likewise.
13702         * lib/printf-frexpl.h (printf_frexpl): Likewise.
13703         * lib/printf-frexp.c (FUNC): Likewise.
13704         Suggested by Jim Meyering.
13705
13706 2007-10-07  Jim Meyering  <meyering@redhat.com>
13707
13708         Make xnanosleep's integer overflow test more robust.
13709         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
13710         so that gcc-4.3.0 doesn't optimize away this test for overflow.
13711
13712 2007-10-07  Bruno Haible  <bruno@clisp.org>
13713
13714         * NEWS: Mention the license change.
13715
13716         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
13717         abbreviations in the modules files.
13718
13719         Change copyright notice from GPLv2+ to GPLv3+.
13720         * README: Change copyright notice.
13721         * MODULES.html.sh: Likewise.
13722         * build-aux/bootstrap.conf: Likewise.
13723         * build-aux/config.libpath: Likewise.
13724         * build-aux/csharpcomp.sh.in: Likewise.
13725         * build-aux/csharpexec.sh.in: Likewise.
13726         * build-aux/install-reloc: Likewise.
13727         * build-aux/javacomp.sh.in: Likewise.
13728         * build-aux/javaexec.sh.in: Likewise.
13729         * build-aux/ldd.sh.in: Likewise.
13730         * build-aux/reloc-ldflags: Likewise.
13731         * build-aux/relocatable.sh.in: Likewise.
13732         * build-aux/x-to-1.in: Likewise.
13733         * check-module: Likewise.
13734         * config/srclistvars.sh: Likewise.
13735         * gnulib-tool: Likewise.
13736         * lib/acl-internal.h: Likewise.
13737         * lib/acl.c: Likewise.
13738         * lib/acl.h: Likewise.
13739         * lib/acl_entries.c: Likewise.
13740         * lib/areadlink-with-size.c: Likewise.
13741         * lib/areadlink.c: Likewise.
13742         * lib/areadlink.h: Likewise.
13743         * lib/argmatch.c: Likewise.
13744         * lib/argmatch.h: Likewise.
13745         * lib/argp-ba.c: Likewise.
13746         * lib/argp-eexst.c: Likewise.
13747         * lib/argp-fmtstream.c: Likewise.
13748         * lib/argp-fmtstream.h: Likewise.
13749         * lib/argp-fs-xinl.c: Likewise.
13750         * lib/argp-help.c: Likewise.
13751         * lib/argp-namefrob.h: Likewise.
13752         * lib/argp-parse.c: Likewise.
13753         * lib/argp-pin.c: Likewise.
13754         * lib/argp-pv.c: Likewise.
13755         * lib/argp-pvh.c: Likewise.
13756         * lib/argp-xinl.c: Likewise.
13757         * lib/argp.h: Likewise.
13758         * lib/at-func.c: Likewise.
13759         * lib/atanl.c: Likewise.
13760         * lib/backupfile.c: Likewise.
13761         * lib/backupfile.h: Likewise.
13762         * lib/basename.c: Likewise.
13763         * lib/binary-io.h: Likewise.
13764         * lib/byteswap.in.h: Likewise.
13765         * lib/c-stack.c: Likewise.
13766         * lib/c-stack.h: Likewise.
13767         * lib/c-strcasestr.c: Likewise.
13768         * lib/c-strcasestr.h: Likewise.
13769         * lib/c-strstr.c: Likewise.
13770         * lib/c-strstr.h: Likewise.
13771         * lib/c-strtod.c: Likewise.
13772         * lib/calloc.c: Likewise.
13773         * lib/canon-host.c: Likewise.
13774         * lib/canon-host.h: Likewise.
13775         * lib/canonicalize-lgpl.c: Likewise.
13776         * lib/canonicalize.c: Likewise.
13777         * lib/canonicalize.h: Likewise.
13778         * lib/ceil.c: Likewise.
13779         * lib/ceilf.c: Likewise.
13780         * lib/ceill.c: Likewise.
13781         * lib/chdir-long.c: Likewise.
13782         * lib/chdir-long.h: Likewise.
13783         * lib/chdir-safer.c: Likewise.
13784         * lib/chdir-safer.h: Likewise.
13785         * lib/chown.c: Likewise.
13786         * lib/classpath.c: Likewise.
13787         * lib/classpath.h: Likewise.
13788         * lib/clean-temp.c: Likewise.
13789         * lib/clean-temp.h: Likewise.
13790         * lib/cloexec.c: Likewise.
13791         * lib/close-stream.c: Likewise.
13792         * lib/closein.c: Likewise.
13793         * lib/closein.h: Likewise.
13794         * lib/closeout.c: Likewise.
13795         * lib/closeout.h: Likewise.
13796         * lib/concat-filename.c: Likewise.
13797         * lib/copy-file.c: Likewise.
13798         * lib/copy-file.h: Likewise.
13799         * lib/count-one-bits.h: Likewise.
13800         * lib/crc.c: Likewise.
13801         * lib/crc.h: Likewise.
13802         * lib/creat-safer.c: Likewise.
13803         * lib/csharpcomp.c: Likewise.
13804         * lib/csharpcomp.h: Likewise.
13805         * lib/csharpexec.c: Likewise.
13806         * lib/csharpexec.h: Likewise.
13807         * lib/cycle-check.c: Likewise.
13808         * lib/cycle-check.h: Likewise.
13809         * lib/diacrit.c: Likewise.
13810         * lib/diacrit.h: Likewise.
13811         * lib/diffseq.h: Likewise.
13812         * lib/dirchownmod.c: Likewise.
13813         * lib/dirent.in.h: Likewise.
13814         * lib/dirfd.c: Likewise.
13815         * lib/dirfd.h: Likewise.
13816         * lib/dirname.c: Likewise.
13817         * lib/dirname.h: Likewise.
13818         * lib/dummy.c: Likewise.
13819         * lib/dup-safer.c: Likewise.
13820         * lib/dup2.c: Likewise.
13821         * lib/eealloc.h: Likewise.
13822         * lib/error.c: Likewise.
13823         * lib/error.h: Likewise.
13824         * lib/euidaccess.c: Likewise.
13825         * lib/exclude.c: Likewise.
13826         * lib/exclude.h: Likewise.
13827         * lib/execute.c: Likewise.
13828         * lib/execute.h: Likewise.
13829         * lib/exitfail.c: Likewise.
13830         * lib/exitfail.h: Likewise.
13831         * lib/expl.c: Likewise.
13832         * lib/fatal-signal.c: Likewise.
13833         * lib/fatal-signal.h: Likewise.
13834         * lib/fbufmode.c: Likewise.
13835         * lib/fbufmode.h: Likewise.
13836         * lib/fchdir.c: Likewise.
13837         * lib/fchmodat.c: Likewise.
13838         * lib/fchownat.c: Likewise.
13839         * lib/fcntl--.h: Likewise.
13840         * lib/fcntl-safer.h: Likewise.
13841         * lib/fcntl.in.h: Likewise.
13842         * lib/fd-safer.c: Likewise.
13843         * lib/fflush.c: Likewise.
13844         * lib/file-has-acl.c: Likewise.
13845         * lib/file-set.c: Likewise.
13846         * lib/file-type.c: Likewise.
13847         * lib/file-type.h: Likewise.
13848         * lib/fileblocks.c: Likewise.
13849         * lib/filemode.c: Likewise.
13850         * lib/filemode.h: Likewise.
13851         * lib/filename.h: Likewise.
13852         * lib/filenamecat.c: Likewise.
13853         * lib/filenamecat.h: Likewise.
13854         * lib/findprog.c: Likewise.
13855         * lib/findprog.h: Likewise.
13856         * lib/float.in.h: Likewise.
13857         * lib/floor.c: Likewise.
13858         * lib/floorf.c: Likewise.
13859         * lib/floorl.c: Likewise.
13860         * lib/fopen-safer.c: Likewise.
13861         * lib/fopen.c: Likewise.
13862         * lib/fpending.c: Likewise.
13863         * lib/fpending.h: Likewise.
13864         * lib/fprintf.c: Likewise.
13865         * lib/fprintftime.h: Likewise.
13866         * lib/fpucw.h: Likewise.
13867         * lib/fpurge.c: Likewise.
13868         * lib/fpurge.h: Likewise.
13869         * lib/freadable.c: Likewise.
13870         * lib/freadable.h: Likewise.
13871         * lib/freadahead.c: Likewise.
13872         * lib/freadahead.h: Likewise.
13873         * lib/freading.c: Likewise.
13874         * lib/freading.h: Likewise.
13875         * lib/free.c: Likewise.
13876         * lib/freopen.c: Likewise.
13877         * lib/frexp.c: Likewise.
13878         * lib/frexpl.c: Likewise.
13879         * lib/fseek.c: Likewise.
13880         * lib/fseterr.c: Likewise.
13881         * lib/fseterr.h: Likewise.
13882         * lib/fstatat.c: Likewise.
13883         * lib/fstrcmp.c: Likewise.
13884         * lib/fstrcmp.h: Likewise.
13885         * lib/fsusage.c: Likewise.
13886         * lib/fsusage.h: Likewise.
13887         * lib/ftell.c: Likewise.
13888         * lib/ftello.c: Likewise.
13889         * lib/fts-cycle.c: Likewise.
13890         * lib/fts.c: Likewise.
13891         * lib/fts_.h: Likewise.
13892         * lib/full-read.c: Likewise.
13893         * lib/full-read.h: Likewise.
13894         * lib/full-write.c: Likewise.
13895         * lib/full-write.h: Likewise.
13896         * lib/fwritable.c: Likewise.
13897         * lib/fwritable.h: Likewise.
13898         * lib/fwriteerror.c: Likewise.
13899         * lib/fwriteerror.h: Likewise.
13900         * lib/fwriting.c: Likewise.
13901         * lib/fwriting.h: Likewise.
13902         * lib/gcd.c: Likewise.
13903         * lib/gcd.h: Likewise.
13904         * lib/getcwd.c: Likewise.
13905         * lib/getdate.h: Likewise.
13906         * lib/getdate.y: Likewise.
13907         * lib/getdomainname.c: Likewise.
13908         * lib/getdomainname.h: Likewise.
13909         * lib/getgroups.c: Likewise.
13910         * lib/gethostname.c: Likewise.
13911         * lib/gethrxtime.c: Likewise.
13912         * lib/gethrxtime.h: Likewise.
13913         * lib/getloadavg.c: Likewise.
13914         * lib/getndelim2.c: Likewise.
13915         * lib/getndelim2.h: Likewise.
13916         * lib/getnline.c: Likewise.
13917         * lib/getnline.h: Likewise.
13918         * lib/getopt.c: Likewise.
13919         * lib/getopt.in.h: Likewise.
13920         * lib/getopt1.c: Likewise.
13921         * lib/getopt_int.h: Likewise.
13922         * lib/getpagesize.h: Likewise.
13923         * lib/getsubopt.c: Likewise.
13924         * lib/gettime.c: Likewise.
13925         * lib/getugroups.c: Likewise.
13926         * lib/getugroups.h: Likewise.
13927         * lib/getusershell.c: Likewise.
13928         * lib/gl_anyavltree_list1.h: Likewise.
13929         * lib/gl_anyavltree_list2.h: Likewise.
13930         * lib/gl_anyhash_list1.h: Likewise.
13931         * lib/gl_anyhash_list2.h: Likewise.
13932         * lib/gl_anylinked_list1.h: Likewise.
13933         * lib/gl_anylinked_list2.h: Likewise.
13934         * lib/gl_anyrbtree_list1.h: Likewise.
13935         * lib/gl_anyrbtree_list2.h: Likewise.
13936         * lib/gl_anytree_list1.h: Likewise.
13937         * lib/gl_anytree_list2.h: Likewise.
13938         * lib/gl_anytree_oset.h: Likewise.
13939         * lib/gl_anytreehash_list1.h: Likewise.
13940         * lib/gl_anytreehash_list2.h: Likewise.
13941         * lib/gl_array_list.c: Likewise.
13942         * lib/gl_array_list.h: Likewise.
13943         * lib/gl_array_oset.c: Likewise.
13944         * lib/gl_array_oset.h: Likewise.
13945         * lib/gl_avltree_list.c: Likewise.
13946         * lib/gl_avltree_list.h: Likewise.
13947         * lib/gl_avltree_oset.c: Likewise.
13948         * lib/gl_avltree_oset.h: Likewise.
13949         * lib/gl_avltreehash_list.c: Likewise.
13950         * lib/gl_avltreehash_list.h: Likewise.
13951         * lib/gl_carray_list.c: Likewise.
13952         * lib/gl_carray_list.h: Likewise.
13953         * lib/gl_linked_list.c: Likewise.
13954         * lib/gl_linked_list.h: Likewise.
13955         * lib/gl_linkedhash_list.c: Likewise.
13956         * lib/gl_linkedhash_list.h: Likewise.
13957         * lib/gl_list.c: Likewise.
13958         * lib/gl_list.h: Likewise.
13959         * lib/gl_oset.c: Likewise.
13960         * lib/gl_oset.h: Likewise.
13961         * lib/gl_rbtree_list.c: Likewise.
13962         * lib/gl_rbtree_list.h: Likewise.
13963         * lib/gl_rbtree_oset.c: Likewise.
13964         * lib/gl_rbtree_oset.h: Likewise.
13965         * lib/gl_rbtreehash_list.c: Likewise.
13966         * lib/gl_rbtreehash_list.h: Likewise.
13967         * lib/gl_sublist.c: Likewise.
13968         * lib/gl_sublist.h: Likewise.
13969         * lib/group-member.c: Likewise.
13970         * lib/group-member.h: Likewise.
13971         * lib/hard-locale.c: Likewise.
13972         * lib/hard-locale.h: Likewise.
13973         * lib/hash-pjw.c: Likewise.
13974         * lib/hash-pjw.h: Likewise.
13975         * lib/hash-triple.c: Likewise.
13976         * lib/hash.c: Likewise.
13977         * lib/hash.h: Likewise.
13978         * lib/human.c: Likewise.
13979         * lib/human.h: Likewise.
13980         * lib/i-ring.c: Likewise.
13981         * lib/i-ring.h: Likewise.
13982         * lib/idcache.c: Likewise.
13983         * lib/imaxabs.c: Likewise.
13984         * lib/imaxdiv.c: Likewise.
13985         * lib/inet_pton.c: Likewise.
13986         * lib/inet_pton.h: Likewise.
13987         * lib/intprops.h: Likewise.
13988         * lib/inttostr.c: Likewise.
13989         * lib/inttostr.h: Likewise.
13990         * lib/inttypes.in.h: Likewise.
13991         * lib/isapipe.c: Likewise.
13992         * lib/isdir.c: Likewise.
13993         * lib/isnan.c: Likewise.
13994         * lib/isnan.h: Likewise.
13995         * lib/isnanf.c: Likewise.
13996         * lib/isnanf.h: Likewise.
13997         * lib/isnanl-nolibm.h: Likewise.
13998         * lib/isnanl.c: Likewise.
13999         * lib/isnanl.h: Likewise.
14000         * lib/javacomp.c: Likewise.
14001         * lib/javacomp.h: Likewise.
14002         * lib/javaexec.c: Likewise.
14003         * lib/javaexec.h: Likewise.
14004         * lib/javaversion.c: Likewise.
14005         * lib/javaversion.h: Likewise.
14006         * lib/javaversion.java: Likewise.
14007         * lib/lbrkprop.h: Likewise.
14008         * lib/lchmod.h: Likewise.
14009         * lib/lchown.c: Likewise.
14010         * lib/ldexpl.c: Likewise.
14011         * lib/linebreak.c: Likewise.
14012         * lib/linebreak.h: Likewise.
14013         * lib/linebuffer.c: Likewise.
14014         * lib/linebuffer.h: Likewise.
14015         * lib/locale.in.h: Likewise.
14016         * lib/logl.c: Likewise.
14017         * lib/long-options.c: Likewise.
14018         * lib/long-options.h: Likewise.
14019         * lib/lstat.c: Likewise.
14020         * lib/lstat.h: Likewise.
14021         * lib/math.in.h: Likewise.
14022         * lib/mbchar.c: Likewise.
14023         * lib/mbchar.h: Likewise.
14024         * lib/mbfile.h: Likewise.
14025         * lib/mbiter.h: Likewise.
14026         * lib/mbscasecmp.c: Likewise.
14027         * lib/mbscasestr.c: Likewise.
14028         * lib/mbschr.c: Likewise.
14029         * lib/mbscspn.c: Likewise.
14030         * lib/mbslen.c: Likewise.
14031         * lib/mbsncasecmp.c: Likewise.
14032         * lib/mbsnlen.c: Likewise.
14033         * lib/mbspbrk.c: Likewise.
14034         * lib/mbspcasecmp.c: Likewise.
14035         * lib/mbsrchr.c: Likewise.
14036         * lib/mbssep.c: Likewise.
14037         * lib/mbsspn.c: Likewise.
14038         * lib/mbsstr.c: Likewise.
14039         * lib/mbstok_r.c: Likewise.
14040         * lib/mbswidth.c: Likewise.
14041         * lib/mbswidth.h: Likewise.
14042         * lib/mbuiter.h: Likewise.
14043         * lib/memcasecmp.c: Likewise.
14044         * lib/memcasecmp.h: Likewise.
14045         * lib/memchr.c: Likewise.
14046         * lib/memcmp.c: Likewise.
14047         * lib/memcoll.c: Likewise.
14048         * lib/memcoll.h: Likewise.
14049         * lib/memcpy.c: Likewise.
14050         * lib/memrchr.c: Likewise.
14051         * lib/mkancesdirs.c: Likewise.
14052         * lib/mkdir-p.c: Likewise.
14053         * lib/mkdir-p.h: Likewise.
14054         * lib/mkdir.c: Likewise.
14055         * lib/mkdirat.c: Likewise.
14056         * lib/mkdtemp.c: Likewise.
14057         * lib/mkstemp-safer.c: Likewise.
14058         * lib/mkstemp.c: Likewise.
14059         * lib/modechange.c: Likewise.
14060         * lib/modechange.h: Likewise.
14061         * lib/mountlist.c: Likewise.
14062         * lib/mountlist.h: Likewise.
14063         * lib/mpsort.c: Likewise.
14064         * lib/nanosleep.c: Likewise.
14065         * lib/obstack.c: Likewise.
14066         * lib/obstack.h: Likewise.
14067         * lib/open-safer.c: Likewise.
14068         * lib/open.c: Likewise.
14069         * lib/openat-die.c: Likewise.
14070         * lib/openat-priv.h: Likewise.
14071         * lib/openat-proc.c: Likewise.
14072         * lib/openat.c: Likewise.
14073         * lib/openat.h: Likewise.
14074         * lib/pagealign_alloc.c: Likewise.
14075         * lib/pagealign_alloc.h: Likewise.
14076         * lib/physmem.c: Likewise.
14077         * lib/physmem.h: Likewise.
14078         * lib/pipe-safer.c: Likewise.
14079         * lib/pipe.c: Likewise.
14080         * lib/pipe.h: Likewise.
14081         * lib/posixtm.c: Likewise.
14082         * lib/posixtm.h: Likewise.
14083         * lib/posixver.c: Likewise.
14084         * lib/printf-frexp.c: Likewise.
14085         * lib/printf-frexp.h: Likewise.
14086         * lib/printf-frexpl.c: Likewise.
14087         * lib/printf-frexpl.h: Likewise.
14088         * lib/printf.c: Likewise.
14089         * lib/progname.c: Likewise.
14090         * lib/progname.h: Likewise.
14091         * lib/progreloc.c: Likewise.
14092         * lib/putenv.c: Likewise.
14093         * lib/quote.c: Likewise.
14094         * lib/quote.h: Likewise.
14095         * lib/quotearg.c: Likewise.
14096         * lib/quotearg.h: Likewise.
14097         * lib/raise.c: Likewise.
14098         * lib/readline.c: Likewise.
14099         * lib/readline.h: Likewise.
14100         * lib/readlink.c: Likewise.
14101         * lib/readtokens.c: Likewise.
14102         * lib/readtokens.h: Likewise.
14103         * lib/readtokens0.c: Likewise.
14104         * lib/readtokens0.h: Likewise.
14105         * lib/readutmp.c: Likewise.
14106         * lib/readutmp.h: Likewise.
14107         * lib/realloc.c: Likewise.
14108         * lib/relocwrapper.c: Likewise.
14109         * lib/rename-dest-slash.c: Likewise.
14110         * lib/rename.c: Likewise.
14111         * lib/rmdir.c: Likewise.
14112         * lib/rpmatch.c: Likewise.
14113         * lib/safe-read.c: Likewise.
14114         * lib/safe-read.h: Likewise.
14115         * lib/safe-write.c: Likewise.
14116         * lib/safe-write.h: Likewise.
14117         * lib/same-inode.h: Likewise.
14118         * lib/same.c: Likewise.
14119         * lib/same.h: Likewise.
14120         * lib/save-cwd.c: Likewise.
14121         * lib/save-cwd.h: Likewise.
14122         * lib/savedir.c: Likewise.
14123         * lib/savedir.h: Likewise.
14124         * lib/savewd.c: Likewise.
14125         * lib/savewd.h: Likewise.
14126         * lib/search.in.h: Likewise.
14127         * lib/setenv.c: Likewise.
14128         * lib/setenv.h: Likewise.
14129         * lib/settime.c: Likewise.
14130         * lib/sh-quote.c: Likewise.
14131         * lib/sh-quote.h: Likewise.
14132         * lib/sig2str.c: Likewise.
14133         * lib/sig2str.h: Likewise.
14134         * lib/signal.in.h: Likewise.
14135         * lib/signbitd.c: Likewise.
14136         * lib/signbitf.c: Likewise.
14137         * lib/signbitl.c: Likewise.
14138         * lib/sigprocmask.c: Likewise.
14139         * lib/sincosl.c: Likewise.
14140         * lib/sleep.c: Likewise.
14141         * lib/sprintf.c: Likewise.
14142         * lib/sqrtl.c: Likewise.
14143         * lib/stat-time.h: Likewise.
14144         * lib/stdio--.h: Likewise.
14145         * lib/stdio-safer.h: Likewise.
14146         * lib/stdlib--.h: Likewise.
14147         * lib/stdlib-safer.h: Likewise.
14148         * lib/stdlib.in.h: Likewise.
14149         * lib/stpcpy.c: Likewise.
14150         * lib/stpncpy.c: Likewise.
14151         * lib/strchrnul.c: Likewise.
14152         * lib/strcspn.c: Likewise.
14153         * lib/strerror.c: Likewise.
14154         * lib/strftime.c: Likewise.
14155         * lib/strftime.h: Likewise.
14156         * lib/striconveh.c: Likewise.
14157         * lib/striconveh.h: Likewise.
14158         * lib/striconveha.c: Likewise.
14159         * lib/striconveha.h: Likewise.
14160         * lib/stripslash.c: Likewise.
14161         * lib/strnlen1.c: Likewise.
14162         * lib/strnlen1.h: Likewise.
14163         * lib/strtod.c: Likewise.
14164         * lib/strtoimax.c: Likewise.
14165         * lib/strtok_r.c: Likewise.
14166         * lib/strtol.c: Likewise.
14167         * lib/strtoll.c: Likewise.
14168         * lib/strtoul.c: Likewise.
14169         * lib/strtoull.c: Likewise.
14170         * lib/sysexits.in.h: Likewise.
14171         * lib/tempname.c: Likewise.
14172         * lib/tempname.h: Likewise.
14173         * lib/timespec.h: Likewise.
14174         * lib/tls.c: Likewise.
14175         * lib/tls.h: Likewise.
14176         * lib/tmpdir.c: Likewise.
14177         * lib/tmpdir.h: Likewise.
14178         * lib/tmpfile-safer.c: Likewise.
14179         * lib/tmpfile.c: Likewise.
14180         * lib/trigl.c: Likewise.
14181         * lib/trigl.h: Likewise.
14182         * lib/trim.c: Likewise.
14183         * lib/trim.h: Likewise.
14184         * lib/trunc.c: Likewise.
14185         * lib/truncf.c: Likewise.
14186         * lib/truncl.c: Likewise.
14187         * lib/tsearch.c: Likewise.
14188         * lib/unicodeio.c: Likewise.
14189         * lib/unicodeio.h: Likewise.
14190         * lib/unistd--.h: Likewise.
14191         * lib/unistd-safer.h: Likewise.
14192         * lib/unistdio/ulc-fprintf.c: Likewise.
14193         * lib/unistdio/ulc-vfprintf.c: Likewise.
14194         * lib/unlinkdir.c: Likewise.
14195         * lib/unlinkdir.h: Likewise.
14196         * lib/unlocked-io.h: Likewise.
14197         * lib/unsetenv.c: Likewise.
14198         * lib/userspec.c: Likewise.
14199         * lib/utime.c: Likewise.
14200         * lib/utimecmp.c: Likewise.
14201         * lib/utimecmp.h: Likewise.
14202         * lib/utimens.c: Likewise.
14203         * lib/verify.h: Likewise.
14204         * lib/verror.c: Likewise.
14205         * lib/verror.h: Likewise.
14206         * lib/version-etc-fsf.c: Likewise.
14207         * lib/version-etc.c: Likewise.
14208         * lib/version-etc.h: Likewise.
14209         * lib/vfprintf.c: Likewise.
14210         * lib/vprintf.c: Likewise.
14211         * lib/vsprintf.c: Likewise.
14212         * lib/w32spawn.h: Likewise.
14213         * lib/wait-process.c: Likewise.
14214         * lib/wait-process.h: Likewise.
14215         * lib/wcwidth.c: Likewise.
14216         * lib/write-any-file.c: Likewise.
14217         * lib/xalloc-die.c: Likewise.
14218         * lib/xalloc.h: Likewise.
14219         * lib/xasprintf.c: Likewise.
14220         * lib/xgetcwd.c: Likewise.
14221         * lib/xgetcwd.h: Likewise.
14222         * lib/xgetdomainname.c: Likewise.
14223         * lib/xgetdomainname.h: Likewise.
14224         * lib/xgethostname.c: Likewise.
14225         * lib/xmalloc.c: Likewise.
14226         * lib/xmalloca.c: Likewise.
14227         * lib/xmalloca.h: Likewise.
14228         * lib/xmemcoll.c: Likewise.
14229         * lib/xnanosleep.c: Likewise.
14230         * lib/xreadlink.c: Likewise.
14231         * lib/xreadlink.h: Likewise.
14232         * lib/xsetenv.c: Likewise.
14233         * lib/xsetenv.h: Likewise.
14234         * lib/xstriconv.c: Likewise.
14235         * lib/xstriconv.h: Likewise.
14236         * lib/xstrndup.c: Likewise.
14237         * lib/xstrndup.h: Likewise.
14238         * lib/xstrtod.c: Likewise.
14239         * lib/xstrtod.h: Likewise.
14240         * lib/xstrtol-error.c: Likewise.
14241         * lib/xstrtol.c: Likewise.
14242         * lib/xstrtol.h: Likewise.
14243         * lib/xtime.h: Likewise.
14244         * lib/xvasprintf.c: Likewise.
14245         * lib/xvasprintf.h: Likewise.
14246         * lib/yesno.c: Likewise.
14247         * lib/yesno.h: Likewise.
14248         * posix-modules: Likewise.
14249         * tests/test-alloca-opt.c: Likewise.
14250         * tests/test-arcfour.c: Likewise.
14251         * tests/test-arctwo.c: Likewise.
14252         * tests/test-argmatch.c: Likewise.
14253         * tests/test-argp-2.sh: Likewise.
14254         * tests/test-argp.c: Likewise.
14255         * tests/test-arpa_inet.c: Likewise.
14256         * tests/test-array_list.c: Likewise.
14257         * tests/test-array_oset.c: Likewise.
14258         * tests/test-atexit.c: Likewise.
14259         * tests/test-avltree_list.c: Likewise.
14260         * tests/test-avltree_oset.c: Likewise.
14261         * tests/test-avltreehash_list.c: Likewise.
14262         * tests/test-base64.c: Likewise.
14263         * tests/test-binary-io.c: Likewise.
14264         * tests/test-byteswap.c: Likewise.
14265         * tests/test-c-ctype.c: Likewise.
14266         * tests/test-c-strcasecmp.c: Likewise.
14267         * tests/test-c-strcasestr.c: Likewise.
14268         * tests/test-c-strncasecmp.c: Likewise.
14269         * tests/test-c-strstr.c: Likewise.
14270         * tests/test-canonicalize-lgpl.c: Likewise.
14271         * tests/test-canonicalize.c: Likewise.
14272         * tests/test-carray_list.c: Likewise.
14273         * tests/test-ceilf.c: Likewise.
14274         * tests/test-ceill.c: Likewise.
14275         * tests/test-count-one-bits.c: Likewise.
14276         * tests/test-crc.c: Likewise.
14277         * tests/test-dirname.c: Likewise.
14278         * tests/test-fbufmode.c: Likewise.
14279         * tests/test-fcntl.c: Likewise.
14280         * tests/test-fflush.c: Likewise.
14281         * tests/test-floorf.c: Likewise.
14282         * tests/test-floorl.c: Likewise.
14283         * tests/test-fopen.c: Likewise.
14284         * tests/test-fprintf-posix.c: Likewise.
14285         * tests/test-fprintf-posix.h: Likewise.
14286         * tests/test-fpurge.c: Likewise.
14287         * tests/test-freadable.c: Likewise.
14288         * tests/test-freadahead.c: Likewise.
14289         * tests/test-freading.c: Likewise.
14290         * tests/test-freopen.c: Likewise.
14291         * tests/test-frexp.c: Likewise.
14292         * tests/test-frexpl.c: Likewise.
14293         * tests/test-fseek.c: Likewise.
14294         * tests/test-fseeko.c: Likewise.
14295         * tests/test-fseterr.c: Likewise.
14296         * tests/test-fstrcmp.c: Likewise.
14297         * tests/test-ftell.c: Likewise.
14298         * tests/test-ftello.c: Likewise.
14299         * tests/test-fwritable.c: Likewise.
14300         * tests/test-fwriting.c: Likewise.
14301         * tests/test-getaddrinfo.c: Likewise.
14302         * tests/test-getpass.c: Likewise.
14303         * tests/test-gettimeofday.c: Likewise.
14304         * tests/test-hmac-md5.c: Likewise.
14305         * tests/test-hmac-sha1.c: Likewise.
14306         * tests/test-iconv.c: Likewise.
14307         * tests/test-iconvme.c: Likewise.
14308         * tests/test-inttypes.c: Likewise.
14309         * tests/test-isnan.c: Likewise.
14310         * tests/test-isnanf.c: Likewise.
14311         * tests/test-isnanl-nolibm.c: Likewise.
14312         * tests/test-isnanl.c: Likewise.
14313         * tests/test-isnanl.h: Likewise.
14314         * tests/test-ldexpl.c: Likewise.
14315         * tests/test-linked_list.c: Likewise.
14316         * tests/test-linkedhash_list.c: Likewise.
14317         * tests/test-locale.c: Likewise.
14318         * tests/test-localename.c: Likewise.
14319         * tests/test-lock.c: Likewise.
14320         * tests/test-lseek.c: Likewise.
14321         * tests/test-malloca.c: Likewise.
14322         * tests/test-math.c: Likewise.
14323         * tests/test-mbscasecmp.c: Likewise.
14324         * tests/test-mbscasestr1.c: Likewise.
14325         * tests/test-mbscasestr2.c: Likewise.
14326         * tests/test-mbscasestr3.c: Likewise.
14327         * tests/test-mbscasestr4.c: Likewise.
14328         * tests/test-mbschr.c: Likewise.
14329         * tests/test-mbscspn.c: Likewise.
14330         * tests/test-mbsncasecmp.c: Likewise.
14331         * tests/test-mbspbrk.c: Likewise.
14332         * tests/test-mbspcasecmp.c: Likewise.
14333         * tests/test-mbsrchr.c: Likewise.
14334         * tests/test-mbsspn.c: Likewise.
14335         * tests/test-mbsstr1.c: Likewise.
14336         * tests/test-mbsstr2.c: Likewise.
14337         * tests/test-mbsstr3.c: Likewise.
14338         * tests/test-md5.c: Likewise.
14339         * tests/test-memmem.c: Likewise.
14340         * tests/test-netinet_in.c: Likewise.
14341         * tests/test-open.c: Likewise.
14342         * tests/test-printf-frexp.c: Likewise.
14343         * tests/test-printf-frexpl.c: Likewise.
14344         * tests/test-printf-posix.c: Likewise.
14345         * tests/test-printf-posix.h: Likewise.
14346         * tests/test-rbtree_list.c: Likewise.
14347         * tests/test-rbtree_oset.c: Likewise.
14348         * tests/test-rbtreehash_list.c: Likewise.
14349         * tests/test-read-file.c: Likewise.
14350         * tests/test-rijndael.c: Likewise.
14351         * tests/test-search.c: Likewise.
14352         * tests/test-signbit.c: Likewise.
14353         * tests/test-sleep.c: Likewise.
14354         * tests/test-snprintf-posix.c: Likewise.
14355         * tests/test-snprintf-posix.h: Likewise.
14356         * tests/test-snprintf.c: Likewise.
14357         * tests/test-sprintf-posix.c: Likewise.
14358         * tests/test-sprintf-posix.h: Likewise.
14359         * tests/test-stat-time.c: Likewise.
14360         * tests/test-stdbool.c: Likewise.
14361         * tests/test-stdint.c: Likewise.
14362         * tests/test-stdio.c: Likewise.
14363         * tests/test-stdlib.c: Likewise.
14364         * tests/test-stpncpy.c: Likewise.
14365         * tests/test-strcasestr.c: Likewise.
14366         * tests/test-striconv.c: Likewise.
14367         * tests/test-striconveh.c: Likewise.
14368         * tests/test-striconveha.c: Likewise.
14369         * tests/test-string.c: Likewise.
14370         * tests/test-sys_select.c: Likewise.
14371         * tests/test-sys_socket.c: Likewise.
14372         * tests/test-sys_stat.c: Likewise.
14373         * tests/test-sys_time.c: Likewise.
14374         * tests/test-sysexits.c: Likewise.
14375         * tests/test-time.c: Likewise.
14376         * tests/test-tls.c: Likewise.
14377         * tests/test-trunc.c: Likewise.
14378         * tests/test-truncf.c: Likewise.
14379         * tests/test-truncl.c: Likewise.
14380         * tests/test-unistd.c: Likewise.
14381         * tests/test-vasnprintf-posix.c: Likewise.
14382         * tests/test-vasnprintf-posix2.c: Likewise.
14383         * tests/test-vasnprintf.c: Likewise.
14384         * tests/test-vasprintf-posix.c: Likewise.
14385         * tests/test-vasprintf.c: Likewise.
14386         * tests/test-verify.c: Likewise.
14387         * tests/test-vfprintf-posix.c: Likewise.
14388         * tests/test-vprintf-posix.c: Likewise.
14389         * tests/test-vsnprintf-posix.c: Likewise.
14390         * tests/test-vsnprintf.c: Likewise.
14391         * tests/test-vsprintf-posix.c: Likewise.
14392         * tests/test-wchar.c: Likewise.
14393         * tests/test-wctype.c: Likewise.
14394         * tests/test-wcwidth.c: Likewise.
14395         * tests/test-xstrtol.c: Likewise.
14396         * tests/test-xvasprintf.c: Likewise.
14397         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
14398         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
14399         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
14400         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
14401         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
14402         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
14403         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
14404         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
14405         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
14406         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
14407         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
14408         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
14409         * tests/uniname/test-uninames.c: Likewise.
14410         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
14411         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
14412         * tests/unistdio/test-u16-printf1.h: Likewise.
14413         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
14414         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
14415         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
14416         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
14417         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
14418         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
14419         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
14420         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
14421         * tests/unistdio/test-u32-printf1.h: Likewise.
14422         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
14423         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
14424         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
14425         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
14426         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
14427         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
14428         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
14429         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
14430         * tests/unistdio/test-u8-printf1.h: Likewise.
14431         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
14432         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
14433         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
14434         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
14435         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
14436         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
14437         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
14438         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
14439         * tests/unistdio/test-ulc-printf1.h: Likewise.
14440         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
14441         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
14442         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
14443         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
14444         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
14445         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
14446         * tests/uniwidth/test-u16-strwidth.c: Likewise.
14447         * tests/uniwidth/test-u16-width.c: Likewise.
14448         * tests/uniwidth/test-u32-strwidth.c: Likewise.
14449         * tests/uniwidth/test-u32-width.c: Likewise.
14450         * tests/uniwidth/test-u8-strwidth.c: Likewise.
14451         * tests/uniwidth/test-u8-width.c: Likewise.
14452         * tests/uniwidth/test-uc_width.c: Likewise.
14453         * config/srclist-update: Likewise.
14454         (fixlicense): Update to GPLv3+.
14455
14456         Change copyright notice from LGPLv2.1+ to LGPLv3+.
14457         * tests/test-tsearch.c: Change copyright notice.
14458
14459         Change copyright notice from LGPLv2.0+ to LGPLv3+.
14460         * lib/c-strcaseeq.h: Change copyright notice.
14461         * lib/streq.h: Likewise.
14462         * lib/uniconv.h: Likewise.
14463         * lib/uniconv/u-conv-from-enc.h: Likewise.
14464         * lib/uniconv/u-conv-to-enc.h: Likewise.
14465         * lib/uniconv/u-strconv-from-enc.h: Likewise.
14466         * lib/uniconv/u-strconv-to-enc.h: Likewise.
14467         * lib/uniconv/u16-conv-from-enc.c: Likewise.
14468         * lib/uniconv/u16-conv-to-enc.c: Likewise.
14469         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
14470         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
14471         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
14472         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
14473         * lib/uniconv/u32-conv-from-enc.c: Likewise.
14474         * lib/uniconv/u32-conv-to-enc.c: Likewise.
14475         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
14476         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
14477         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
14478         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
14479         * lib/uniconv/u8-conv-from-enc.c: Likewise.
14480         * lib/uniconv/u8-conv-to-enc.c: Likewise.
14481         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
14482         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
14483         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
14484         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
14485         * lib/uniname.h: Likewise.
14486         * lib/uniname/uniname.c: Likewise.
14487         * lib/unistdio.h: Likewise.
14488         * lib/unistdio/u-asnprintf.h: Likewise.
14489         * lib/unistdio/u-asprintf.h: Likewise.
14490         * lib/unistdio/u-printf-args.c: Likewise.
14491         * lib/unistdio/u-printf-args.h: Likewise.
14492         * lib/unistdio/u-printf-parse.h: Likewise.
14493         * lib/unistdio/u-snprintf.h: Likewise.
14494         * lib/unistdio/u-sprintf.h: Likewise.
14495         * lib/unistdio/u-vasprintf.h: Likewise.
14496         * lib/unistdio/u-vsnprintf.h: Likewise.
14497         * lib/unistdio/u-vsprintf.h: Likewise.
14498         * lib/unistdio/u16-asnprintf.c: Likewise.
14499         * lib/unistdio/u16-asprintf.c: Likewise.
14500         * lib/unistdio/u16-printf-parse.c: Likewise.
14501         * lib/unistdio/u16-snprintf.c: Likewise.
14502         * lib/unistdio/u16-sprintf.c: Likewise.
14503         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
14504         * lib/unistdio/u16-u16-asprintf.c: Likewise.
14505         * lib/unistdio/u16-u16-snprintf.c: Likewise.
14506         * lib/unistdio/u16-u16-sprintf.c: Likewise.
14507         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
14508         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
14509         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
14510         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
14511         * lib/unistdio/u16-vasnprintf.c: Likewise.
14512         * lib/unistdio/u16-vasprintf.c: Likewise.
14513         * lib/unistdio/u16-vsnprintf.c: Likewise.
14514         * lib/unistdio/u16-vsprintf.c: Likewise.
14515         * lib/unistdio/u32-asnprintf.c: Likewise.
14516         * lib/unistdio/u32-asprintf.c: Likewise.
14517         * lib/unistdio/u32-printf-parse.c: Likewise.
14518         * lib/unistdio/u32-snprintf.c: Likewise.
14519         * lib/unistdio/u32-sprintf.c: Likewise.
14520         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
14521         * lib/unistdio/u32-u32-asprintf.c: Likewise.
14522         * lib/unistdio/u32-u32-snprintf.c: Likewise.
14523         * lib/unistdio/u32-u32-sprintf.c: Likewise.
14524         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
14525         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
14526         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
14527         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
14528         * lib/unistdio/u32-vasnprintf.c: Likewise.
14529         * lib/unistdio/u32-vasprintf.c: Likewise.
14530         * lib/unistdio/u32-vsnprintf.c: Likewise.
14531         * lib/unistdio/u32-vsprintf.c: Likewise.
14532         * lib/unistdio/u8-asnprintf.c: Likewise.
14533         * lib/unistdio/u8-asprintf.c: Likewise.
14534         * lib/unistdio/u8-printf-parse.c: Likewise.
14535         * lib/unistdio/u8-snprintf.c: Likewise.
14536         * lib/unistdio/u8-sprintf.c: Likewise.
14537         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
14538         * lib/unistdio/u8-u8-asprintf.c: Likewise.
14539         * lib/unistdio/u8-u8-snprintf.c: Likewise.
14540         * lib/unistdio/u8-u8-sprintf.c: Likewise.
14541         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
14542         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
14543         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
14544         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
14545         * lib/unistdio/u8-vasnprintf.c: Likewise.
14546         * lib/unistdio/u8-vasprintf.c: Likewise.
14547         * lib/unistdio/u8-vsnprintf.c: Likewise.
14548         * lib/unistdio/u8-vsprintf.c: Likewise.
14549         * lib/unistdio/ulc-asnprintf.c: Likewise.
14550         * lib/unistdio/ulc-asprintf.c: Likewise.
14551         * lib/unistdio/ulc-printf-parse.c: Likewise.
14552         * lib/unistdio/ulc-snprintf.c: Likewise.
14553         * lib/unistdio/ulc-sprintf.c: Likewise.
14554         * lib/unistdio/ulc-vasnprintf.c: Likewise.
14555         * lib/unistdio/ulc-vasprintf.c: Likewise.
14556         * lib/unistdio/ulc-vsnprintf.c: Likewise.
14557         * lib/unistdio/ulc-vsprintf.c: Likewise.
14558         * lib/unistr.h: Likewise.
14559         * lib/unistr/u-cpy-alloc.h: Likewise.
14560         * lib/unistr/u-cpy.h: Likewise.
14561         * lib/unistr/u-endswith.h: Likewise.
14562         * lib/unistr/u-move.h: Likewise.
14563         * lib/unistr/u-set.h: Likewise.
14564         * lib/unistr/u-startswith.h: Likewise.
14565         * lib/unistr/u-stpcpy.h: Likewise.
14566         * lib/unistr/u-stpncpy.h: Likewise.
14567         * lib/unistr/u-strcat.h: Likewise.
14568         * lib/unistr/u-strcpy.h: Likewise.
14569         * lib/unistr/u-strcspn.h: Likewise.
14570         * lib/unistr/u-strdup.h: Likewise.
14571         * lib/unistr/u-strlen.h: Likewise.
14572         * lib/unistr/u-strncat.h: Likewise.
14573         * lib/unistr/u-strncpy.h: Likewise.
14574         * lib/unistr/u-strnlen.h: Likewise.
14575         * lib/unistr/u-strpbrk.h: Likewise.
14576         * lib/unistr/u-strspn.h: Likewise.
14577         * lib/unistr/u-strstr.h: Likewise.
14578         * lib/unistr/u-strtok.h: Likewise.
14579         * lib/unistr/u16-check.c: Likewise.
14580         * lib/unistr/u16-chr.c: Likewise.
14581         * lib/unistr/u16-cmp.c: Likewise.
14582         * lib/unistr/u16-cpy-alloc.c: Likewise.
14583         * lib/unistr/u16-cpy.c: Likewise.
14584         * lib/unistr/u16-endswith.c: Likewise.
14585         * lib/unistr/u16-mblen.c: Likewise.
14586         * lib/unistr/u16-mbsnlen.c: Likewise.
14587         * lib/unistr/u16-mbtouc-aux.c: Likewise.
14588         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
14589         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
14590         * lib/unistr/u16-mbtouc.c: Likewise.
14591         * lib/unistr/u16-mbtoucr.c: Likewise.
14592         * lib/unistr/u16-move.c: Likewise.
14593         * lib/unistr/u16-next.c: Likewise.
14594         * lib/unistr/u16-prev.c: Likewise.
14595         * lib/unistr/u16-set.c: Likewise.
14596         * lib/unistr/u16-startswith.c: Likewise.
14597         * lib/unistr/u16-stpcpy.c: Likewise.
14598         * lib/unistr/u16-stpncpy.c: Likewise.
14599         * lib/unistr/u16-strcat.c: Likewise.
14600         * lib/unistr/u16-strchr.c: Likewise.
14601         * lib/unistr/u16-strcmp.c: Likewise.
14602         * lib/unistr/u16-strcpy.c: Likewise.
14603         * lib/unistr/u16-strcspn.c: Likewise.
14604         * lib/unistr/u16-strdup.c: Likewise.
14605         * lib/unistr/u16-strlen.c: Likewise.
14606         * lib/unistr/u16-strmblen.c: Likewise.
14607         * lib/unistr/u16-strmbtouc.c: Likewise.
14608         * lib/unistr/u16-strncat.c: Likewise.
14609         * lib/unistr/u16-strncmp.c: Likewise.
14610         * lib/unistr/u16-strncpy.c: Likewise.
14611         * lib/unistr/u16-strnlen.c: Likewise.
14612         * lib/unistr/u16-strpbrk.c: Likewise.
14613         * lib/unistr/u16-strrchr.c: Likewise.
14614         * lib/unistr/u16-strspn.c: Likewise.
14615         * lib/unistr/u16-strstr.c: Likewise.
14616         * lib/unistr/u16-strtok.c: Likewise.
14617         * lib/unistr/u16-to-u32.c: Likewise.
14618         * lib/unistr/u16-to-u8.c: Likewise.
14619         * lib/unistr/u16-uctomb-aux.c: Likewise.
14620         * lib/unistr/u16-uctomb.c: Likewise.
14621         * lib/unistr/u32-check.c: Likewise.
14622         * lib/unistr/u32-chr.c: Likewise.
14623         * lib/unistr/u32-cmp.c: Likewise.
14624         * lib/unistr/u32-cpy-alloc.c: Likewise.
14625         * lib/unistr/u32-cpy.c: Likewise.
14626         * lib/unistr/u32-endswith.c: Likewise.
14627         * lib/unistr/u32-mblen.c: Likewise.
14628         * lib/unistr/u32-mbsnlen.c: Likewise.
14629         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
14630         * lib/unistr/u32-mbtouc.c: Likewise.
14631         * lib/unistr/u32-mbtoucr.c: Likewise.
14632         * lib/unistr/u32-move.c: Likewise.
14633         * lib/unistr/u32-next.c: Likewise.
14634         * lib/unistr/u32-prev.c: Likewise.
14635         * lib/unistr/u32-set.c: Likewise.
14636         * lib/unistr/u32-startswith.c: Likewise.
14637         * lib/unistr/u32-stpcpy.c: Likewise.
14638         * lib/unistr/u32-stpncpy.c: Likewise.
14639         * lib/unistr/u32-strcat.c: Likewise.
14640         * lib/unistr/u32-strchr.c: Likewise.
14641         * lib/unistr/u32-strcmp.c: Likewise.
14642         * lib/unistr/u32-strcpy.c: Likewise.
14643         * lib/unistr/u32-strcspn.c: Likewise.
14644         * lib/unistr/u32-strdup.c: Likewise.
14645         * lib/unistr/u32-strlen.c: Likewise.
14646         * lib/unistr/u32-strmblen.c: Likewise.
14647         * lib/unistr/u32-strmbtouc.c: Likewise.
14648         * lib/unistr/u32-strncat.c: Likewise.
14649         * lib/unistr/u32-strncmp.c: Likewise.
14650         * lib/unistr/u32-strncpy.c: Likewise.
14651         * lib/unistr/u32-strnlen.c: Likewise.
14652         * lib/unistr/u32-strpbrk.c: Likewise.
14653         * lib/unistr/u32-strrchr.c: Likewise.
14654         * lib/unistr/u32-strspn.c: Likewise.
14655         * lib/unistr/u32-strstr.c: Likewise.
14656         * lib/unistr/u32-strtok.c: Likewise.
14657         * lib/unistr/u32-to-u16.c: Likewise.
14658         * lib/unistr/u32-to-u8.c: Likewise.
14659         * lib/unistr/u32-uctomb.c: Likewise.
14660         * lib/unistr/u8-check.c: Likewise.
14661         * lib/unistr/u8-chr.c: Likewise.
14662         * lib/unistr/u8-cmp.c: Likewise.
14663         * lib/unistr/u8-cpy-alloc.c: Likewise.
14664         * lib/unistr/u8-cpy.c: Likewise.
14665         * lib/unistr/u8-endswith.c: Likewise.
14666         * lib/unistr/u8-mblen.c: Likewise.
14667         * lib/unistr/u8-mbsnlen.c: Likewise.
14668         * lib/unistr/u8-mbtouc-aux.c: Likewise.
14669         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
14670         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
14671         * lib/unistr/u8-mbtouc.c: Likewise.
14672         * lib/unistr/u8-mbtoucr.c: Likewise.
14673         * lib/unistr/u8-move.c: Likewise.
14674         * lib/unistr/u8-next.c: Likewise.
14675         * lib/unistr/u8-prev.c: Likewise.
14676         * lib/unistr/u8-set.c: Likewise.
14677         * lib/unistr/u8-startswith.c: Likewise.
14678         * lib/unistr/u8-stpcpy.c: Likewise.
14679         * lib/unistr/u8-stpncpy.c: Likewise.
14680         * lib/unistr/u8-strcat.c: Likewise.
14681         * lib/unistr/u8-strchr.c: Likewise.
14682         * lib/unistr/u8-strcmp.c: Likewise.
14683         * lib/unistr/u8-strcpy.c: Likewise.
14684         * lib/unistr/u8-strcspn.c: Likewise.
14685         * lib/unistr/u8-strdup.c: Likewise.
14686         * lib/unistr/u8-strlen.c: Likewise.
14687         * lib/unistr/u8-strmblen.c: Likewise.
14688         * lib/unistr/u8-strmbtouc.c: Likewise.
14689         * lib/unistr/u8-strncat.c: Likewise.
14690         * lib/unistr/u8-strncmp.c: Likewise.
14691         * lib/unistr/u8-strncpy.c: Likewise.
14692         * lib/unistr/u8-strnlen.c: Likewise.
14693         * lib/unistr/u8-strpbrk.c: Likewise.
14694         * lib/unistr/u8-strrchr.c: Likewise.
14695         * lib/unistr/u8-strspn.c: Likewise.
14696         * lib/unistr/u8-strstr.c: Likewise.
14697         * lib/unistr/u8-strtok.c: Likewise.
14698         * lib/unistr/u8-to-u16.c: Likewise.
14699         * lib/unistr/u8-to-u32.c: Likewise.
14700         * lib/unistr/u8-uctomb-aux.c: Likewise.
14701         * lib/unistr/u8-uctomb.c: Likewise.
14702         * lib/unitypes.h: Likewise.
14703         * lib/uniwidth.h: Likewise.
14704         * lib/uniwidth/cjk.h: Likewise.
14705         * lib/uniwidth/u16-strwidth.c: Likewise.
14706         * lib/uniwidth/u16-width.c: Likewise.
14707         * lib/uniwidth/u32-strwidth.c: Likewise.
14708         * lib/uniwidth/u32-width.c: Likewise.
14709         * lib/uniwidth/u8-strwidth.c: Likewise.
14710         * lib/uniwidth/u8-width.c: Likewise.
14711         * lib/uniwidth/width.c: Likewise.
14712
14713 2007-10-07  Bruno Haible  <bruno@clisp.org>
14714
14715         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
14716         The file is still under LGPL (see modules/inttypes).
14717
14718 2007-10-06  Bruno Haible  <bruno@clisp.org>
14719
14720         * modules/trunc (Dependencies): Add 'extensions'.
14721         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
14722         Reported by Ben Pfaff <blp@gnu.org>.
14723
14724 2007-10-06  Bruno Haible  <bruno@clisp.org>
14725
14726         * modules/freopen-tests: New file.
14727         * tests/test-freopen.c: New file.
14728
14729         * modules/fopen-tests: New file.
14730         * tests/test-fopen.c: New file.
14731
14732         * modules/fopen: New file.
14733         * lib/fopen.c: New file.
14734         * m4/fopen.m4: New file.
14735         * modules/freopen: New file.
14736         * lib/freopen.c: New file.
14737         * m4/freopen.m4: New file.
14738         * lib/stdio.in.h (fopen, freopen): New declarations.
14739         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
14740         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
14741         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
14742         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
14743         * doc/functions/fopen.texi: Mention the 'fopen' module.
14744         * doc/functions/freopen.texi: Mention the 'freopen' module.
14745
14746 2007-10-06  Bruno Haible  <bruno@clisp.org>
14747
14748         * modules/open-tests: New file.
14749         * tests/test-open.c: New file.
14750
14751         * modules/open: New file.
14752         * lib/open.c: New file.
14753         * m4/open.m4: New file.
14754         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
14755         lib/open.c does.
14756         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
14757         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
14758         macros.
14759         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
14760         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
14761         REPLACE_OPEN.
14762         * doc/functions/open.texi: Mention the 'open' module.
14763
14764 2007-10-04  Bruno Haible  <bruno@clisp.org>
14765
14766         * modules/ceill-tests: New file.
14767         * tests/test-ceill.c: New file.
14768
14769         * modules/ceill: New file.
14770         * lib/ceill.c: Replace entire file.
14771         * m4/ceill.m4: New file.
14772         * lib/math.in.h (ceill): Replace declaration.
14773         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
14774         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
14775         * doc/functions/ceill.texi: Mention the 'ceill' module.
14776         * modules/mathl (Files): Remove lib/ceill.c.
14777         (Depends-on): Add ceill.
14778
14779 2007-10-04  Bruno Haible  <bruno@clisp.org>
14780
14781         * modules/ceilf-tests: New file.
14782         * tests/test-ceilf.c: New file.
14783
14784         * modules/ceilf: New file.
14785         * lib/ceil.c: New file.
14786         * lib/ceilf.c: New file.
14787         * m4/ceilf.m4: New file.
14788         * lib/math.in.h (ceilf): New declaration.
14789         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
14790         HAVE_DECL_CEILF.
14791         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
14792         HAVE_DECL_CEILF.
14793         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
14794
14795 2007-10-04  Bruno Haible  <bruno@clisp.org>
14796
14797         * modules/floorl-tests: New file.
14798         * tests/test-floorl.c: New file.
14799
14800         * modules/floorl: New file.
14801         * lib/floorl.c: Replace entire file.
14802         * m4/floorl.m4: New file.
14803         * lib/math.in.h (floorl): Replace declaration.
14804         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
14805         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
14806         * doc/functions/floorl.texi: Mention the 'floorl' module.
14807         * modules/mathl (Files): Remove lib/floorl.c.
14808         (Depends-on): Add floorl.
14809
14810 2007-10-04  Bruno Haible  <bruno@clisp.org>
14811
14812         * modules/floorf-tests: New file.
14813         * tests/test-floorf.c: New file.
14814
14815         * modules/floorf: New file.
14816         * lib/floor.c: New file.
14817         * lib/floorf.c: New file.
14818         * m4/floorf.m4: New file.
14819         * lib/math.in.h (floorf): New declaration.
14820         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
14821         HAVE_DECL_FLOORF.
14822         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
14823         HAVE_DECL_FLOORF.
14824         * doc/functions/floorf.texi: Mention the 'floorf' module.
14825
14826 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
14827             Bruno Haible  <bruno@clisp.org>
14828
14829         Advertise for the Git server instead of the CVS server.
14830         * doc/gnulib-intro.texi (Steady Development): Mention the Git
14831         repository instead of the CVS one.
14832         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
14833         about all VCS systems generically.
14834         * doc/gnulib.texi (Introduction): Capitalize `Git'.
14835
14836 2007-10-04  Bruno Haible  <bruno@clisp.org>
14837
14838         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
14839         means.
14840         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
14841
14842 2007-10-04  Bruno Haible  <bruno@clisp.org>
14843
14844         * modules/truncl-tests: New file.
14845         * tests/test-truncl.c: New file.
14846
14847         * modules/truncl: New file.
14848         * lib/truncl.c: New file.
14849         * m4/truncl.m4: New file.
14850         * lib/math.in.h (truncl): New declaration.
14851         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
14852         HAVE_DECL_TRUNCL.
14853         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
14854         HAVE_DECL_TRUNCL.
14855         * doc/functions/truncl.texi: Mention the 'truncl' module.
14856
14857 2007-10-04  Bruno Haible  <bruno@clisp.org>
14858
14859         * modules/truncf-tests: New file.
14860         * tests/test-truncf.c: New file.
14861
14862         * modules/truncf: New file.
14863         * lib/trunc.c: Make paramerizable through USE_* macros.
14864         * lib/truncf.c: New file.
14865         * m4/truncf.m4: New file.
14866         * lib/math.in.h (truncf): New declaration.
14867         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
14868         HAVE_DECL_TRUNCF.
14869         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
14870         HAVE_DECL_TRUNCF.
14871         * doc/functions/truncf.texi: Mention the 'truncf' module.
14872
14873 2007-10-03  Bruno Haible  <bruno@clisp.org>
14874
14875         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
14876         augmentation also for tests modules.
14877         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
14878         * modules/atexit-tests (Makefile.am): Likewise.
14879         * modules/binary-io-tests (Makefile.am): Likewise.
14880         * modules/c-strcase-tests (Makefile.am): Likewise.
14881         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
14882         * modules/canonicalize-tests (Makefile.am): Likewise.
14883         * modules/closein-tests (Makefile.am): Likewise.
14884         * modules/fprintf-posix-tests (Makefile.am): Likewise.
14885         * modules/freadahead-tests (Makefile.am): Likewise.
14886         * modules/fseek-tests (Makefile.am): Likewise.
14887         * modules/fseeko-tests (Makefile.am): Likewise.
14888         * modules/ftell-tests (Makefile.am): Likewise.
14889         * modules/ftello-tests (Makefile.am): Likewise.
14890         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
14891         * modules/isnanl-tests (Makefile.am): Likewise.
14892         * modules/lseek-tests (Makefile.am): Likewise.
14893         * modules/mbscasecmp-tests (Makefile.am): Likewise.
14894         * modules/mbscasestr-tests (Makefile.am): Likewise.
14895         * modules/mbschr-tests (Makefile.am): Likewise.
14896         * modules/mbscspn-tests (Makefile.am): Likewise.
14897         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
14898         * modules/mbspbrk-tests (Makefile.am): Likewise.
14899         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
14900         * modules/mbsrchr-tests (Makefile.am): Likewise.
14901         * modules/mbsspn-tests (Makefile.am): Likewise.
14902         * modules/mbsstr-tests (Makefile.am): Likewise.
14903         * modules/printf-posix-tests (Makefile.am): Likewise.
14904         * modules/snprintf-posix-tests (Makefile.am): Likewise.
14905         * modules/sprintf-posix-tests (Makefile.am): Likewise.
14906         * modules/tsearch-tests (Makefile.am): Likewise.
14907         * modules/uniname/uniname-tests (Makefile.am): Likewise.
14908         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
14909         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
14910         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
14911         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
14912         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
14913         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
14914         * modules/vprintf-posix-tests (Makefile.am): Likewise.
14915         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
14916         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
14917         * modules/xstrtoimax-tests (Makefile.am): Likewise.
14918         * modules/xstrtol-tests (Makefile.am): Likewise.
14919         * modules/xstrtoumax-tests (Makefile.am): Likewise.
14920         * modules/yesno-tests (Makefile.am): Likewise.
14921
14922 2007-10-03  Bruno Haible  <bruno@clisp.org>
14923
14924         * modules/trunc-tests: New file.
14925         * tests/test-trunc.c: New file.
14926
14927         * modules/trunc: New file.
14928         * lib/trunc.c: New file.
14929         * m4/trunc.m4: New file.
14930         * lib/math.in.h (trunc): New declaration.
14931         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
14932         HAVE_DECL_TRUNC.
14933         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
14934         HAVE_DECL_TRUNC.
14935         * doc/functions/trunc.texi: Mention the 'trunc' module.
14936
14937 2007-10-03  Bruno Haible  <bruno@clisp.org>
14938
14939         * tests/test-fpending.c: New file, mostly copied
14940         from coreutils/lib/t-fpending.c.
14941         * modules/fpending-tests: New file.
14942
14943 2007-10-03  Bruno Haible  <bruno@clisp.org>
14944
14945         Port the stdio extensions to QNX (untested).
14946         * lib/fseterr.c (fseterr): Add support for QNX.
14947         * lib/fbufmode.c (fbufmode): Likewise.
14948         * lib/freadable.c (freadable): Likewise.
14949         * lib/fwritable.c (fwritable): Likewise.
14950         * lib/freading.c (freading): Likewise.
14951         * lib/fwriting.c (fwriting): Likewise.
14952         * lib/freadahead.c (freadahed): Likewise.
14953         * lib/fpurge.c (fpurge): Likewise.
14954         * lib/fseeko.c (rpl_fseeko): Likewise.
14955
14956 2007-10-03  Bruno Haible  <bruno@clisp.org>
14957             Jim Meyering  <jim@meyering.net>
14958             Eric Blake  <ebb9@byu.net>
14959
14960         * doc/relocatable.texi: Use @command instead of @program.
14961
14962 2007-10-02  Jim Meyering  <jim@meyering.net>
14963
14964         Perform one more "_.h" -> ".in.h" substitution.
14965         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
14966         instead of unistd_.h here, too.
14967
14968 2007-10-01  Bruno Haible  <bruno@clisp.org>
14969
14970         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
14971         Needed for the alloca-opt module.
14972
14973 2007-09-30  Bruno Haible  <bruno@clisp.org>
14974
14975         * lib/alloca.in.h: Renamed from lib/alloca_.h.
14976         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
14977         alloca_.h.
14978         * lib/argz.in.h: Renamed from lib/argz_.h.
14979         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
14980         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
14981         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
14982         byteswap_.h.
14983         * lib/dirent.in.h: Renamed from lib/dirent_.h.
14984         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
14985         dirent_.h.
14986         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
14987         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
14988         fcntl_.h.
14989         * lib/float.in.h: Renamed from lib/float_.h.
14990         * modules/float (Files, Makefile.am): Use float.in.h instead of
14991         float_.h.
14992         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
14993         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
14994         fnmatch_.h.
14995         * lib/getopt.in.h: Renamed from lib/getopt_.h.
14996         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
14997         getopt_.h.
14998         * lib/glob.in.h: Renamed from lib/glob_.h.
14999         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
15000         * lib/iconv.in.h: Renamed from lib/iconv_.h.
15001         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
15002         iconv_.h.
15003         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
15004         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
15005         inttypes_.h.
15006         * lib/locale.in.h: Renamed from lib/locale_.h.
15007         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
15008         locale_.h.
15009         * lib/math.in.h: Renamed from lib/math_.h.
15010         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
15011         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
15012         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
15013         of netinet_in_.h. Add dependency.
15014         * lib/poll.in.h: Renamed from lib/poll_.h.
15015         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
15016         * lib/search.in.h: Renamed from lib/search_.h.
15017         * modules/search (Files, Makefile.am): Use search.in.h instead of
15018         search_.h.
15019         * lib/signal.in.h: Renamed from lib/signal_.h.
15020         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
15021         _signal.h.
15022         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
15023         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
15024         stdbool_.h.
15025         * lib/stdint.in.h: Renamed from lib/stdint_.h.
15026         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
15027         stdint_.h.
15028         * lib/stdio.in.h: Renamed from lib/stdio_.h.
15029         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
15030         stdio_.h.
15031         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
15032         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
15033         stdlib_.h.
15034         * lib/string.in.h: Renamed from lib/string_.h.
15035         * modules/string (Files, Makefile.am): Use string.in.h instead of
15036         string_.h.
15037         * doc/gnulib-tool.texi (Initial import): Update.
15038         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
15039         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
15040         of sys_select_.h. Add dependency.
15041         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
15042         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
15043         of sys_socket_.h.
15044         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
15045         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
15046         sys_stat_.h.
15047         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
15048         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
15049         sys_time_.h.
15050         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
15051         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
15052         sysexits_.h.
15053         * lib/time.in.h: Renamed from lib/time_.h.
15054         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
15055         * lib/unistd.in.h: Renamed from lib/unistd_.h.
15056         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
15057         unistd_.h.
15058         * lib/wchar.in.h: Renamed from lib/wchar_.h.
15059         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
15060         wchar_.h.
15061         * lib/wctype.in.h: Renamed from lib/wctype_.h.
15062         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
15063         wctype_.h.
15064         * build-aux/bootstrap (slurp): Update.
15065         * lib/.cppi-disable: Update.
15066
15067 2007-09-30  Bruno Haible  <bruno@clisp.org>
15068
15069         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
15070         Needed on BeOS.
15071
15072 2007-09-30  Bruno Haible  <bruno@clisp.org>
15073
15074         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
15075
15076 2007-09-29  Bruno Haible  <bruno@clisp.org>
15077
15078         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
15079
15080 2007-09-29  Bruno Haible  <bruno@clisp.org>
15081
15082         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
15083         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
15084         * build-aux/install-reloc: Compile also areadlink.c.
15085         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
15086
15087 2007-09-29  Bruno Haible  <bruno@clisp.org>
15088
15089         * gnulib-tool (func_emit_initmacro_done): Indentation.
15090
15091 2007-09-29  Bruno Haible  <bruno@clisp.org>
15092
15093         * README: Add CVS checkout update instructions.
15094         Info from Bob Proulx <bob@proulx.com>.
15095
15096 2007-09-28  Eric Blake  <ebb9@byu.net>
15097
15098         Provide move-if-change.
15099         * build-aux/move-if-change: New file, based on best practice
15100         rather than any canonical upstream location.
15101
15102 2007-09-28  Jim Meyering  <jim@meyering.net>
15103
15104         Fix canonicalize loop-detection corner case.
15105         Do not attempt to stat the symlink values stored via seen_triple.
15106         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
15107         on linux-2.6.18, (but not 2.6.22).
15108         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
15109         triple_compare.  The former compares dev,ino,filename, while the latter
15110         would actually stat dirname(filename) when dev and ino were equal.
15111         * lib/hash-triple.c: Install <string.h>.
15112         (STREQ): Define.
15113         (triple_compare_ino_str): New function.
15114         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
15115
15116 2007-09-28  Eric Blake  <ebb9@byu.net>
15117
15118         Enforce that AC_REPLACE_FUNCS files exist.
15119         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
15120         override check for typos.
15121
15122         Fix test-closein on Solaris 10.
15123         * tests/test-closein.c (main): Don't assume stdin can be inherited
15124         closed on all systems.
15125         * tests/test-closein.sh: Likewise.
15126         Reported by Piotr Tarnowski.
15127
15128 2007-09-28  Jim Meyering  <jim@meyering.net>
15129
15130         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
15131
15132 2007-09-27  Jim Meyering  <jim@meyering.net>
15133
15134         canonicalize: Avoid a false-positive cycle failure.
15135         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
15136         Sort.  Remove cycle-check.
15137         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
15138         not cycle-check.h.
15139         (seen_triple): New function.
15140         (canonicalize_filename_mode): Use it instead of cycle-check.
15141         * tests/test-canonicalize.c: Add a test for this bug.
15142         * tests/test-canonicalize.sh: Set up and run the test.
15143
15144         New module, file-set, from coreutils.
15145         * modules/file-set: Define it.
15146         * lib/file-set.c, lib/file-set.h: Implement.
15147
15148         New module, hash-triple, from coreutils.
15149         * modules/hash-triple: Define it.
15150         * lib/hash-triple.c, lib/hash-triple.h: Implement.
15151
15152 2007-09-25  Eric Blake  <ebb9@byu.net>
15153
15154         Fix strerror on Interix.
15155         * lib/string_.h (strerror): Declare replacement.
15156         * doc/functions/strerror.texi (strerror): Document the Interix
15157         shortcoming.
15158         * modules/string (Makefile.am): Support new hooks.
15159         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
15160         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
15161         gl_FUNC_STRERROR_SEPARATE.
15162         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
15163         * lib/strerror.c (rpl_strerror): Provide replacement.
15164         * modules/strerror (Depends-on): Add string.
15165         (configure.ac): Detect use of module.
15166         * tests/test-strerror.c: New file.
15167         * modules/strerror-tests: New test module.
15168         * modules/argp (Depends-on): Add strerror.
15169         * modules/error (Depends-on): Likewise.
15170         Reported by Martin Koeppe.
15171
15172 2007-09-24  Bruno Haible  <bruno@clisp.org>
15173
15174         * README: Update git instructions.
15175
15176 2007-09-24  Eric Blake  <ebb9@byu.net>
15177
15178         Revert fpending breakage from 2007-09-08.
15179         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
15180         __fpending.c.
15181
15182 2007-09-24  Jim Meyering  <jim@meyering.net>
15183
15184         filenamecat.c: Add a test.
15185         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
15186         showing how the function works when DIR is the empty string.
15187
15188 2007-09-21  Simon Josefsson  <simon@josefsson.org>
15189
15190         * tests/test-canonicalize.sh: Turn on executable bit.
15191
15192 2007-09-19  Eric Blake  <ebb9@byu.net>
15193
15194         * README: Update CVS instructions.
15195
15196 2007-09-18  Bruno Haible  <bruno@clisp.org>
15197
15198         * modules/areadlink: New file.
15199         * lib/areadlink.h (areadlink): New declaration.
15200         * lib/areadlink.c: New file, based on lib/xreadlink.c.
15201
15202 2007-09-17  Jim Meyering  <jim@meyering.net>
15203
15204         * lib/savewd.c (ESTALE) [!defined]: Define.
15205         Reported to be required on Interix by Martin Koeppe.
15206
15207 2007-09-17  Bruno Haible  <bruno@clisp.org>
15208
15209         * gnulib-tool (func_version): Use $version.
15210
15211 2007-09-16  Bruno Haible  <bruno@clisp.org>
15212
15213         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
15214         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
15215         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
15216         Reported by Greg Schafer <gschafer@zip.com.au>.
15217
15218 2007-09-15  Bruno Haible  <bruno@clisp.org>
15219
15220         * gnulib-tool (sed): Try a little harder to make bash understand the
15221         alias.
15222         Reported by Bruce Korb <bruce.korb@gmail.com>.
15223
15224 2007-09-13  Eric Blake  <ebb9@byu.net>
15225
15226         * ChangeLog: Remove conflict markers.
15227
15228 2007-09-13  Simon Josefsson  <simon@josefsson.org>
15229
15230         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
15231         Reported by Bruno Haible <bruno@clisp.org>.
15232
15233 2007-09-12  Bruno Haible  <bruno@clisp.org>
15234
15235         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
15236         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
15237         is not defined.
15238
15239 2007-09-12  Eric Blake  <ebb9@byu.net>
15240
15241         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
15242         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
15243         Autoconf definition.
15244         * modules/euidaccess (Depends-on): Add extensions, for
15245         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
15246         * modules/fnmatch (Depends-on): Likewise.
15247         * modules/getaddrinfo (Depends-on): Likewise.
15248         * modules/getdelim (Depends-on): Likewise.
15249         * modules/getline (Depends-on): Likewise.
15250         * modules/getsubopt (Depends-on): Likewise.
15251         * modules/gettext (Depends-on): Likewise.
15252         * modules/group-member (Depends-on): Likewise.
15253         * modules/mbchar (Depends-on): Likewise.
15254         * modules/memmem (Depends-on): Likewise.
15255         * modules/mempcpy (Depends-on): Likewise.
15256         * modules/memrchr (Depends-on): Likewise.
15257         * modules/pagealign_alloc (Depends-on): Likewise.
15258         * modules/readutmp (Depends-on): Likewise.
15259         * modules/stpcpy (Depends-on): Likewise.
15260         * modules/stpncpy (Depends-on): Likewise.
15261         * modules/strchrnul (Depends-on): Likewise.
15262         * modules/strndup (Depends-on): Likewise.
15263         * modules/strsep (Depends-on): Likewise.
15264         * modules/strverscmp (Depends-on): Likewise.
15265         * modules/vasprintf (Depends-on): Likewise.
15266         * modules/wcwidth (Depends-on): Likewise.
15267         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
15268         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
15269         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
15270         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
15271         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
15272         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
15273         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
15274         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15275         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
15276         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
15277         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
15278         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
15279         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
15280         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
15281         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
15282         * m4/readutmp.m4 (gl_READUTMP): Likewise.
15283         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
15284         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
15285         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
15286         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
15287         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
15288         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
15289         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
15290         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
15291         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
15292         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
15293         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
15294         so that lock.m4 can be used in gettext without extensions module.
15295
15296 2007-09-11  Bruno Haible  <bruno@clisp.org>
15297
15298         * m4/isc-posix.m4: Remove file.
15299         Suggested by Eric Blake.
15300
15301 2007-09-11  Eric Blake  <ebb9@byu.net>
15302
15303         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
15304
15305 2007-09-10  Bruno Haible  <bruno@clisp.org>
15306
15307         * posix-modules: Fix typo in error message.
15308         Reported by Matt <mkraai@beckman.com>.
15309
15310 2007-09-09  Bruno Haible  <bruno@clisp.org>
15311
15312         * doc/functions/getdelim.texi: Update list of platforms lacking the
15313         function.
15314         * doc/functions/getline.texi: Likewise.
15315
15316 2007-09-09  Jim Meyering  <jim@meyering.net>
15317
15318         * lib/hash.c (hash_initialize): Detect calloc failure.
15319         Reported by Bruno Haible.
15320
15321 2007-09-09  Bruno Haible  <bruno@clisp.org>
15322
15323         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
15324         malloc or realloc fails.
15325
15326 2007-09-09  Bruno Haible  <bruno@clisp.org>
15327
15328         * modules/getcwd (Depends-on): Add malloc-posix.
15329         * modules/glob (Depends-on): Likewise.
15330         * modules/putenv (Depends-on): Likewise.
15331         * modules/strdup (Depends-on): Likewise.
15332         * modules/getdelim (Depends-on): Add realloc-posix.
15333         * modules/read-file (Depends-on): Likewise.
15334
15335 2007-09-09  Bruno Haible  <bruno@clisp.org>
15336
15337         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
15338         (gl_FUNC_MALLOC_POSIX): Require it.
15339         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
15340         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
15341         * modules/realloc (Files): Add m4/malloc.m4.
15342         * modules/calloc (Files): Likewise.
15343
15344 2007-09-09  Bruno Haible  <bruno@clisp.org>
15345
15346         * modules/malloc-posix: New file.
15347         * modules/malloc (Depends-on): Add malloc-posix.
15348         * lib/malloc.c: Include errno.h.
15349         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
15350         and a POSIX-compatible malloc into a single function. Set ENOMEM
15351         when returning NULL.
15352         * m4/malloc.m4: New file.
15353         * doc/functions/malloc.texi: Mention the malloc-posix module.
15354         * lib/stdlib_.h (malloc): New declaration.
15355         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
15356         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
15357         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
15358         and HAVE_MALLOC_POSIX.
15359
15360 2007-09-09  Bruno Haible  <bruno@clisp.org>
15361
15362         * modules/realloc-posix: New file.
15363         * modules/realloc (Depends-on): Add realloc-posix.
15364         * lib/realloc.c: Include errno.h.
15365         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
15366         and a POSIX-compatible realloc into a single function. Set ENOMEM
15367         when returning NULL.
15368         * m4/realloc.m4: New file.
15369         * doc/functions/realloc.texi: Mention the realloc-posix module.
15370         * lib/stdlib_.h (realloc): New declaration.
15371         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
15372         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
15373         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
15374         and HAVE_REALLOC_POSIX.
15375
15376 2007-09-09  Bruno Haible  <bruno@clisp.org>
15377
15378         * modules/calloc-posix: New file.
15379         * modules/calloc (Depends-on): Add calloc-posix.
15380         * lib/calloc.c: Include errno.h.
15381         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
15382         and a POSIX-compatible calloc into a single function. Set ENOMEM
15383         when returning NULL.
15384         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
15385         * doc/functions/calloc.texi: Mention the calloc-posix module.
15386         * lib/stdlib_.h (calloc): New declaration.
15387         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
15388         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
15389         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
15390         and HAVE_CALLOC_POSIX.
15391
15392 2007-09-09  Bruno Haible  <bruno@clisp.org>
15393
15394         Allow for modules to show an arbitrary notice.
15395         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
15396         * gnulib-tool: New option --extract-notice.
15397         (func_usage): Document it.
15398         (sed_extract_prog): Update.
15399         (func_get_notice): New function.
15400         (func_modules_notice): New function.
15401         (func_import, func_create_testdir): Invoke it.
15402         Suggested by Jim Meyering.
15403
15404 2007-09-09  Bruno Haible  <bruno@clisp.org>
15405
15406         * gnulib-tool: New options --verbose, --quiet.
15407         (func_usage): Document them.
15408         (verbose): New variable.
15409         (func_execute_command): New function.
15410         (func_import): Don't show the module list and the file list if
15411         $verbose < 0.
15412         (func_create_testdir): Likewise. Use func_execute_command.
15413         (func_create_megatestdir): Use func_execute_command.
15414
15415 2007-09-08  Bruno Haible  <bruno@clisp.org>
15416
15417         * gnulib-tool (func_import): Prefer rsync over wget when available,
15418         for fetching the PO files.
15419
15420 2007-09-08  Bruno Haible  <bruno@clisp.org>
15421
15422         * posix-modules: New file. Portions copied from gnulib-tool.
15423         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
15424
15425 2007-09-08  Jim Meyering  <jim@meyering.net>
15426
15427         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
15428         * lib/fpending.h: Rename from __fpending.h.
15429         * lib/fpending.c: Rename from __fpending.c.
15430         Include "fpending.h", not "__fpending.h".
15431         * lib/__fpending.h, lib/__fpending.c: Remove files.
15432         * modules/fpending (Files): Reflect new file names.
15433         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
15434
15435 2007-09-08  Bruno Haible  <bruno@clisp.org>
15436
15437         * m4/inttypes-h.m4: Remove stub file.
15438
15439 2007-09-07  Simon Josefsson  <simon@josefsson.org>
15440
15441         * doc/headers/stdint.texi: Discuss #include_next issue.
15442
15443 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
15444
15445         * build-aux/bootstrap: Remove obsolete comment about wget --help.
15446
15447 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15448
15449         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
15450         in variable name.
15451
15452 2007-09-03  Jim Meyering  <jim@meyering.net>
15453
15454         New module: git-version-gen.
15455         * modules/git-version-gen: New file.
15456
15457         Import changes from coreutils for bootstrap script.
15458
15459         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
15460
15461         bootstrap: uses rsync to download the .po files
15462         * build-aux/bootstrap (po_download_command_format): New global.
15463         (download_po_files): Use rsync.
15464         (update_po_files): Don't remove .po files after download,
15465         so future rsync runs can take advantage of the copies.
15466
15467         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
15468
15469         Solve the unnecessary-.po-file-regeneration problem once and for all.
15470         * build-aux/bootstrap (download_po_files): New function, renamed from
15471         get_translations.  Now, downloads, but doesn't update LINGUAS.
15472         (update_po_files): New function.
15473
15474         bootstrap: Ignore more.
15475         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
15476         uniwidth to e.g., lib/.gitignore.
15477         (slurp): Handle the sys_stat_.h -> sys mapping, too.
15478
15479         * build-aux/bootstrap: New setting: vc_ignore.
15480         (insert_sorted_if_absent): Create $file if absent.
15481         Adapt to new, possibly empty, list: $vc_ignore.
15482
15483         bootstrap: generate more ignorable names
15484         * build-aux/bootstrap (slurp): When generating ignorable names,
15485         also map .sin to .sed, .gperf to .c, and .y to .c.
15486
15487 2007-09-03  Jim Meyering  <jim@meyering.net>
15488
15489         * build-aux/git-version-gen: New file, from coreutils.  For details, see
15490         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
15491
15492 2007-09-02  Bruno Haible  <bruno@clisp.org>
15493
15494         Fix mis-recognition of 'mcs' on QNX 6.
15495         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
15496         output contains the string "Mono".
15497         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
15498         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
15499
15500 2007-09-01  Bruno Haible  <bruno@clisp.org>
15501
15502         Fix collision between uniwidth/* and linebreak modules.
15503         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
15504         u32_width): Remove declarations.
15505         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
15506         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
15507         streq3, streq2, streq1, streq0): Remove functions.
15508         (STREQ): Remove macro.
15509         (is_cjk_encoding): Remove function.
15510         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
15511         (uc_width, u8_width, u16_width, u32_width): Remove functions.
15512         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
15513         * NEWS: Document the change.
15514
15515 2007-09-01  Bruno Haible  <bruno@clisp.org>
15516
15517         * lib/streq.h: Add double-inclusion guard.
15518
15519 2007-09-01  Karl Berry  <karl@gnu.org>
15520
15521         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
15522
15523 2007-08-28  Jim Meyering  <jim@meyering.net>
15524
15525         Rename mreadlink_with_size to areadlink_with_size.
15526         * NEWS: Document the change.
15527         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
15528         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
15529         * lib/mreadlink.h: Rename this to...
15530         * lib/areadlink.h: ...this.
15531         * modules/mreadlink-with-size: Rename this to...
15532         * modules/areadlink-with-size: ...this.
15533         * lib/canonicalize.c: Reflect the renaming.
15534         * modules/canonicalize: Likewise.
15535
15536 2007-08-26  Bruno Haible  <bruno@clisp.org>
15537
15538         * gnulib-tool (func_import): When deciding which files to remove,
15539         consider also dangling symbolic links.
15540         Reported by Eric Blake.
15541
15542 2007-08-26  Bruno Haible  <bruno@clisp.org>
15543
15544         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
15545
15546 2007-08-23  Simon Josefsson  <simon@josefsson.org>
15547
15548         * lib/readline.c: Don't include getline.h, the prototype is now
15549         found in stdio.h.
15550
15551 2007-08-23  Jim Meyering  <jim@meyering.net>
15552
15553         Getdelim touchup.
15554         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
15555         around the funlockfile call, since funlockfile never sets errno.
15556         Don't set errno upon failed realloc.
15557
15558 2007-08-22  Eric Blake  <ebb9@byu.net>
15559
15560         Getline touchups.
15561         * lib/getdelim.c (getdelim): Revert regression that required *n to
15562         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
15563         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
15564         getdelim, rather than whether implementation is missing.
15565         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
15566         * lib/stdio_.h (getline): Also declare if replacement is
15567         required.
15568         * doc/functions/getdelim.texi: New file.
15569         * doc/functions/getline.texi: Likewise.
15570         * doc/gnulib.texi (Function Substitutes): Add new files.
15571         Reported by Bruno Haible.
15572
15573 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
15574
15575         * users.txt: Add Guile.
15576
15577 2007-08-22  Eric Blake  <ebb9@byu.net>
15578
15579         * tests/test-getdelim.c (main): Use remove, not unlink.
15580         * tests/test-getline.c (main): Likewise.
15581
15582         Move getline and getdelim into stdio.h, per POSIX 200x.
15583         * modules/getline (Files): Remove getline.h.
15584         (Depends-on): Add stdio.
15585         (configure.ac): Add module indicator.
15586         * modules/getdelim (Files): Remove getdelim.h.
15587         (Depends-on): Add stdio.
15588         (configure.ac): Add module indicator.
15589         * modules/stdio (Makefile.am): Work with new indicators.
15590         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
15591         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
15592         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
15593         * lib/getdelim.h: Delete.
15594         * lib/getline.h: Delete.
15595         * lib/stdio_.h (getdelim, getline): Declare.
15596         * modules/getdelim-tests: New module.
15597         * modules/getline-tests: Likewise.
15598         * tests/test-getdelim.c: New file.
15599         * tests/test-getline.c: Likewise.
15600         * NEWS: Document the change.
15601         * lib/getline.c: Update choice of header.
15602         * lib/csharpcomp.c: Likewise.
15603         * lib/getpass.c: Likewise.
15604         * lib/javacomp.c: Likewise.
15605         * lib/javaversion.c: Likewise.
15606         * lib/yesno.c: Likewise.
15607         * lib/getdelim.c: Likewise.
15608         (getdelim): Set errno on failure, and avoid memory leak.
15609
15610 2007-08-19  Bruno Haible  <bruno@clisp.org>
15611
15612         * modules/closein (Depends-on): Add freadahead.
15613         * lib/closein.c: Include freadahead.h.
15614         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
15615         is zero.
15616
15617 2007-08-19  Bruno Haible  <bruno@clisp.org>
15618
15619         * modules/freadahead-tests: New file.
15620         * tests/test-freadahead.sh: New file.
15621         * tests/test-freadahead.c: New file.
15622
15623         * modules/freadahead: New file.
15624         * lib/freadahead.h: New file.
15625         * lib/freadahead.c: New file.
15626         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
15627         fbufmode, fpurge, freadable, fwritable.
15628
15629 2007-08-19  Eric Blake  <ebb9@byu.net>
15630
15631         Test yesno in combination with closein.
15632         * lib/yesno.c (yesno): Document use of stdin.
15633         * modules/yesno-tests (Files): New module.
15634         * tests/test-yesno.c (main): New file.
15635         * tests/test-yesno.sh: Likewise.
15636
15637 2007-08-19  Bruno Haible  <bruno@clisp.org>
15638
15639         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
15640         * lib/fseeko.c (rpl_fseeko): Likewise.
15641         * lib/fseterr.c (fseterr): Likewise.
15642
15643 2007-08-19  Bruno Haible  <bruno@clisp.org>
15644
15645         * tests/test-lseek.c (main): Disable a test for BeOS.
15646         * doc/functions/lseek.texi: Document the BeOS bug.
15647
15648 2007-08-19  Bruno Haible  <bruno@clisp.org>
15649             Eric Blake  <ebb9@byu.net>
15650
15651         * lib/lseek.c: Include <sys/stat.h>.
15652         (rpl_lseek): Add workaround code also for Unix platforms.
15653         Needed for BeOS.
15654         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
15655         * doc/functions/lseek.texi: Document BeOS definiency.
15656
15657 2007-08-18  Bruno Haible  <bruno@clisp.org>
15658
15659         * modules/fstrcmp-tests: New file.
15660         * tests/test-fstrcmp.c: New file.
15661
15662 2007-08-18  Bruno Haible  <bruno@clisp.org>
15663
15664         * modules/fstrcmp: New file, from GNU gettext with modifications.
15665         * lib/fstrcmp.h: New file, from GNU gettext.
15666         * lib/fstrcmp.c: New file, from GNU gettext.
15667         * MODULES.html.sh (String handling): Add fstrcmp.
15668
15669 2007-08-18  Bruno Haible  <bruno@clisp.org>
15670
15671         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
15672         'bool'.
15673         (diag, compareseq): Remove const from the ctxt argument.
15674         (USE_HEURISTIC): Undefine at the end.
15675
15676 2007-08-18  Jim Meyering  <jim@meyering.net>
15677
15678         New file: lib/idcache.h
15679         * NEWS: Mention the addition.
15680         * modules/idcache (Files): Add lib/idcache.h
15681         * lib/idcache.c: Include "idcache.h".
15682         Don't include <sys/types.h>.
15683         Add a FIXME comment.
15684         Move file-scoped "static" declarations to the top.
15685         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
15686
15687 2007-08-17  Bruno Haible  <bruno@clisp.org>
15688         and Paul Eggert  <eggert@cs.ucla.edu>
15689
15690         * MODULES.html.sh: Add diffseq.
15691         * modules/diffseq: New file.
15692         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
15693         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
15694
15695 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15696
15697         Import changes from coreutils for bootstrap script.
15698
15699         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
15700
15701         * build-aux/bootstrap (slurp): Work even in environments where
15702         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
15703         current code does not slurp files whose names start with ".", and
15704         this looks like it might be a troublesome area.
15705
15706         2007-07-11  Jim Meyering  <jim@meyering.net>
15707
15708         If there's a GPL vN copyright comment, require that N == 3.
15709
15710         2007-07-08  Jim Meyering  <jim@meyering.net>
15711
15712         Run the coreutils-specific code only if tests/Makefile.am.in exists.
15713         * build-aux/bootstrap (mam_template): Move definition out of loop.
15714
15715         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
15716
15717         * build-aux/bootstrap (symlink_to_dir): Rename function from
15718         symlink_to_gnulib.  Add a directory parameter.  Update all
15719         callers.
15720         (cp_mark_as_generated): Also check for -- and link to -- files in
15721         gl/.
15722
15723         2007-07-08  Jim Meyering  <jim@meyering.net>
15724
15725         Adapt to deeper hierarchy in gnulib.
15726         * build-aux/bootstrap (symlink_to_dir): If the destination
15727         directory doesn't exist, create it. This is required at least for
15728         "lib/uniwidth/cjk.h".
15729
15730         2007-05-15  Jim Meyering  <jim@meyering.net>
15731
15732         * build-aux/bootstrap: Now that generated Makefile.am files
15733         are no longer under version control, they must be created at
15734         bootstrap time.
15735
15736 2007-08-14  Ben Pfaff  <blp@gnu.org>
15737
15738         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
15739
15740 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15741
15742         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
15743         given the changes below.
15744         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
15745         even on hosts that have padding bits beyond the supported 64.
15746
15747 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15748
15749         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
15750         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
15751         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
15752         depends on it.
15753         (xstrtol_error): Remove.
15754         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
15755         but with a different signature.
15756         (ATTRIBUTE_NORETURN, __attribute__): New macros.
15757         * lib/xstrtol-error.c: Include exitfail.h.
15758         (xstrtol_fatal): New function, with a different signature from the
15759         old xstrtol_error, so that the caller need not worry about passing
15760         in an exit status, or about storage management of the option argument.
15761         (xstrtol_error): Now a static function.  Redo signature to
15762         implement xstrtol_fatal.  Output the correct number of hyphens in
15763         front of the option so that the caller need not worry about
15764         storage management.
15765         (N_): New macro.
15766         (_): Remove; not used now.
15767         * modules/xstrtol: Depend on getopt.
15768         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
15769         of old STRTOL_FATAL_ERROR macro.
15770         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
15771         of test program.
15772         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
15773         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
15774
15775 2007-08-08  Eric Blake  <ebb9@byu.net>
15776
15777         * lib/xstrtol-error.c: Add missing include.
15778
15779         Move xstrtol messages into gnulib domain, when --pobase is used.
15780         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
15781         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
15782         * modules/xstrtol (Files): Distribute new file.
15783         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
15784         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
15785         * tests/test-xstrtol.c: ...into new file.
15786         * tests/test-xstrtoul.c: Also test xstrtoul.
15787         * tests/test-xstrtoimax.c: Also test xstrtoimax.
15788         * tests/test-xstrtoumax.c: Also test xstrtoumax.
15789         * tests/test-xstrtol.sh: Drive the tests.
15790         * tests/test-xstrtoimax.sh: Likewise.
15791         * tests/test-xstrtoumax.sh: Likewise.
15792         * modules/xstrtol-tests: New module.
15793         * modules/xstrtoimax-tests: Likewise.
15794         * modules/xstrtoumax-tests: Likewise.
15795
15796 2007-08-08  Jim Meyering  <jim@meyering.net>
15797
15798         New function: mfile_name_concat.
15799         * lib/filenamecat.c (mfile_name_concat): New function, just like
15800         file_name_concat, but return NULL upon failure rather than exiting
15801         with a diagnostic.
15802         * lib/filenamecat.h: Declare it.
15803
15804 2007-08-07  Bruno Haible  <bruno@clisp.org>
15805
15806         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
15807         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
15808         warning from gcc.
15809         Reported by Eric Blake.
15810
15811 2007-08-07  Simon Josefsson  <simon@josefsson.org>
15812
15813         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
15814         * modules/crypto/arcfour (License): Likewise.
15815         * modules/crypto/des-tests (License): Likewise.
15816         * modules/crypto/gc-arctwo-tests (License): Likewise.
15817         * modules/crypto/gc-des-tests (License): Likewise.
15818         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
15819         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
15820         * modules/crypto/gc-md2-tests (License): Likewise.
15821         * modules/crypto/gc-md4-tests (License): Likewise.
15822         * modules/crypto/gc-md5-tests (License): Likewise.
15823         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
15824         * modules/crypto/gc-rijndael-tests (License): Likewise.
15825         * modules/crypto/gc-sha1-tests (License): Likewise.
15826         * modules/crypto/gc-tests (License): Likewise.
15827         * modules/crypto/hmac-md5 (License): Likewise.
15828         * modules/crypto/hmac-sha1 (License): Likewise.
15829         * modules/crypto/md2-tests (License): Likewise.
15830         * modules/crypto/md4-tests (License): Likewise.
15831         * modules/crypto/md5 (License): Likewise.
15832         * modules/crypto/rijndael (License): Likewise.
15833         * modules/crypto/sha1 (License): Likewise.
15834         * modules/memxor (License): Likewise.
15835
15836 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
15837         and Bruno Haible  <bruno@clisp.org>
15838
15839         * NEWS: Describe interface changes to human, xstrtol.
15840         * lib/human.h: Include <xstrtol.h>.
15841         (human_options): Return enum strtol_error, not int.  Remove
15842         bool arg; take int * instead.
15843         * lib/human.c: Don't include "gettext.h".
15844         (_): Remove; no longer used.
15845         Don't include <xstrtol.h>, since human.h does it.
15846         (human_options): Adjust to abovementioned interface changes.
15847         Do not report error to stderr; that's now the caller's
15848         responsibility.
15849         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
15850         interface change.
15851         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
15852         Str, Argument_type_string.  All uses changed.  Put " argument"
15853         in diagnostics to make them clearer.  Change wording of suffix
15854         message for clarity.
15855         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
15856         Argument_type_string.
15857         (STRTOL_FATAL_WARN): Remove; no longer used.
15858         * modules/human (Depends-on): Remove gettext-h.
15859
15860 2007-08-06  Simon Josefsson  <simon@josefsson.org>
15861
15862         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
15863
15864 2007-07-31  Bruno Haible  <bruno@clisp.org>
15865
15866         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
15867         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
15868         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
15869
15870 2007-07-31  Bruno Haible  <bruno@clisp.org>
15871
15872         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
15873         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
15874
15875 2007-07-30  Bruno Haible  <bruno@clisp.org>
15876
15877         * modules/base64 (License): Use the synonymous term "LGPLv2+".
15878         * modules/c-ctype (License): Likewise.
15879         * modules/c-strcase (License): Likewise.
15880         * modules/check-version (License): Likewise.
15881         * modules/iconv (License): Likewise.
15882         * modules/iconv_open (License): Likewise.
15883         * modules/read-file (License): Likewise.
15884         * modules/striconv (License): Likewise.
15885         * modules/strverscmp (License): Likewise.
15886         * modules/vasprintf (License): Likewise.
15887         * modules/crypto/des (License): Likewise.
15888         * modules/crypto/gc (License): Likewise.
15889         * modules/crypto/gc-arcfour (License): Likewise.
15890         * modules/crypto/gc-arctwo (License): Likewise.
15891         * modules/crypto/gc-des (License): Likewise.
15892         * modules/crypto/gc-hmac-md5 (License): Likewise.
15893         * modules/crypto/gc-hmac-sha1 (License): Likewise.
15894         * modules/crypto/gc-md2 (License): Likewise.
15895         * modules/crypto/gc-md4 (License): Likewise.
15896         * modules/crypto/gc-md5 (License): Likewise.
15897         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
15898         * modules/crypto/gc-random (License): Likewise.
15899         * modules/crypto/gc-rijndael (License): Likewise.
15900         * modules/crypto/gc-sha1 (License): Likewise.
15901         * modules/crypto/md2 (License): Likewise.
15902         * modules/crypto/md4 (License): Likewise.
15903
15904 2007-07-30  Jim Meyering  <jim@meyering.net>
15905
15906         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
15907         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
15908         it has valid stat data.  This bug would cause du not to count the
15909         sizes of inaccessible directories.
15910         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
15911         in <http://bugzilla.redhat.com/250077>.
15912
15913 2007-07-25  Peter O'Gorman  <peter@pogma.com>
15914             Bruno Haible  <bruno@clisp.org>
15915
15916         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
15917         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
15918         #include_next, gives a diagnostic about it, but reports no error in
15919         the exit code.
15920         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
15921
15922 2007-07-24  Ben Pfaff  <blp@gnu.org>
15923
15924         Improve name: "count-one-bits" is better than "popcount".
15925         * MODULES.html.sh: Update name.
15926         * lib/popcount.h: Renamed lib/count-one-bits.h.
15927         (popcount): Renamed count_one_bits.
15928         (popcountl): Renamed count_one_bits_l.
15929         (popcountll): Renamed count_one_bits_ll.
15930         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
15931         * modules/popcount: Renamed module/count-one-bits.
15932         * modules/popcount-tests: Renamed module/count-one-bits-tests.
15933         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
15934
15935 2007-07-23  Ben Pfaff  <blp@gnu.org>
15936
15937         * lib/popcount.h (popcount32): Reduce size of constants, to allow
15938         better code generation, and add U to large constants to avoid
15939         warnings, in non-GCC case.
15940         Suggested by Bruno Haible.
15941
15942 2007-07-23  Ben Pfaff  <blp@gnu.org>
15943
15944         * lib/popcount.h: Use verify_true instead of if...abort.
15945         * modules/popcount: Depend on verify module.
15946         Suggested by Jim Meyering.
15947
15948 2007-07-23  Bruno Haible  <bruno@clisp.org>
15949
15950         * gnulib-tool (func_import): Create a .cvsignore file also when the
15951         directory is not yet in CVS but the toplevel directory is. When
15952         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
15953         Reported by Karl Berry.
15954
15955 2007-07-22  Ben Pfaff  <blp@gnu.org>
15956
15957         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
15958         case.
15959         Suggested by Eric Blake.
15960
15961 2007-07-22  Ben Pfaff  <blp@gnu.org>
15962
15963         New module: popcount.
15964         * MODULES.html.sh: Add popcount.
15965         * modules/popcount: New file.
15966         * modules/popcount-tests: New file.
15967         * tests/test-popcount.c: New file.
15968         * lib/popcount.h: New file.
15969         * m4/popcount.m4: New file.
15970
15971 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15972
15973         * build-aux/announce-gen: Update to GPLv3.
15974
15975         * build-aux/config.guess: Update from config.
15976
15977 2007-07-21  Bruno Haible  <bruno@clisp.org>
15978
15979         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
15980         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
15981
15982 2007-07-20  Jim Meyering  <jim@meyering.net>
15983
15984         * check-module: Diagnose a self-dependency.
15985
15986 2007-07-19  Bruno Haible  <bruno@clisp.org>
15987
15988         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
15989         empty.
15990         Reported by Eric Blake.
15991
15992 2007-07-18  Bruno Haible  <bruno@clisp.org>
15993
15994         * gnulib-tool: New options --po-base, --po-domain.
15995         (func_usage): Document them.
15996         (pobase, po_domain): New variables.
15997         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
15998         DEFAULT_TEXT_DOMAIN.
15999         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
16000         (func_import): Consider pobase and po_domain. Create a po/ directory.
16001         (func_create_testdir): Set pobase and po_domain to empty.
16002         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
16003         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
16004
16005 2007-07-18  Bruno Haible  <bruno@clisp.org>
16006
16007         * gnulib-tool (func_get_automake_snippet): Synthesize also an
16008         EXTRA_DIST augmentation for files in build-aux/.
16009
16010 2007-07-16  Bruno Haible  <bruno@clisp.org>
16011
16012         * modules/lseek (License): Use the synonymous term "LGPLv2+".
16013         * modules/getdelim (License): Likewise.
16014
16015 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16016
16017         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
16018         * modules/d-type (License): Likewise.
16019         * modules/extensions (License): Likewise.
16020         * modules/fnmatch (License): Likewise.
16021         * modules/fseeko (License): Likewise.
16022         * modules/getaddrinfo (License): Likewise.
16023         * modules/getline (License): Likewise.
16024         * modules/getlogin_r (License): Likewise.
16025         * modules/getpass (License): Likewise.
16026         * modules/gettimeofday (License): Likewise.
16027         * modules/glob (License): Likewise.
16028         * modules/inet_ntop (License): Likewise.
16029         * modules/malloc (License): Likewise.
16030         * modules/malloca (License): Likewise.
16031         * modules/memmem (License): Likewise.
16032         * modules/mempcpy (License): Likewise.
16033         * modules/memset (License): Likewise.
16034         * modules/minmax (License): Likewise.
16035         * modules/mktime (License): Likewise.
16036         * modules/netinet_in (License): Likewise.
16037         * modules/pathmax (License): Likewise.
16038         * modules/poll (License): Likewise.
16039         * modules/regex (License): Likewise.
16040         * modules/snprintf (License): Likewise.
16041         * modules/stdbool (License): Likewise.
16042         * modules/stdint (License): Likewise.
16043         * modules/stdio (License): Likewise.
16044         * modules/strcase (License): Likewise.
16045         * modules/strcasestr (License): Likewise.
16046         * modules/strdup (License): Likewise.
16047         * modules/string (License): Likewise.
16048         * modules/strndup (License): Likewise.
16049         * modules/strnlen (License): Likewise.
16050         * modules/strpbrk (License): Likewise.
16051         * modules/strptime (License): Likewise.
16052         * modules/strsep (License): Likewise.
16053         * modules/sys_select (License): Likewise.
16054         * modules/sys_socket (License): Likewise.
16055         * modules/sys_stat (License): Likewise.
16056         * modules/sys_time (License): Likewise.
16057         * modules/time (License): Likewise.
16058         * modules/time_r (License): Likewise.
16059         * modules/timegm (License): Likewise.
16060         * modules/unistd (License): Likewise.
16061         * modules/vsnprintf (License): Likewise.
16062         * modules/wctype (License): Likewise.
16063
16064 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16065
16066         * modules/argz (License): LGPLv2+.
16067
16068 2007-07-15  Karl Berry  <karl@gnu.org>
16069
16070         * doc/gnulib.texi: revise node structure per new fdl.texi.
16071
16072 2007-07-14  Bruno Haible  <bruno@clisp.org>
16073
16074         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
16075         the output file.
16076         * lib/uniname/uninames.h: Regenerated.
16077
16078 2007-07-14  Karl Berry  <karl@gnu.org>
16079
16080         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
16081         omitting sectioning and index commands.
16082
16083 2007-07-13  Bruno Haible  <bruno@clisp.org>
16084
16085         New gnulib-tool option --more-symlinks.
16086         * gnulib-tool (func_usage): Document --more-symlinks.
16087         (do_copyrights): New variable.
16088         Recognize option --more-symlinks.
16089         (func_import): Don't add a copyright notice transform to
16090         sed_transform_lib_file if do_copyrights is empty.
16091
16092 2007-07-13  Bruno Haible  <bruno@clisp.org>
16093
16094         * lib/vasnprintf.c (decimal_point_char): Define also if
16095         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
16096         && !NEED_PRINTF_DIRECTIVE_A.
16097         Reported by Clemens Koller <clemens.koller@anagramm.de> via
16098         Gary V. Vaughan <gary@gnu.org>.
16099
16100 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
16101
16102         * lib/inttypes_.h: Undo previous change, since it was fixed
16103         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
16104
16105 2007-07-13  Bruno Haible  <bruno@clisp.org>
16106
16107         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
16108         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
16109
16110 2007-07-13  Jim Meyering  <jim@meyering.net>
16111
16112         df: Don't fail for Tru64's "file-on-file mount".
16113         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
16114         so we fall through and use statfs instead.  Details here:
16115         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
16116         Reported by Albert Chin.
16117
16118 2007-07-13  Bruno Haible  <bruno@clisp.org>
16119
16120         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
16121         * modules/configmake (License): Likewise.
16122         * modules/gettext (License): Likewise.
16123         * modules/gettext-h (License): Likewise.
16124         * modules/include_next (License): Likewise.
16125         * modules/link-warning (License): Likewise.
16126         * modules/localcharset (License): Likewise.
16127         * modules/localename (License): Likewise.
16128         * modules/lock (License): Likewise.
16129         * modules/relocatable-lib-lgpl (License): Likewise.
16130         * modules/size_max (License): Likewise.
16131         * modules/vasnprintf (License): Likewise.
16132         * modules/wchar (License): Likewise.
16133         * modules/xsize (License): Likewise.
16134
16135 2007-07-13  Bruno Haible  <bruno@clisp.org>
16136
16137         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
16138         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
16139
16140 2007-07-12  Bruno Haible  <bruno@clisp.org>
16141
16142         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
16143         in the modules files.
16144
16145 2007-07-11  Karl Berry  <karl@gnu.org>
16146
16147         * MODULES.html.sh (func_module): use
16148          sed -e '\|^'"${includefile}"'$|d'
16149          instead of /.../d, to avoid errors on $includefile's containing /.
16150
16151 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
16152
16153         * gnulib-tool (func_import): Avoid duplication of --avoid
16154         statements
16155         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
16156         names to `_' in variable names.
16157
16158 2007-07-10  Eric Blake  <ebb9@byu.net>
16159
16160         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
16161         * NEWS: Document this change.
16162
16163 2007-07-08  Bruno Haible  <bruno@clisp.org>
16164
16165         Update to Unicode 5.0.
16166         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
16167         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
16168         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
16169         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
16170         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
16171         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
16172         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
16173         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
16174         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
16175         U+10A3F, U+1D242..U+1D244.
16176         (nonspacing_table_ind): Update.
16177         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
16178         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
16179
16180 2007-07-08  Bruno Haible  <bruno@clisp.org>
16181
16182         Update to Unicode 5.0.
16183         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
16184         code transform. Extend the name index field of unicode_name_to_code and
16185         unicode_code_to_name from 16 to 24 bits.
16186         * lib/uniname/uniname.c (unicode_character_name,
16187         unicode_name_character): Add the range 0x12xxx to the code transform.
16188         * lib/uniname/uninames.h: Regenerated.
16189         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
16190
16191 2007-07-07  Bruno Haible  <bruno@clisp.org>
16192
16193         * modules/wcwidth-tests: New file.
16194         * tests/test-wcwidth.c: New file.
16195
16196         Work around MacOS X wcwidth() bug.
16197         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
16198         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
16199         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
16200         original wcwidth in non-UTF-8 locales.
16201         * modules/wcwidth (Depends-on): Add localcharset, streq,
16202         uniwidth/width.
16203         * doc/functions/wcwidth.texi: Update.
16204
16205 2007-07-07  Bruno Haible  <bruno@clisp.org>
16206
16207         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
16208         (wcwidth): New declaration.
16209         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
16210         macros.
16211         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
16212         here. Prepare for creating <wchar.h> unconditionally.
16213         * modules/wchar (Depends-on): Add link-warning.
16214         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
16215         REPLACE_WCWIDTH, and GL_LINK_WARNING.
16216         * lib/wcwidth.h: Remove file.
16217         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
16218         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
16219         * modules/wcwidth (Files): Remove lib/wcwidth.h.
16220         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
16221         (Include): Replace wcwidth.h with <wchar.h>.
16222         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
16223         * lib/mbchar.h: Don't include wcwidth.h.
16224         * lib/mbswidth.c: Likewise.
16225         * NEWS: Mention the change.
16226
16227 2007-07-07  Bruno Haible  <bruno@clisp.org>
16228
16229         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
16230         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
16231         definition with an external declaration.
16232         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
16233         defined as a function. Remove AC_C_INLINE requirement.
16234         * modules/wcwidth (Files): Add lib/wcwidth.c.
16235         (Makefile.am): Remove redundant statement.
16236
16237 2007-07-07  Bruno Haible  <bruno@clisp.org>
16238
16239         * MODULES.html.sh (Unicode string functions): Add the new modules.
16240
16241         * tests/uniwidth/test-u32-strwidth.c: New file.
16242         * modules/uniwidth/u32-strwidth-tests: New file.
16243
16244         * lib/uniwidth/u32-strwidth.c: New file.
16245         * modules/uniwidth/u32-strwidth: New file.
16246
16247         * tests/uniwidth/test-u16-strwidth.c: New file.
16248         * modules/uniwidth/u16-strwidth-tests: New file.
16249
16250         * lib/uniwidth/u16-strwidth.c: New file.
16251         * modules/uniwidth/u16-strwidth: New file.
16252
16253         * tests/uniwidth/test-u8-strwidth.c: New file.
16254         * modules/uniwidth/u8-strwidth-tests: New file.
16255
16256         * lib/uniwidth/u8-strwidth.c: New file.
16257         * modules/uniwidth/u8-strwidth: New file.
16258
16259         * tests/uniwidth/test-u32-width.c: New file.
16260         * modules/uniwidth/u32-width-tests: New file.
16261
16262         * lib/uniwidth/u32-width.c: New file.
16263         * modules/uniwidth/u32-width: New file.
16264
16265         * tests/uniwidth/test-u16-width.c: New file.
16266         * modules/uniwidth/u16-width-tests: New file.
16267
16268         * lib/uniwidth/u16-width.c: New file.
16269         * modules/uniwidth/u16-width: New file.
16270
16271         * tests/uniwidth/test-u8-width.c: New file.
16272         * modules/uniwidth/u8-width-tests: New file.
16273
16274         * lib/uniwidth/u8-width.c: New file.
16275         * modules/uniwidth/u8-width: New file.
16276
16277         * tests/uniwidth/test-uc_width.c: New file.
16278         * modules/uniwidth/width-tests: New file.
16279
16280         * lib/uniwidth/width.c: New file, from GNU libiconv.
16281         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
16282         * modules/uniwidth/width: New file.
16283
16284         * lib/uniwidth.h: New file, from GNU libiconv.
16285         * modules/uniwidth/base: New file.
16286
16287 2007-07-07  Bruno Haible  <bruno@clisp.org>
16288
16289         * lib/uniname.h: New file, from GNU gettext.
16290         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
16291         * lib/uniname/uninames.h: New file, from GNU gettext.
16292         * lib/uniname/uniname.c: New file, from GNU gettext.
16293         * tests/uniname/test-uninames.sh: New file.
16294         * tests/uniname/test-uninames.c: New file, from GNU gettext.
16295         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
16296         * modules/uniname/base: New file.
16297         * modules/uniname/uniname: New file.
16298         * modules/uniname/uniname-tests: New file.
16299         * MODULES.html.sh (Unicode string functions): Add the new modules.
16300
16301 2007-07-06  Bruno Haible  <bruno@clisp.org>
16302
16303         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
16304
16305 2007-07-06  Bruno Haible  <bruno@clisp.org>
16306
16307         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
16308         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
16309         includes <cygwin/sys_time.h> which includes <sys/select.h> which
16310         include <sys/time.h>.
16311         Reported by Eric Blake.
16312
16313 2007-07-06  Eric Blake  <ebb9@byu.net>
16314
16315         Fix testing canonicalize on cygwin.
16316         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
16317         Revert patch from 2007-06-19.
16318         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
16319         canonicalize module is also in use.
16320         * tests/test-canonicalize.c: New file.
16321         * tests/test-canonicalize.sh: Likewise.
16322         * modules/canonicalize-tests: Likewise.
16323
16324 2007-07-06  Jim Meyering  <jim@meyering.net>
16325
16326         * lib/getugroups.c (getugroups): Detect getgrent failure.
16327         Adjust comment to reflect reality: this function may return -1.
16328
16329 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
16330
16331         * build-aux/bootstrap (TP_URL,get_translations): Update to use
16332         the new TP address.
16333         (usage): Fix typo
16334         (gnulib_mk): New variable.
16335
16336 2007-07-05  Jim Meyering  <jim@meyering.net>
16337
16338         Don't let endgrent clobber errno, no matter how improbable.
16339         * lib/getugroups.c (getugroups): Save and restore errno around
16340         endgrent call.
16341
16342         Close the group DB even when failing with 2^31 or more members.
16343         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
16344
16345 2007-07-04  Jim Meyering  <jim@meyering.net>
16346
16347         * lib/getugroups.h: New file.
16348         * lib/getugroups.c: Include "getugroups.h".
16349         Remove uses of "register" keyword.
16350         Move local variable, "cp", down into scope where used.
16351         Give "username" parameter the "const" attribute.
16352         * modules/getugroups (Files): Add lib/getugroups.h
16353
16354 2007-07-04  Karl Berry  <karl@gnu.org>
16355
16356         * MODULES.html.sh (func_all_modules): Complete rename of
16357         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
16358
16359 2007-07-02  Bruno Haible  <bruno@clisp.org>
16360
16361         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
16362         mode, when inttypes.h comes from gnulib.
16363         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
16364
16365 2007-07-02  Simon Josefsson  <simon@josefsson.org>
16366
16367         * NEWS: Mention lgpl module name change.
16368
16369         * modules/lgpl-2.1: Renamed from lgpl.
16370
16371         * NEWS: Mention gpl module name change.
16372
16373         * modules/gpl-3.0: New file, based on gpl-2.0.
16374
16375         * modules/gpl-2.0: Renamed from gpl.
16376
16377         * modules/gpl: Fix filename, doc/gpl.texi is now found at
16378         doc/gpl-2.0.texi.
16379
16380 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16381
16382         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
16383         #define __STDC_LIMIT_MACROS temporarily while including
16384         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
16385         Problem reported by Joel E. Denny in
16386         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
16387
16388 2007-07-01  Bruno Haible  <bruno@clisp.org>
16389
16390         * lib/unistdio.h: New file.
16391         * lib/unistdio/u-asnprintf.h: New file.
16392         * lib/unistdio/u-asprintf.h: New file.
16393         * lib/unistdio/u-printf-args.c: New file.
16394         * lib/unistdio/u-printf-args.h: New file.
16395         * lib/unistdio/u-printf-parse.h: New file.
16396         * lib/unistdio/u-snprintf.h: New file.
16397         * lib/unistdio/u-sprintf.h: New file.
16398         * lib/unistdio/u-vasprintf.h: New file.
16399         * lib/unistdio/u-vsnprintf.h: New file.
16400         * lib/unistdio/u-vsprintf.h: New file.
16401         * lib/unistdio/ulc-asnprintf.c: New file.
16402         * lib/unistdio/ulc-asprintf.c: New file.
16403         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
16404         * lib/unistdio/ulc-printf-parse.c: New file.
16405         * lib/unistdio/ulc-snprintf.c: New file.
16406         * lib/unistdio/ulc-sprintf.c: New file.
16407         * lib/unistdio/ulc-vasnprintf.c: New file.
16408         * lib/unistdio/ulc-vasprintf.c: New file.
16409         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
16410         * lib/unistdio/ulc-vsnprintf.c: New file.
16411         * lib/unistdio/ulc-vsprintf.c: New file.
16412         * lib/unistdio/u8-asnprintf.c: New file.
16413         * lib/unistdio/u8-asprintf.c: New file.
16414         * lib/unistdio/u8-printf-parse.c: New file.
16415         * lib/unistdio/u8-snprintf.c: New file.
16416         * lib/unistdio/u8-sprintf.c: New file.
16417         * lib/unistdio/u8-vasnprintf.c: New file.
16418         * lib/unistdio/u8-vasprintf.c: New file.
16419         * lib/unistdio/u8-vsnprintf.c: New file.
16420         * lib/unistdio/u8-vsprintf.c: New file.
16421         * lib/unistdio/u8-u8-asnprintf.c: New file.
16422         * lib/unistdio/u8-u8-asprintf.c: New file.
16423         * lib/unistdio/u8-u8-snprintf.c: New file.
16424         * lib/unistdio/u8-u8-sprintf.c: New file.
16425         * lib/unistdio/u8-u8-vasnprintf.c: New file.
16426         * lib/unistdio/u8-u8-vasprintf.c: New file.
16427         * lib/unistdio/u8-u8-vsnprintf.c: New file.
16428         * lib/unistdio/u8-u8-vsprintf.c: New file.
16429         * lib/unistdio/u16-asnprintf.c: New file.
16430         * lib/unistdio/u16-asprintf.c: New file.
16431         * lib/unistdio/u16-printf-parse.c: New file.
16432         * lib/unistdio/u16-snprintf.c: New file.
16433         * lib/unistdio/u16-sprintf.c: New file.
16434         * lib/unistdio/u16-vasnprintf.c: New file.
16435         * lib/unistdio/u16-vasprintf.c: New file.
16436         * lib/unistdio/u16-vsnprintf.c: New file.
16437         * lib/unistdio/u16-vsprintf.c: New file.
16438         * lib/unistdio/u16-u16-asnprintf.c: New file.
16439         * lib/unistdio/u16-u16-asprintf.c: New file.
16440         * lib/unistdio/u16-u16-snprintf.c: New file.
16441         * lib/unistdio/u16-u16-sprintf.c: New file.
16442         * lib/unistdio/u16-u16-vasnprintf.c: New file.
16443         * lib/unistdio/u16-u16-vasprintf.c: New file.
16444         * lib/unistdio/u16-u16-vsnprintf.c: New file.
16445         * lib/unistdio/u16-u16-vsprintf.c: New file.
16446         * lib/unistdio/u32-asnprintf.c: New file.
16447         * lib/unistdio/u32-asprintf.c: New file.
16448         * lib/unistdio/u32-printf-parse.c: New file.
16449         * lib/unistdio/u32-snprintf.c: New file.
16450         * lib/unistdio/u32-sprintf.c: New file.
16451         * lib/unistdio/u32-vasnprintf.c: New file.
16452         * lib/unistdio/u32-vasprintf.c: New file.
16453         * lib/unistdio/u32-vsnprintf.c: New file.
16454         * lib/unistdio/u32-vsprintf.c: New file.
16455         * lib/unistdio/u32-u32-asnprintf.c: New file.
16456         * lib/unistdio/u32-u32-asprintf.c: New file.
16457         * lib/unistdio/u32-u32-snprintf.c: New file.
16458         * lib/unistdio/u32-u32-sprintf.c: New file.
16459         * lib/unistdio/u32-u32-vasnprintf.c: New file.
16460         * lib/unistdio/u32-u32-vasprintf.c: New file.
16461         * lib/unistdio/u32-u32-vsnprintf.c: New file.
16462         * lib/unistdio/u32-u32-vsprintf.c: New file.
16463         * tests/unistdio/test-ulc-asnprintf1.c: New file.
16464         * tests/unistdio/test-ulc-asnprintf1.h: New file.
16465         * tests/unistdio/test-ulc-printf1.h: New file.
16466         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
16467         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
16468         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
16469         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
16470         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
16471         * tests/unistdio/test-ulc-vasprintf1.c: New file.
16472         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
16473         * tests/unistdio/test-ulc-vsprintf1.c: New file.
16474         * tests/unistdio/test-u8-asnprintf1.c: New file.
16475         * tests/unistdio/test-u8-asnprintf1.h: New file.
16476         * tests/unistdio/test-u8-printf1.h: New file.
16477         * tests/unistdio/test-u8-vasnprintf1.c: New file.
16478         * tests/unistdio/test-u8-vasnprintf2.c: New file.
16479         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
16480         * tests/unistdio/test-u8-vasnprintf3.c: New file.
16481         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
16482         * tests/unistdio/test-u8-vasprintf1.c: New file.
16483         * tests/unistdio/test-u8-vsnprintf1.c: New file.
16484         * tests/unistdio/test-u8-vsprintf1.c: New file.
16485         * tests/unistdio/test-u16-asnprintf1.c: New file.
16486         * tests/unistdio/test-u16-asnprintf1.h: New file.
16487         * tests/unistdio/test-u16-printf1.h: New file.
16488         * tests/unistdio/test-u16-vasnprintf1.c: New file.
16489         * tests/unistdio/test-u16-vasnprintf2.c: New file.
16490         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
16491         * tests/unistdio/test-u16-vasnprintf3.c: New file.
16492         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
16493         * tests/unistdio/test-u16-vasprintf1.c: New file.
16494         * tests/unistdio/test-u16-vsnprintf1.c: New file.
16495         * tests/unistdio/test-u16-vsprintf1.c: New file.
16496         * tests/unistdio/test-u32-asnprintf1.c: New file.
16497         * tests/unistdio/test-u32-asnprintf1.h: New file.
16498         * tests/unistdio/test-u32-printf1.h: New file.
16499         * tests/unistdio/test-u32-vasnprintf1.c: New file.
16500         * tests/unistdio/test-u32-vasnprintf2.c: New file.
16501         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
16502         * tests/unistdio/test-u32-vasnprintf3.c: New file.
16503         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
16504         * tests/unistdio/test-u32-vasprintf1.c: New file.
16505         * tests/unistdio/test-u32-vsnprintf1.c: New file.
16506         * tests/unistdio/test-u32-vsprintf1.c: New file.
16507         * modules/unistdio/base: New file.
16508         * modules/unistdio/u-printf-args: New file.
16509         * modules/unistdio/ulc-asnprintf: New file.
16510         * modules/unistdio/ulc-asprintf: New file.
16511         * modules/unistdio/ulc-fprintf: New file.
16512         * modules/unistdio/ulc-printf-parse: New file.
16513         * modules/unistdio/ulc-snprintf: New file.
16514         * modules/unistdio/ulc-sprintf: New file.
16515         * modules/unistdio/ulc-vasnprintf: New file.
16516         * modules/unistdio/ulc-vasprintf: New file.
16517         * modules/unistdio/ulc-vfprintf: New file.
16518         * modules/unistdio/ulc-vsnprintf: New file.
16519         * modules/unistdio/ulc-vsprintf: New file.
16520         * modules/unistdio/u8-asnprintf: New file.
16521         * modules/unistdio/u8-asprintf: New file.
16522         * modules/unistdio/u8-printf-parse: New file.
16523         * modules/unistdio/u8-snprintf: New file.
16524         * modules/unistdio/u8-sprintf: New file.
16525         * modules/unistdio/u8-vasnprintf: New file.
16526         * modules/unistdio/u8-vasprintf: New file.
16527         * modules/unistdio/u8-vsnprintf: New file.
16528         * modules/unistdio/u8-vsprintf: New file.
16529         * modules/unistdio/u8-u8-asnprintf: New file.
16530         * modules/unistdio/u8-u8-asprintf: New file.
16531         * modules/unistdio/u8-u8-snprintf: New file.
16532         * modules/unistdio/u8-u8-sprintf: New file.
16533         * modules/unistdio/u8-u8-vasnprintf: New file.
16534         * modules/unistdio/u8-u8-vasprintf: New file.
16535         * modules/unistdio/u8-u8-vsnprintf: New file.
16536         * modules/unistdio/u8-u8-vsprintf: New file.
16537         * modules/unistdio/u16-asnprintf: New file.
16538         * modules/unistdio/u16-asprintf: New file.
16539         * modules/unistdio/u16-printf-parse: New file.
16540         * modules/unistdio/u16-snprintf: New file.
16541         * modules/unistdio/u16-sprintf: New file.
16542         * modules/unistdio/u16-vasnprintf: New file.
16543         * modules/unistdio/u16-vasprintf: New file.
16544         * modules/unistdio/u16-vsnprintf: New file.
16545         * modules/unistdio/u16-vsprintf: New file.
16546         * modules/unistdio/u16-u16-asnprintf: New file.
16547         * modules/unistdio/u16-u16-asprintf: New file.
16548         * modules/unistdio/u16-u16-snprintf: New file.
16549         * modules/unistdio/u16-u16-sprintf: New file.
16550         * modules/unistdio/u16-u16-vasnprintf: New file.
16551         * modules/unistdio/u16-u16-vasprintf: New file.
16552         * modules/unistdio/u16-u16-vsnprintf: New file.
16553         * modules/unistdio/u16-u16-vsprintf: New file.
16554         * modules/unistdio/u32-asnprintf: New file.
16555         * modules/unistdio/u32-asprintf: New file.
16556         * modules/unistdio/u32-printf-parse: New file.
16557         * modules/unistdio/u32-snprintf: New file.
16558         * modules/unistdio/u32-sprintf: New file.
16559         * modules/unistdio/u32-vasnprintf: New file.
16560         * modules/unistdio/u32-vasprintf: New file.
16561         * modules/unistdio/u32-vsnprintf: New file.
16562         * modules/unistdio/u32-vsprintf: New file.
16563         * modules/unistdio/u32-u32-asnprintf: New file.
16564         * modules/unistdio/u32-u32-asprintf: New file.
16565         * modules/unistdio/u32-u32-snprintf: New file.
16566         * modules/unistdio/u32-u32-sprintf: New file.
16567         * modules/unistdio/u32-u32-vasnprintf: New file.
16568         * modules/unistdio/u32-u32-vasprintf: New file.
16569         * modules/unistdio/u32-u32-vsnprintf: New file.
16570         * modules/unistdio/u32-u32-vsprintf: New file.
16571         * modules/unistdio/ulc-asnprintf-tests: New file.
16572         * modules/unistdio/ulc-vasnprintf-tests: New file.
16573         * modules/unistdio/ulc-vasprintf-tests: New file.
16574         * modules/unistdio/ulc-vsnprintf-tests: New file.
16575         * modules/unistdio/ulc-vsprintf-tests: New file.
16576         * modules/unistdio/u8-asnprintf-tests: New file.
16577         * modules/unistdio/u8-vasnprintf-tests: New file.
16578         * modules/unistdio/u8-vasprintf-tests: New file.
16579         * modules/unistdio/u8-vsnprintf-tests: New file.
16580         * modules/unistdio/u8-vsprintf-tests: New file.
16581         * modules/unistdio/u16-asnprintf-tests: New file.
16582         * modules/unistdio/u16-vasnprintf-tests: New file.
16583         * modules/unistdio/u16-vasprintf-tests: New file.
16584         * modules/unistdio/u16-vsnprintf-tests: New file.
16585         * modules/unistdio/u16-vsprintf-tests: New file.
16586         * modules/unistdio/u32-asnprintf-tests: New file.
16587         * modules/unistdio/u32-vasnprintf-tests: New file.
16588         * modules/unistdio/u32-vasprintf-tests: New file.
16589         * modules/unistdio/u32-vsnprintf-tests: New file.
16590         * modules/unistdio/u32-vsprintf-tests: New file.
16591         * MODULES.html.sh (Unicode string functions): Add the new modules.
16592
16593 2007-07-01  Bruno Haible  <bruno@clisp.org>
16594
16595         * lib/sprintf.c (sprintf): Limit the available length estimation,
16596         to avoid address wraparound.
16597         * lib/vsprintf.c (vsprintf): Likewise.
16598         * modules/sprintf-posix (Dependencies): Add stdint.
16599         * modules/vsprintf-posix (Dependencies): Likewise.
16600
16601 2007-07-01  Bruno Haible  <bruno@clisp.org>
16602
16603         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
16604         Windows PATH as well. Conservative double-quoting. Comments.
16605
16606 2007-07-01  Bruno Haible  <bruno@clisp.org>
16607             Eric Blake  <ebb9@byu.net>
16608             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16609
16610         * gnulib-tool (self_abspathname): Fix algorithm to cope with
16611         empty components in $PATH, denoting '.'.
16612
16613 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16614
16615         * gnulib-tool: Fix indentation.
16616         (func_create_megatestdir): Likewise.
16617         Report by Bruno Haible.
16618
16619 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16620
16621         Sync from Automake.
16622         * build-aux/gnupload: Fix shell portability issues with for loops.
16623         Report by Karl Berry.
16624
16625 2007-06-29  Simon Josefsson  <simon@josefsson.org>
16626
16627         * build-aux/maint.mk (POURL): Use translationproject.org.
16628
16629 2007-06-27  Simon Josefsson  <simon@josefsson.org>
16630             Bruno Haible  <bruno@clisp.org>
16631
16632         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
16633         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
16634         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
16635         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
16636         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
16637
16638 2007-06-27  Bruno Haible  <bruno@clisp.org>
16639
16640         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
16641         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
16642
16643 2007-06-26  Karl Berry  <karl@gnu.org>
16644
16645         * MODULES.html.sh: remove xreadlink-with-size.
16646
16647 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
16648
16649         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
16650         method that I hope also handles the double-include problem noted
16651         by Bruno Haible in
16652         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
16653
16654 2007-06-23  Bruno Haible  <bruno@clisp.org>
16655
16656         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16657         Don't let the 'mostlyclean' target fail if the last subdirectory could
16658         not be removed.
16659         Reported by Karl Berry.
16660
16661 2007-06-23  Bruno Haible  <bruno@clisp.org>
16662
16663         * gnulib-tool (echo): Add a speedier workaround for ksh.
16664         * tests/test-echo.sh: Likewise.
16665
16666 2007-06-23  Bruno Haible  <bruno@clisp.org>
16667
16668         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
16669         * tests/test-echo.sh: Likewise.
16670
16671 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16672
16673         * gnulib-tool (IFS): Initialize early, so we don't set it to
16674         empty later.
16675         (self_abspathname): Rewrite algorithm to set it, reindent.
16676         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
16677         (func_create_megatestdir): Merge some sed scripts.
16678
16679 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
16680
16681         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
16682         exposed by Sun Studio 11 cc on Solaris 8.
16683
16684 2007-06-22  Bruno Haible  <bruno@clisp.org>
16685
16686         * gnulib-tool (echo): Ensure the echo primitive does not interpret
16687         backslashes.
16688         * tests/test-echo.sh: New file.
16689
16690 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16691
16692         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
16693         simplify `sed_replace_build_aux' scripts, they are portable but
16694         echoing them with `echo' is not.
16695         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
16696
16697 2007-06-21  Karl Berry  <karl@gnu.org>
16698
16699         * config/srclist.txt: guess we can't handle the licenses via
16700         srclist at the moment.
16701
16702 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16703
16704         * MODULES.html.sh: Add include_next.
16705         * modules/include_next: New file.
16706
16707 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16708
16709         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
16710         INCLUDE_NEXT.
16711         (gl_CHECK_NEXT_HEADERS): New macro.
16712         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
16713         the obsolescent gl_ABSOLUTE_HEADER.
16714         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
16715         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
16716         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
16717         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
16718         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
16719         * m4/math_h.m4 (gl_MATH_H): Likewise.
16720         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
16721         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
16722         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
16723         * m4/stdint.m4 (gl_STDINT_H): Likewise.
16724         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
16725         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
16726         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
16727         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
16728         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
16729         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
16730         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
16731         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
16732         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
16733         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
16734         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
16735         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
16736         * m4/inttypes.m4 (gl_INTTYPES_H): Define
16737         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
16738         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
16739         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
16740         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
16741         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
16742         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
16743         * lib/float_.h: Likewise.
16744         * lib/inttypes_.h: Likewise.
16745         * lib/math_.h: Likewise.
16746         * lib/search_.h: Likewise.
16747         * lib/signal_.h: Likewise.
16748         * lib/stdint_.h: Likewise.
16749         * lib/stdio_.h: Likewise.
16750         * lib/stdlib_.h: Likewise.
16751         * lib/string_.h: Likewise.
16752         * lib/sys_stat_.h: Likewise.
16753         * lib/sys_time_.h: Likewise.
16754         * lib/time_.h: Likewise.
16755         * lib/unistd_.h: Likewise.
16756         * lib/wchar_.h: Likewise.
16757         * lib/wctype_.h: Likewise.
16758         * lib/dirent_.h: Likewise.
16759         * lib/iconv_.h: Likewise.
16760         * lib/locale_.h: Likewise.
16761         * lib/netinet_in_.h: Likewise.
16762         * lib/sys_select_.h: Likewise.
16763         * lib/sys_socket_.h: Likewise.
16764         * lib/sysexits_.h: Likewise.
16765         * modules/fcntl (Depends-on): Depend on include_next, not
16766         absolute_header.
16767         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
16768         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
16769         * modules/fchdir: Likewise.
16770         * modules/float: Likewise.
16771         * modules/iconv_open: Likewise.
16772         * modules/inttypes: Likewise.
16773         * modules/locale: Likewise.
16774         * modules/math: Likewise.
16775         * modules/netinet_in: Likewise.
16776         * modules/search: Likewise.
16777         * modules/signal: Likewise.
16778         * modules/stdint: Likewise.
16779         * modules/stdio: Likewise.
16780         * modules/stdlib: Likewise.
16781         * modules/string: Likewise.
16782         * modules/sys_select: Likewise.
16783         * modules/sys_socket: Likewise.
16784         * modules/sys_stat: Likewise.
16785         * modules/sys_time: Likewise.
16786         * modules/sysexits: Likewise.
16787         * modules/time: Likewise.
16788         * modules/unistd: Likewise.
16789         * modules/wchar: Likewise.
16790         * modules/wctype: Likewise.
16791         * modules/sys_stat: Change maintainer to "all".
16792         * modules/unistd: Likewise.
16793
16794 2007-06-20  Karl Berry  <karl@gnu.org>
16795
16796         * config/srclist.txt: track www changes in license files.
16797
16798 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
16799
16800         * build-aux/bootstrap: Remove stray dot.
16801         Make sure build_aux settings are honored when linking
16802         gnulib_extra_files.
16803
16804 2007-06-19  Eric Blake  <ebb9@byu.net>
16805
16806         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
16807         Allow compilation on cygwin.
16808
16809 2007-06-19  Jim Meyering  <jim@meyering.net>
16810
16811         xreadlink-with-size: Remove module.  No longer used.
16812         Ex-callers now use xreadlink or mreadlink-with-size.
16813         * modules/xreadlink-with-size: Remove module.
16814         * lib/xreadlink-with-size.c: Remove file.
16815         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
16816         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
16817         just before the function definition *is* accurate.
16818
16819         Eliminate one way canonicalize_filename_mode could exit.
16820         * lib/canonicalize.c (canonicalize_filename_mode):
16821         Use mreadlink_with_size, not xreadlink_with_size.
16822
16823 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
16824
16825         Detect porting problems to FreeBSD/arm, which has time_t wider than
16826         long int.  Original problem reported for GNU diff by Xin Li in
16827         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
16828         * modules/getdate (Depends-on): Add intprops, verify.
16829         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
16830         is an integer type no wider than long int.
16831
16832 2007-06-18  Jim Meyering  <jim@meyering.net>
16833
16834         New module: mreadlink-with-size.
16835         * MODULES.html.sh: Add mreadlink-with-size.
16836         * modules/mreadlink-with-size: New module
16837         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
16838         not xreadlink-with-size.
16839         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
16840
16841 2007-06-16  Bruno Haible  <bruno@clisp.org>
16842
16843         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
16844         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
16845         Reported by Gary V. Vaughan <gary@gnu.org>.
16846
16847 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
16848
16849         Revamp lchown so that it lives in unistd.h where it belongs.
16850         * lib/lchown.h: Remove.
16851         * lib/dirchownmod.c: Don't include lib/lchown.h.
16852         * lib/fchownat.c: Likewise.
16853         * lib/openat.c: Likewise.
16854         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
16855         does not follow symlinks.
16856         (EOPNOTSUPP): Define if not defined.
16857         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
16858         is defined to 0.
16859         (lchown): New decl.
16860         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
16861         Do not check for lchown decl.
16862         Set REPLACE_LCHOWN.
16863         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
16864         REPLACE_LCHOWN.
16865         * modules/chown: Make it clear it follows symlinks.
16866         * modules/lchown: Make it clear it doesn't follow symlinks.
16867         (Files): Remove lib/lchown.h
16868         (Depends-on): Add unistd.
16869         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
16870         (Include): Include <unistd.h>, not "lchown.h".
16871         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
16872         REPLACE_LCHOWN.
16873
16874 2007-06-15  Jim Meyering  <jim@meyering.net>
16875
16876         Change license (GPL to LGPL) of fsusage and dependents.
16877         * modules/fsusage (License): Change to LGPL.
16878         * modules/full-read (License): Likewise.
16879         * modules/full-write (License): Likewise.
16880         * modules/safe-read (License): Likewise.
16881         * modules/safe-write (License): Likewise.
16882
16883 2007-06-14  Ben Pfaff  <blp@gnu.org>
16884
16885         Missing part of allocsa -> malloca transition.
16886         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
16887         gl_MALLOCA.
16888
16889 2007-06-12  Bruno Haible  <bruno@clisp.org>
16890
16891         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
16892         to ia64, x86_64, i386.
16893         Reported by Eric Blake.
16894
16895 2007-06-12  Bruno Haible  <bruno@clisp.org>
16896
16897         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
16898         cross-compiling to x86_64.
16899
16900 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
16901
16902         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
16903         glitch reported by Ralf Wildenhues in
16904         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
16905
16906         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
16907         Vin Shelton.
16908
16909 2007-06-11  Bruno Haible  <bruno@clisp.org>
16910
16911         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
16912         replacement string.
16913         Reported by Eric Blake.
16914
16915 2007-06-10  Bruno Haible  <bruno@clisp.org>
16916
16917         Prepare vasnprintf code for use with Unicode strings.
16918         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
16919         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
16920         TYPE_U32_STRING.
16921         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
16922         a_u32_string variants.
16923         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
16924         * lib/printf-args.c: Don't include config.h and the specification
16925         header if PRINTF_FETCHARGS is already defined.
16926         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
16927         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
16928         TYPE_U16_STRING, TYPE_U32_STRING.
16929         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
16930         u16_directive, u16_directives, u32_directive, u32_directives): New
16931         types.
16932         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
16933         New declarations.
16934         * lib/printf-parse.c: Don't include config.h and the specification
16935         header if PRINTF_PARSE is already defined. Eliminate the set of
16936         parameters for WIDE_CHAR_VERSION; the user of this file must provide
16937         them now. Include c-ctype.h.
16938         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
16939         directive and CHAR_T_ONLY_ASCII.
16940         * lib/vasnprintf.c: Don't include config.h and the specification header
16941         if VASNPRINTF is already defined.
16942         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
16943         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
16944         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
16945         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
16946         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
16947         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
16948         code accordingly.
16949         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
16950         pad_ourselves also in this case, with the 'c' and 's' directives, and
16951         with a different notion of "width".
16952         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
16953
16954 2007-06-10  Bruno Haible  <bruno@clisp.org>
16955
16956         * modules/unistr/u32-mbsnlen: New file.
16957         * lib/unistr/u32-mbsnlen.c: New file.
16958
16959         * modules/unistr/u16-mbsnlen: New file.
16960         * lib/unistr/u16-mbsnlen.c: New file.
16961
16962         * modules/unistr/u8-mbsnlen: New file.
16963         * lib/unistr/u8-mbsnlen.c: New file.
16964
16965         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
16966         declarations.
16967
16968 2007-06-10  Bruno Haible  <bruno@clisp.org>
16969
16970         * lib/string_.h (mbsnlen): New declaration.
16971         * lib/mbsnlen.c: New file.
16972         * m4/mbsnlen.m4: New file.
16973         * modules/mbsnlen: New file.
16974         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
16975         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
16976         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
16977
16978 2007-06-10  Bruno Haible  <bruno@clisp.org>
16979
16980         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
16981
16982 2007-06-10  Bruno Haible  <bruno@clisp.org>
16983
16984         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
16985         * lib/mbuiter.h: Likewise.
16986
16987 2007-06-10  Bruno Haible  <bruno@clisp.org>
16988
16989         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
16990         declaration.
16991
16992 2007-06-10  Karl Berry  <karl@gnu.org>
16993
16994         * config/srclist.txt: remove gettext entries, Bruno prefers
16995         to update individually.
16996
16997 2007-06-10  Bruno Haible  <bruno@clisp.org>
16998
16999         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
17000         'maxlen'. Ensure only length + width bytes are allocated, not
17001         length + 1 + width.
17002
17003 2007-06-09  Bruno Haible  <bruno@clisp.org>
17004
17005         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
17006         (CHAR_T): Remove macro.
17007         (VASNPRINTF): Update.
17008
17009 2007-06-09  Bruno Haible  <bruno@clisp.org>
17010
17011         * MODULES.html.sh (Unicode string functions): Add the new modules.
17012
17013         * modules/uniconv/u32-conv-to-enc: New file.
17014         * lib/uniconv/u32-conv-to-enc.c: New file.
17015         * modules/uniconv/u32-conv-to-enc-tests: New file.
17016         * tests/uniconv/test-u32-conv-to-enc.c: New file.
17017
17018         * modules/uniconv/u16-conv-to-enc: New file.
17019         * lib/uniconv/u16-conv-to-enc.c: New file.
17020         * lib/uniconv/u-conv-to-enc.h: New file.
17021         * modules/uniconv/u16-conv-to-enc-tests: New file.
17022         * tests/uniconv/test-u16-conv-to-enc.c: New file.
17023
17024         * modules/uniconv/u8-conv-to-enc: New file.
17025         * lib/uniconv/u8-conv-to-enc.c: New file.
17026         * modules/uniconv/u8-conv-to-enc-tests: New file.
17027         * tests/uniconv/test-u8-conv-to-enc.c: New file.
17028
17029         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
17030         u32_conv_to_encoding): New declarations.
17031
17032 2007-06-09  Bruno Haible  <bruno@clisp.org>
17033
17034         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
17035
17036 2007-06-09  Bruno Haible  <bruno@clisp.org>
17037
17038         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
17039         * modules/malloca: Renamed from modules/allocsa, updated.
17040         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
17041         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
17042         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
17043         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
17044         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
17045         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
17046         * modules/xmalloca: Renamed from modules/xallocsa, updated.
17047         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
17048         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
17049         * modules/c-strcasestr (Depends-on): Update.
17050         * lib/c-strcasestr.c: Update.
17051         * modules/c-strstr (Depends-on): Update.
17052         * lib/c-strstr.c: Update.
17053         * modules/canonicalize-lgpl (Depends-on): Update.
17054         * lib/canonicalize-lgpl.c: Update.
17055         * modules/clean-temp (Depends-on): Update.
17056         * lib/clean-temp.c: Update.
17057         * modules/csharpcomp (Depends-on): Update.
17058         * lib/csharpcomp.c: Update.
17059         * modules/csharpexec (Depends-on): Update.
17060         * lib/csharpexec.c: Update.
17061         * modules/javacomp (Depends-on): Update.
17062         * lib/javacomp.c: Update.
17063         * modules/javaexec (Depends-on): Update.
17064         * lib/javaexec.c: Update.
17065         * modules/mbscasestr (Depends-on): Update.
17066         * lib/mbscasestr.c: Update.
17067         * modules/mbsstr (Depends-on): Update.
17068         * lib/mbsstr.c: Update.
17069         * modules/setenv (Depends-on): Update.
17070         * lib/setenv.c: Update.
17071         * modules/strcasestr (Depends-on): Update.
17072         * lib/strcasestr.c: Update.
17073         * modules/striconveha (Depends-on): Update.
17074         * lib/striconveha.c: Update.
17075         * modules/relocatable-prog-wrapper (Files): Update.
17076         * lib/relocwrapper.c: Update.
17077         * build-aux/install-reloc: Update.
17078         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
17079
17080 2007-06-08  Bruno Haible  <bruno@clisp.org>
17081
17082         Port to uClibc.
17083         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
17084         * lib/fpurge.c (fpurge): Likewise.
17085         * lib/freading.c (freading): Likewise.
17086         * lib/fseeko.c (rpl_fseeko): Likewise.
17087         * lib/fseterr.c (fseterr): Likewise.
17088         * lib/fwriting.c (fwriting): Likewise.
17089         * tests/test-fflush.c (main): Avoid a failure on uClibc.
17090
17091 2007-06-08  Bruno Haible  <bruno@clisp.org>
17092
17093         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
17094         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
17095         * modules/gettext (Files): Add m4/intlmacosx.m4.
17096
17097 2007-06-07  Bruno Haible  <bruno@clisp.org>
17098
17099         * modules/localename-tests: New file.
17100         * tests/test-localename.c: New file.
17101
17102         New module 'localename'.
17103         * lib/localename.h: New file.
17104         * lib/localename.c: New file, from GNU gettext.
17105         * m4/localename.m4: New file.
17106         * modules/localename: New file.
17107
17108 2007-06-07  Bruno Haible  <bruno@clisp.org>
17109
17110         Work around the lack of <wchar.h> on some builds of uClibc.
17111         * doc/headers/wchar.texi: Update.
17112         * lib/wchar_.h: Include <wchar.h> only if it exists.
17113         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
17114         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
17115         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
17116         doesn't exist.
17117         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
17118         * modules/mbfile (Depends-on): Add wchar.
17119         * modules/mbiter (Depends-on): Likewise.
17120         * modules/mbuiter (Depends-on): Likewise.
17121         Reported by Simon Josefsson.
17122
17123 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
17124
17125         Work around problem reported by Steven M. Schweda in
17126         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
17127         Tru64 5.1B with the Compaq compiler environment installed declares
17128         an 'isblank' function but does not define it in the C library.
17129         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
17130         * lib/regex_internal.h (isblank): Likewise.
17131         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
17132         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
17133
17134 2007-06-05  Bruno Haible  <bruno@clisp.org>
17135
17136         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
17137         ia64.
17138         * modules/printf-safe: New file.
17139         * modules/fprintf-posix (Depends-on): Add printf-safe.
17140         * modules/printf-posix (Depends-on): Likewise.
17141         * modules/snprintf-posix (Depends-on): Likewise.
17142         * modules/sprintf-posix (Depends-on): Likewise.
17143         * modules/vasnprintf-posix (Depends-on): Likewise.
17144         * modules/vasprintf-posix (Depends-on): Likewise.
17145         * modules/vfprintf-posix (Depends-on): Likewise.
17146         * modules/vprintf-posix (Depends-on): Likewise.
17147         * modules/vsnprintf-posix (Depends-on): Likewise.
17148         * modules/vsprintf-posix (Depends-on): Likewise.
17149         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
17150         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
17151         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
17152         "no" on i386, x86_64, ia64.
17153         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
17154         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17155         on i386, x86_64, ia64.
17156         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
17157         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17158         on i386, x86_64, ia64.
17159         * tests/test-vasnprintf-posix.c: Include float.h.
17160         (LDBL80_WORDS): New macro.
17161         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17162         on i386, x86_64, ia64.
17163         * tests/test-vasprintf-posix.c: Include float.h.
17164         (LDBL80_WORDS): New macro.
17165         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17166         on i386, x86_64, ia64.
17167         * tests/test-snprintf-posix.c: Include float.h.
17168         * tests/test-sprintf-posix.c: Likewise.
17169         * tests/test-vsnprintf-posix.c: Likewise.
17170         * tests/test-vsprintf-posix.c: Likewise.
17171
17172 2007-06-05  Bruno Haible  <bruno@clisp.org>
17173
17174         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
17175         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
17176         non-IEEE numbers on i386, x86_64, ia64.
17177         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
17178         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
17179         * tests/test-isnanl.h: Include float.h.
17180         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
17181
17182 2007-06-05  Bruno Haible  <bruno@clisp.org>
17183
17184         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
17185         also the %a / %A. Handle the %a / %A code before this extra handling.
17186
17187 2007-06-05  Bruno Haible  <bruno@clisp.org>
17188
17189         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
17190         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
17191
17192 2007-06-05  Bruno Haible  <bruno@clisp.org>
17193
17194         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
17195         typo in variable name.
17196
17197 2007-06-05  Eric Blake  <ebb9@byu.net>
17198
17199         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
17200         Reported by Simon Josefsson.
17201
17202 2007-06-04  Bruno Haible  <bruno@clisp.org>
17203
17204         Avoid test failures on some PowerPC platforms.
17205         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
17206         Define differently for PowerPC.
17207         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
17208         Reported by Gary V. Vaughan <gary@gnu.org>.
17209
17210 2007-06-02  Bruno Haible  <bruno@clisp.org>
17211
17212         Fix test-stdint failure on FreeBSD/ia64.
17213         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
17214         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
17215         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
17216         * doc/headers/stdint.texi: Update.
17217
17218 2007-06-01  Bruno Haible  <bruno@clisp.org>
17219
17220         * tests/test-binary-io.c (main): Pass a third argument to open().
17221         Reported by Gary V. Vaughan <gary@gnu.org>.
17222
17223 2007-06-01  Bruno Haible  <bruno@clisp.org>
17224
17225         * doc/functions/frexpl.texi: Update for mingw.
17226
17227 2007-06-01  Bruno Haible  <bruno@clisp.org>
17228
17229         * tests/test-lseek.c (main): Disable test of errno for invalid third
17230         argument.
17231         * doc/functions/lseek.texi: Update.
17232         Reported by Gary V. Vaughan <gary@gnu.org>.
17233
17234 2007-05-28  Bruno Haible  <bruno@clisp.org>
17235
17236         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
17237
17238 2007-05-31  Eric Blake  <ebb9@byu.net>
17239
17240         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
17241         cross compiling.
17242
17243 2007-05-30  Eric Blake  <ebb9@byu.net>
17244         and Bruno Haible  <bruno@clisp.org>
17245
17246         Work around mingw test failures exposed by m4-1.4.9b.
17247         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
17248         * tests/test-unistd.c: Disable uid_t and git_t tests for the
17249         moment.
17250
17251 2007-05-30  Bruno Haible  <bruno@clisp.org>
17252
17253         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
17254         assuming that they are closed. Needed on HP-UX 11.
17255
17256 2007-05-29  Bruno Haible  <bruno@clisp.org>
17257
17258         Fix a problem with #include_next.
17259         * lib/dirent_.h: Split the double-inclusion guard.
17260         * lib/fcntl_.h: Likewise.
17261         * lib/float_.h: Likewise.
17262         * lib/iconv_.h: Likewise.
17263         * lib/inttypes_.h: Likewise.
17264         * lib/locale_.h: Likewise.
17265         * lib/math_.h: Likewise.
17266         * lib/netinet_in_.h: Likewise.
17267         * lib/search_.h: Likewise.
17268         * lib/signal_.h: Likewise.
17269         * lib/stdint_.h: Likewise.
17270         * lib/stdio_.h: Likewise.
17271         * lib/stdlib_.h: Likewise.
17272         * lib/string_.h: Likewise.
17273         * lib/sys_select_.h: Likewise.
17274         * lib/sys_socket_.h: Likewise.
17275         * lib/sys_stat_.h: Likewise.
17276         * lib/sys_time_.h: Likewise.
17277         * lib/sysexits_.h: Likewise.
17278         * lib/time_.h: Likewise.
17279         * lib/unistd_.h: Likewise.
17280         * lib/wchar_.h: Likewise.
17281         * lib/wctype_.h: Likewise.
17282
17283 2007-05-29  Bruno Haible  <bruno@clisp.org>
17284
17285         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
17286         for the moment.
17287
17288 2007-05-29  Bruno Haible  <bruno@clisp.org>
17289
17290         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
17291         invocation.
17292         Reported by Eric Blake.
17293
17294 2007-05-29  Bruno Haible  <bruno@clisp.org>
17295
17296         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
17297         compiling case.
17298
17299 2007-05-29  Eric Blake  <ebb9@byu.net>
17300             Bruno Haible  <bruno@clisp.org>
17301
17302         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
17303         cross compiles.
17304
17305 2007-05-28  Eric Blake  <ebb9@byu.net>
17306
17307         * modules/closein-tests (test_closein_LDADD): Support test on
17308         cygwin with libtool.
17309
17310 2007-05-28  Bruno Haible  <bruno@clisp.org>
17311
17312         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
17313         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
17314         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
17315         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
17316         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
17317         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
17318         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
17319         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
17320         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
17321
17322 2007-05-28  Eric Blake  <ebb9@byu.net>
17323
17324         Unconditionally include <config.h> in unit tests.
17325         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
17326         * tests/test-allocsa.c, tests/test-arcfour.c,
17327         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
17328         tests/test-array_list.c, tests/test-array_oset.c,
17329         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
17330         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
17331         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
17332         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
17333         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
17334         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
17335         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
17336         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
17337         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
17338         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
17339         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
17340         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
17341         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
17342         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
17343         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
17344         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
17345         test-md5.c, test-memmem.c, test-printf-posix.c,
17346         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
17347         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
17348         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
17349         test-strcasestr.c, test-striconv.c, test-striconveh.c,
17350         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
17351         test-vasnprintf-posix2.c, test-vasnprintf.c,
17352         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
17353         test-vfprintf-posix.c, test-vprintf-posix.c,
17354         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
17355         test-xvasprintf.c: Likewise.
17356
17357 2007-05-28  Bruno Haible  <bruno@clisp.org>
17358
17359         * gnulib-tool (func_import): Remember the --with-tests command-line
17360         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
17361         Reported by Eric Blake.
17362
17363 2007-05-28  Bruno Haible  <bruno@clisp.org>
17364
17365         * modules/ftell-tests: New file.
17366         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
17367         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
17368
17369         * lib/ftell.c: New file.
17370         * modules/ftell: New file.
17371         * m4/ftell.m4: New file.
17372         * doc/functions/ftell.texi: Update.
17373         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
17374         REPLACE_FTELL.
17375         * lib/stdio_.h (rpl_ftell): New declaration.
17376         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
17377         REPLACE_FTELL.
17378
17379 2007-05-28  Eric Blake  <ebb9@byu.net>
17380
17381         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
17382
17383 2007-05-28  Bruno Haible  <bruno@clisp.org>
17384
17385         * modules/fseek-tests: New file.
17386         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
17387         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
17388
17389         * lib/fseek.c: New file.
17390         * modules/fseek: New file.
17391         * m4/fseek.m4: New file.
17392         * doc/functions/fseek.texi: Update.
17393         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
17394         REPLACE_FSEEK.
17395         * lib/stdio_.h (rpl_fseek): New declaration.
17396         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
17397         REPLACE_FSEEK.
17398
17399 2007-05-28  Bruno Haible  <bruno@clisp.org>
17400
17401         * lib/stdio_.h (fflush): More comments.
17402
17403 2007-05-28  Bruno Haible  <bruno@clisp.org>
17404
17405         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
17406         runtime test.
17407
17408 2007-05-28  Eric Blake  <ebb9@byu.net>
17409
17410         Improve lseek module.
17411         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
17412         * lib/unistd_.h (lseek): Scale back link warning message.
17413         * tests/test-lseek.c: Beef up test.
17414         * tests/test-lseek.sh: Exercise more facets of lseek.
17415         Reported by Bruno Haible.
17416
17417 2007-05-28  Bruno Haible  <bruno@clisp.org>
17418
17419         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
17420         to define.
17421
17422 2007-05-27  Bruno Haible  <bruno@clisp.org>
17423
17424         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
17425
17426 2007-05-27  Bruno Haible  <bruno@clisp.org>
17427
17428         * modules/openmp: New file.
17429         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
17430         Noah Misch.
17431
17432 2007-05-26  Bruno Haible  <bruno@clisp.org>
17433
17434         * modules/chdir-long (Depends-on): Add fchdir.
17435         * modules/chdir-safer (Depends-on): Likewise.
17436         * modules/fts (Depends-on): Likewise.
17437         * modules/fts-lgpl (Depends-on): Likewise.
17438         * modules/openat (Depends-on): Likewise.
17439         * modules/savewd (Depends-on): Likewise.
17440
17441 2007-05-24  Eric Blake  <ebb9@byu.net>
17442
17443         Fix lseek on mingw.
17444         * modules/lseek: New module.
17445         * m4/lseek.m4: New file.
17446         * lib/lseek.c: New file.
17447         * modules/lseek-tests: New file.
17448         * tests/test-lseek.c: New file.
17449         * tests/test-lseek.sh: New file.
17450         * MODULES.html.sh: Document lseek module.
17451         * modules/fflush (Depends-on): Add lseek, fseeko.
17452         * modules/fseeko (Depends-on): Likewise.
17453         * modules/ftello (Depends-on): Likewise.
17454         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
17455         broken.
17456         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
17457         broken.
17458         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
17459         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
17460         * lib/ftello.c (rpl_ftello): Likewise.
17461         * tests/test-fseeko.c (main): Test this.
17462         * tests/test-fseeko.sh: Likewise.
17463         * tests/test-ftello.c (main): Likewise.
17464         * tests/test-ftello.sh: Likewise.
17465         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
17466         implies replacing fseek.
17467         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
17468         HAVE_FTELLO.
17469         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
17470         * modules/unistd (Makefile.am): Likewise.
17471         * lib/unistd_.h (lseek): Declare a replacement.
17472         * doc/functions/lseek.texi (lseek): Document this fix.
17473         * doc/functions/fseek.texi (fseek): Likewise.
17474         * doc/functions/ftell.texi (ftell): Likewise.
17475
17476 2007-05-24  Bruno Haible  <bruno@clisp.org>
17477
17478         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
17479         in the printed representation of a NaN.
17480         * tests/test-vasprintf-posix.c (test_function): Likewise.
17481         * tests/test-snprintf-posix.h (test_function): Likewise.
17482         * tests/test-sprintf-posix.h (test_function): Likewise.
17483         Reported by Eric Blake.
17484
17485 2007-05-23  Eric Blake  <ebb9@byu.net>
17486
17487         Fix fseeko/ftello on cygwin 1.5.24.
17488         * doc/functions/fseeko.texi (fseeko): Document the fix.
17489         * doc/functions/ftello.texi (ftello): Document the fix.
17490         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
17491         * doc/functions/stdout.text (stdout): New file.
17492         * doc/functions/stderr.text (stderr): New file.
17493         * doc/gnulib.texi (Function Substitutes): Use new files.
17494         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
17495         prior to 1.7.0.
17496         * tests/test-ftello.c (main): Likewise for ftello.
17497         * tests/test-fseeko.sh: New file.
17498         * tests/test-ftello.sh: New file.
17499         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
17500         with seekable stdin.
17501         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
17502         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
17503         (gl_REPLACE_FSEEKO): New macro.
17504         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
17505         * modules/fseeko (Files): Distribute fseeko.c.
17506         * modules/ftello (Files): Distribute ftello.c.
17507         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
17508         mode.
17509         * lib/ftello.c (rpl_ftello): New file.
17510         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
17511         fseeko, ftello.
17512         (gl_STDIN_LARGE_OFFSET): New macro.
17513         * modules/stdio (Makefile.am): Perform the replacement.
17514         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
17515
17516 2007-05-23  Bruno Haible  <bruno@clisp.org>
17517
17518         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
17519         GNULIB_POSIXCHECK is defined.
17520
17521 2007-05-21  Bruno Haible  <bruno@clisp.org>
17522
17523         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
17524         Check also the output for NaN arguments. When cross-compiling, guess
17525         no on IRIX.
17526         * lib/vasnprintf.c: Update comments.
17527         * tests/test-vasnprintf-posix.c (strisnan): New function.
17528         (test_function): Use it.
17529         * tests/test-vasprintf-posix.c (strisnan): New function.
17530         (test_function): Use it.
17531         * tests/test-snprintf-posix.h (strisnan): New function.
17532         (test_function): Use it.
17533         * tests/test-sprintf-posix.h (strisnan): New function.
17534         (test_function): Use it.
17535         Reported by Eric Blake.
17536
17537 2007-05-20  Bruno Haible  <bruno@clisp.org>
17538
17539         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
17540         numbers that fails on BeOS.
17541         * doc/functions/frexpl.texi: Update.
17542
17543 2007-05-20  Jim Meyering  <jim@meyering.net>
17544
17545         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
17546         forced upon us by glibc-2.6.
17547
17548 2007-05-20  Bruno Haible  <bruno@clisp.org>
17549
17550         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
17551         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
17552         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
17553         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
17554         NEED_PRINTF_INFINITE.
17555         (is_infinitel): New function.
17556         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
17557         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
17558         gl_PREREQ_VASNPRINTF_INFINITE.
17559         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
17560         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17561         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
17562         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
17563         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
17564         gl_PREREQ_VASNPRINTF_INFINITE.
17565         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17566         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17567         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17568         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17569         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17570         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17571         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17572         * doc/functions/fprintf.texi: Update.
17573         * doc/functions/printf.texi: Update.
17574         * doc/functions/snprintf.texi: Update.
17575         * doc/functions/sprintf.texi: Update.
17576         * doc/functions/vfprintf.texi: Update.
17577         * doc/functions/vprintf.texi: Update.
17578         * doc/functions/vsnprintf.texi: Update.
17579         * doc/functions/vsprintf.texi: Update.
17580
17581 2007-05-20  Bruno Haible  <bruno@clisp.org>
17582
17583         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
17584         was not found in libc.
17585         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
17586
17587 2007-05-20  Bruno Haible  <bruno@clisp.org>
17588
17589         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
17590         printed as "-nan" instead of "nan".
17591         * tests/test-vasprintf-posix.c (test_function): Likewise.
17592         * tests/test-snprintf-posix.h (test_function): Likewise.
17593         * tests/test-sprintf-posix.h (test_function): Likewise.
17594         Needed for HP-UX 11.
17595
17596 2007-05-20  Jim Meyering  <jim@meyering.net>
17597
17598         Fix buggy test for the fchownat-deref bug.
17599         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
17600         symlink required for the run-test.  Without it, this test would
17601         always declare that fchownat doesn't work, and client code would
17602         unnecessarily use the replacement function with fixed libc.
17603         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
17604         Reported by Greg Schafer.
17605
17606 2007-05-19  Bruno Haible  <bruno@clisp.org>
17607
17608         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
17609         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
17610         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
17611         Needed for IRIX 6.5 and Solaris 2.5.1.
17612
17613 2007-05-19  Bruno Haible  <bruno@clisp.org>
17614
17615         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
17616         (test_function): Skip tests involving -0.0 on platforms where
17617         -0.0 = 0.0.
17618         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
17619         (test_function): Skip tests involving -0.0 on platforms where
17620         -0.0 = 0.0.
17621         * tests/test-snprintf-posix.h (have_minus_zero): New function.
17622         (test_function): Skip tests involving -0.0 on platforms where
17623         -0.0 = 0.0.
17624         * tests/test-sprintf-posix.h (have_minus_zero): New function.
17625         (test_function): Skip tests involving -0.0 on platforms where
17626         -0.0 = 0.0.
17627         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
17628         tests.
17629         * tests/test-printf-posix.h (test_function): Likewise.
17630         * tests/test-printf-posix.output: Remove all -0.0 related results.
17631         Needed for IRIX 6.5.
17632
17633 2007-05-19  Bruno Haible  <bruno@clisp.org>
17634
17635         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
17636         printed as "nan0x7fffffff" instead of "nan".
17637         * tests/test-vasprintf-posix.c (test_function): Likewise.
17638         * tests/test-snprintf-posix.h (test_function): Likewise.
17639         * tests/test-sprintf-posix.h (test_function): Likewise.
17640         * tests/test-fprintf-posix.h (NaN): Remove macro.
17641         (test_function): Remove all NaN related tests.
17642         * tests/test-printf-posix.h (NaN): Remove macro.
17643         (test_function): Remove all NaN related tests.
17644         * tests/test-printf-posix.output: Remove all NaN related results.
17645         Needed for IRIX 6.5.
17646
17647 2007-05-19  Bruno Haible  <bruno@clisp.org>
17648
17649         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
17650         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
17651
17652 2007-05-19  Bruno Haible  <bruno@clisp.org>
17653
17654         * lib/float_.h: New file.
17655         * m4/float_h.m4: New file.
17656         * modules/float: New file.
17657         * modules/isnanl (Dependencies): Add float.
17658         * modules/isnanl-nolibm (Dependencies): Likewise.
17659         * modules/mathl (Dependencies): Likewise.
17660         * modules/printf-frexpl (Dependencies): Likewise.
17661         * modules/signbit (Dependencies): Likewise.
17662         * modules/vasnprintf (Dependencies): Likewise.
17663         * doc/headers/float.texi: Update.
17664
17665 2007-05-19  Jim Meyering  <jim@meyering.net>
17666
17667         * lib/utimens.c (gl_futimens): Rename from futimens,
17668         now that glibc-2.6 declares futimens.
17669         * lib/utimens.h: Likewise.
17670
17671 2007-05-19  Bruno Haible  <bruno@clisp.org>
17672
17673         Avoid test failures on mingw.
17674         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
17675         * tests/test-printf-posix.sh: Likewise.
17676         * tests/test-vfprintf-posix.sh: Likewise.
17677         * tests/test-vprintf-posix.sh: Likewise.
17678
17679 2007-05-19  Bruno Haible  <bruno@clisp.org>
17680
17681         Fix *printf result for NaN, Inf, -0.0 on mingw.
17682         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
17683         * lib/vasnprintf.c: Include math.h and isnan.h.
17684         (is_infinite_or_zero): New function.
17685         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
17686         values in the %f, %F, %e, %E, %g, %G directives.
17687         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
17688         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17689         gl_PRINTF_INFINITE and test its result. Invoke
17690         gl_PREREQ_VASNPRINTF_INFINITE.
17691         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17692         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17693         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17694         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17695         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17696         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17697         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17698         * doc/functions/fprintf.texi: Update.
17699         * doc/functions/printf.texi: Update.
17700         * doc/functions/snprintf.texi: Update.
17701         * doc/functions/sprintf.texi: Update.
17702         * doc/functions/vfprintf.texi: Update.
17703         * doc/functions/vprintf.texi: Update.
17704         * doc/functions/vsnprintf.texi: Update.
17705         * doc/functions/vsprintf.texi: Update.
17706
17707 2007-05-19  Bruno Haible  <bruno@clisp.org>
17708
17709         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
17710         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
17711         Instead of multiplying with 10^k, set extra_zeroes to k.
17712         (scale10_round_long_double): Remove function.
17713
17714 2007-05-18  Bruno Haible  <bruno@clisp.org>
17715
17716         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
17717         introduced on 2007-05-06.
17718
17719 2007-05-18  Bruno Haible  <bruno@clisp.org>
17720
17721         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
17722         %g directives.
17723         * tests/test-vasprintf-posix.c (test_function): Likewise.
17724         * tests/test-snprintf-posix.h (test_function): Likewise.
17725         * tests/test-sprintf-posix.h (test_function): Likewise.
17726
17727 2007-05-18  Bruno Haible  <bruno@clisp.org>
17728
17729         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
17730         (strmatch): New function.
17731         (test_function): Test the %f directive on numbers of various exponents.
17732         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
17733         (strmatch): New function.
17734         (test_function): Test the %f directive on numbers of various exponents.
17735         * tests/test-snprintf-posix.h (strmatch): New function.
17736         (test_function): Test the %f directive on numbers of various exponents.
17737         * tests/test-sprintf-posix.h (strmatch): New function.
17738         (test_function): Test the %f directive on numbers of various exponents.
17739         * tests/test-snprintf-posix.c (SIZEOF): New macro.
17740         * tests/test-sprintf-posix.c (SIZEOF): New macro.
17741         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
17742         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
17743
17744 2007-05-18  Bruno Haible  <bruno@clisp.org>
17745
17746         Add support for 'long double' number output.
17747         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
17748         * lib/vasnprintf.c: Include math.h and float+.h.
17749         (mp_limb_t): New type.
17750         (GMP_LIMB_BITS): New macro.
17751         (mp_twolimb_t): New type.
17752         (GMP_TWOLIMB_BITS): New macro.
17753         (mpn_t): New type.
17754         (multiply, divide, convert_to_decimal, decode_long_double,
17755         scale10_round_long_double, scale10_round_decimal_long_double,
17756         floorlog10l): New functions.
17757         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
17758         for the %f, %F, %e, %E, %g, %G directives.
17759         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
17760         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17761         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
17762         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
17763         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17764         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17765         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17766         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17767         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17768         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17769         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17770         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
17771         * modules/snprintf-posix (Depends-on): Likewise.
17772         * modules/sprintf-posix (Depends-on): Likewise.
17773         * modules/vasnprintf-posix (Depends-on): Likewise.
17774         * modules/vasprintf-posix (Depends-on): Likewise.
17775         * modules/vfprintf-posix (Depends-on): Likewise.
17776         * modules/vsnprintf-posix (Depends-on): Likewise.
17777         * modules/vsprintf-posix (Depends-on): Likewise.
17778         * modules/vasnprintf (Files): Add lib/float+.h.
17779         * doc/functions/fprintf.texi: Update.
17780         * doc/functions/printf.texi: Update.
17781         * doc/functions/snprintf.texi: Update.
17782         * doc/functions/sprintf.texi: Update.
17783         * doc/functions/vfprintf.texi: Update.
17784         * doc/functions/vprintf.texi: Update.
17785         * doc/functions/vsnprintf.texi: Update.
17786         * doc/functions/vsprintf.texi: Update.
17787
17788 2007-05-18  Bruno Haible  <bruno@clisp.org>
17789
17790         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
17791
17792 2007-05-18  Bruno Haible  <bruno@clisp.org>
17793
17794         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
17795         for printing 64-bit integers. Needed for mingw.
17796
17797 2007-05-18  Bruno Haible  <bruno@clisp.org>
17798
17799         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
17800         gl_FUNC_FREXPL_WORKS.
17801         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
17802
17803 2007-05-18  Bruno Haible  <bruno@clisp.org>
17804
17805         * modules/frexpl-nolibm-tests: New file.
17806
17807         * modules/frexpl-nolibm: New file.
17808         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
17809
17810 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
17811
17812         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
17813         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
17814         GCC 4.2, which otherwise issues a lot of warnings.
17815         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
17816         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
17817         Likewise.
17818         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
17819         * modules/iconv_open (iconv.h): Likewise.
17820         * modules/locale (locale.h): Likewise.
17821         * modules/netinet_in (netinet/in.h): Likewise.
17822         * modules/sys_select (sys_select.h): Likewise.
17823         * modules/sys_socket (sys/socket.h): Likewise.
17824         * modules/sys_stat (sys/stat.h): Likewise.
17825         * modules/sysexits (sysexits.h): Likewise.
17826         * modules/unistd (unistd.h): Likewise.
17827
17828 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17829
17830         * modules/closein-tests (Makefile.am): Distribute
17831         `test-closein.sh'.
17832
17833 2007-05-17  Bruno Haible  <bruno@clisp.org>
17834
17835         * tests/test-printf-posix.output: Renamed from
17836         tests/test-fprintf-posix.out.
17837         * modules/fprintf-posix-tests: Update.
17838         * modules/printf-posix-tests: Update.
17839         * modules/vfprintf-posix-tests: Update.
17840         * modules/vprintf-posix-tests: Update.
17841         * tests/test-fprintf-posix.sh: Update.
17842         * tests/test-printf-posix.sh: Update.
17843         * tests/test-vfprintf-posix.sh: Update.
17844         * tests/test-vprintf-posix.sh: Update.
17845         Reported by Ralf Wildenhues.
17846
17847 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
17848
17849         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
17850         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
17851         GCC 4.2, which otherwise issues a lot of warnings.
17852         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
17853         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
17854         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
17855         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
17856         it should no longer be needed.
17857         * lib/string_.h: Likewise.
17858         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
17859         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
17860         * modules/inttypes (inttypes.h): Likewise.
17861         * modules/math (math.h): Likewise.
17862         * modules/search (search.h): Likewise.
17863         * modules/signal (signal.h): Likewise.
17864         * modules/stdint (stdint.h): Likewise.
17865         * modules/stdio (stdio.h): Likewise.
17866         * modules/stdlib (stdlib.h): Likewise.
17867         * modules/string (string.h): Likewise.
17868         * modules/sys_time (sys/time.h): Likewise.
17869         * modules/time (time.h): Likewise.
17870         * modules/wchar (wchar.h): Likewise.
17871         * modules/wctype (wtype.h): Likewise.
17872
17873 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
17874
17875         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
17876
17877 2007-05-13  Bruno Haible  <bruno@clisp.org>
17878
17879         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
17880         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
17881         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
17882         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17883         (gl_PREREQ_STRTOK_R): Don't require it here.
17884
17885 2007-05-13  Bruno Haible  <bruno@clisp.org>
17886
17887         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
17888         when used in C++ mode.
17889
17890 2007-05-12  Bruno Haible  <bruno@clisp.org>
17891
17892         * lib/linebuffer.h: Tweak doc.
17893         * lib/linebuffer.c: Likewise.
17894
17895 2007-05-12  James Youngman  <jay@gnu.org>
17896
17897         * lib/linebuffer.c (readlinebuffer_delim): New function,
17898         like readlinebuffer, but use a caller-specified delimiter.
17899         (readlinebuffer): Just call readlinebuffer_delim with '\n'
17900         as the delimiter.
17901         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
17902
17903 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
17904
17905         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
17906         * modules/openat (Files): Remove openat-die.c.
17907         (Depends-on): Add openat-die.
17908         * modules/openat-die: New module.
17909
17910 2007-05-06  Bruno Haible  <bruno@clisp.org>
17911
17912         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
17913         Update with info about Cygwin.
17914         * doc/functions/fprintf.texi: Update.
17915         * doc/functions/printf.texi: Update.
17916         * doc/functions/snprintf.texi: Update.
17917         * doc/functions/sprintf.texi: Update.
17918         * doc/functions/vfprintf.texi: Update.
17919         * doc/functions/vprintf.texi: Update.
17920         * doc/functions/vsnprintf.texi: Update.
17921         * doc/functions/vsprintf.texi: Update.
17922         Reported by Eric Blake.
17923
17924 2007-05-06  Bruno Haible  <bruno@clisp.org>
17925
17926         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
17927         padding ourselves for the floating-point directives.
17928         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
17929         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
17930         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17931         gl_PRINTF_FLAG_ZERO and test its result. Invoke
17932         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
17933         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17934         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
17935         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17936         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17937         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17938         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17939         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17940         * tests/test-snprintf-posix.h (test_function): Also check the width
17941         and some flags in the %f directive.
17942         * tests/test-sprintf-posix.h (test_function): Likewise.
17943         * tests/test-vasnprintf-posix.c (test_function): Likewise.
17944         * tests/test-vasprintf-posix.c (test_function): Likewise.
17945         * doc/functions/fprintf.texi: Update.
17946         * doc/functions/printf.texi: Update.
17947         * doc/functions/snprintf.texi: Update.
17948         * doc/functions/sprintf.texi: Update.
17949         * doc/functions/vfprintf.texi: Update.
17950         * doc/functions/vprintf.texi: Update.
17951         * doc/functions/vsnprintf.texi: Update.
17952         * doc/functions/vsprintf.texi: Update.
17953
17954 2007-05-06  Bruno Haible  <bruno@clisp.org>
17955
17956         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
17957         pass the ' flag character to sprintf or snprintf.
17958         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
17959         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
17960         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17961         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
17962         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
17963         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17964         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
17965         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17966         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17967         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17968         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17969         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17970         * tests/test-snprintf-posix.h (test_function): Also check the grouping
17971         flag.
17972         * tests/test-sprintf-posix.h (test_function): Likewise.
17973         * tests/test-vasnprintf-posix.c (test_function): Likewise.
17974         * tests/test-vasprintf-posix.c (test_function): Likewise.
17975         * doc/functions/fprintf.texi: Update.
17976         * doc/functions/printf.texi: Update.
17977         * doc/functions/snprintf.texi: Update.
17978         * doc/functions/sprintf.texi: Update.
17979         * doc/functions/vfprintf.texi: Update.
17980         * doc/functions/vprintf.texi: Update.
17981         * doc/functions/vsnprintf.texi: Update.
17982         * doc/functions/vsprintf.texi: Update.
17983
17984 2007-05-01  Bruno Haible  <bruno@clisp.org>
17985
17986         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
17987
17988 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
17989
17990         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
17991         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
17992
17993 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17994
17995         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
17996         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
17997         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
17998
17999 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
18000
18001         * lib/argp-help.c (struct hol_entry): New member `ord'.
18002         (HOL_ENTRY_PTRCMP): Use ord for comparison
18003         (hol_sort): Initialize ord.
18004
18005 2007-05-01  Bruno Haible  <bruno@clisp.org>
18006
18007         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
18008         Reported by Eric Blake.
18009         * doc/gnulib.texi (Function Substitutes): Update.
18010
18011 2007-05-01  Bruno Haible  <bruno@clisp.org>
18012
18013         * doc/functions.texi: Remove file, now redundant through
18014         doc/functions/*.texi.
18015
18016 2007-05-01  Bruno Haible  <bruno@clisp.org>
18017
18018         * modules/argp (Depends-on): Add sleep.
18019
18020 2007-05-01  Bruno Haible  <bruno@clisp.org>
18021
18022         * modules/sleep-tests: New file.
18023         * tests/test-sleep.c: New file.
18024
18025         * modules/sleep: New file.
18026         * lib/sleep.c: New file.
18027         * m4/sleep.m4: New file.
18028         * lib/unistd_.h (sleep): New declaration.
18029         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
18030         HAVE_SLEEP.
18031         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
18032         * doc/functions/sleep.texi: Document the sleep module.
18033
18034 2007-05-01  Bruno Haible  <bruno@clisp.org>
18035
18036         * lib/sigprocmask.h: Remove file.
18037         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
18038         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
18039         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
18040         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
18041         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
18042         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
18043         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
18044         HAVE_SIGSET_T as a shell variable.
18045         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
18046         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
18047         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
18048         (Depends-on): Add signal. Remove verify.
18049         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
18050         (Include): Mention <signal.h> instead of sigprocmask.h.
18051         * NEWS: Mention the change.
18052         * lib/fatal-signal.c: Don't include sigprocmask.h.
18053
18054 2007-05-01  Bruno Haible  <bruno@clisp.org>
18055
18056         * modules/signal: New file.
18057         * lib/signal_.h: New file.
18058         * m4/signal_h.m4: New file.
18059
18060 2007-05-01  Bruno Haible  <bruno@clisp.org>
18061
18062         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
18063         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
18064         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
18065         HAVE_WCTYPE_CTMP_BUG into wctype.h.
18066
18067 2007-05-01  Bruno Haible  <bruno@clisp.org>
18068
18069         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
18070         configure time.
18071         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
18072         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
18073         * modules/sys_stat (Makefile.am): Substitute their values into
18074         sys/stat.h.
18075
18076 2007-05-01  Bruno Haible  <bruno@clisp.org>
18077
18078         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
18079         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
18080         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
18081
18082 2007-05-01  Bruno Haible  <bruno@clisp.org>
18083
18084         * doc/header/assert.texi: Undo last change: don't mention the gnulib
18085         'assert' module here.
18086
18087 2007-05-01  Bruno Haible  <bruno@clisp.org>
18088
18089         * doc/functions/*.texi: New files.
18090         * doc/functions/google-ranking.txt: New file.
18091         * doc/gnulib.texi (Function Substitutes): New chapter.
18092         (ctime, inet_ntoa): Remove sections.
18093         * doc/ctime.texi: Remove file.
18094         * doc/inet_ntoa.texi: Remove file.
18095         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
18096         dependencies.
18097         (%.info): New rule, specifying a --reference-limit.
18098
18099 2007-05-01  Bruno Haible  <bruno@clisp.org>
18100
18101         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
18102
18103 2007-05-01  Bruno Haible  <bruno@clisp.org>
18104
18105         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
18106         the portability of 'mkdir' to mingw systems.
18107
18108 2007-05-01  Bruno Haible  <bruno@clisp.org>
18109
18110         * doc/headers/google-ranking.txt: New file.
18111
18112 2007-04-30  Eric Blake  <ebb9@byu.net>
18113
18114         Prefer fseeko to fseek.
18115         * modules/getpass (Depends-on): Add fseeko.
18116         * lib/getpass.c (getpass): Use fseeko, not fseek.
18117
18118 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
18119
18120         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
18121         assumes the sorting is stable, while most qsort implementations
18122         are not.  Use argument addresses to ensure they never compare as
18123         equal.
18124
18125         * tests/test-argp-2.sh (usage-indent test): Fix output
18126         (func_compare): Restore diff options
18127         * tests/test-argp.c: Restore #include "progname.h"
18128
18129 2007-04-29  Bruno Haible  <bruno@clisp.org>
18130
18131         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
18132         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18133         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
18134         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18135         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
18136         (configure.ac): Define CHECK_SNPRINTF_POSIX.
18137         (TESTS, check_PROGRAMS): Add test-snprintf.
18138         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
18139         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
18140         (TESTS, check_PROGRAMS): Add test-vsnprintf.
18141         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
18142         assertions that fail on HP-UX, OSF/1, or IRIX.
18143         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
18144
18145 2007-04-29  Bruno Haible  <bruno@clisp.org>
18146
18147         * MODULES.html.sh (posix_functions): Remove 'contents'.
18148
18149 2007-04-29  Karl Berry  <karl@gnu.org>
18150
18151         * config/srclist.txt (gendocs_template_min): new entry.
18152
18153 2007-04-29  Bruno Haible  <bruno@clisp.org>
18154
18155         Work around fpurge bug on BSD systems.
18156         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
18157         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
18158         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
18159         fpurge to rpl_fpurge if the system already has this function.
18160         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
18161         the case where the system already has this function. Correct invariants
18162         on BSD systems.
18163         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
18164         BSD systems.
18165
18166 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
18167
18168         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
18169         proposed by Sven Verdoolaege.
18170
18171         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
18172         options.
18173         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
18174         (usage and help tests): Update
18175
18176 2007-04-29  Bruno Haible  <bruno@clisp.org>
18177
18178         * tests/test-fflush.c (main): Use a file of size 17, not 10.
18179         Print more information in case of failure. Disable a test on BeOS.
18180
18181 2007-04-29  Bruno Haible  <bruno@clisp.org>
18182
18183         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
18184         This helps debugging on systems on which no gdb is available.
18185
18186 2007-04-29  Bruno Haible  <bruno@clisp.org>
18187
18188         * lib/freading.h: Improve comments.
18189         * lib/fwriting.h: Likewise.
18190         * tests/test-freading.c (main): Don't check freading immediately after
18191         repositioning. Needed for glibc.
18192
18193 2007-04-29  Bruno Haible  <bruno@clisp.org>
18194
18195         * lib/freading.c (freading): Trivial simplification.
18196
18197 2007-04-28  Bruno Haible  <bruno@clisp.org>
18198
18199         * tests/test-fwriting.c (main): Also test the interaction between
18200         fflush and fwriting.
18201         * modules/fwriting-tests (Depends-on): Add fflush.
18202
18203         * tests/test-freading.c (main): Also test the interaction between
18204         fflush and freading.
18205         * modules/freading-tests (Depends-on): Add fflush.
18206
18207 2007-04-28  Bruno Haible  <bruno@clisp.org>
18208
18209         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
18210         fseeko and ftello.
18211         Suggested by Eric Blake.
18212
18213 2007-04-28  Jim Meyering  <jim@meyering.net>
18214
18215         Avoid false-negative in gl_STDINT_H's C99 conformance test.
18216         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
18217         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
18218
18219 2007-04-27  Eric Blake  <ebb9@byu.net>
18220
18221         * doc/headers/assert.texi (assert.h): Document assert module use.
18222
18223 2007-04-27  Bruno Haible  <bruno@clisp.org>
18224
18225         * doc/headers/*.texi: New files.
18226         * doc/gnulib.texi (Header File Substitutes): New chapter.
18227         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
18228         dependencies.
18229         (standards.info ,standards.html, standards.dvi): Update dependencies.
18230         (mostlyclean, clean): New targets.
18231
18232 2007-04-27  Bruno Haible  <bruno@clisp.org>
18233
18234         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
18235         * modules/sysexits (Files, Makefile.am): Update.
18236
18237         * lib/sys_socket_.h: Renamed from lib/socket_.h.
18238         * modules/sys_socket (Files, Makefile.am): Update.
18239
18240         * lib/sys_stat_.h: Renamed from lib/stat_.h.
18241         * modules/sys_stat (Files, Makefile.am): Update.
18242
18243 2007-04-27  Eric Blake  <ebb9@byu.net>
18244
18245         * lib/freading.h: Improve comments.
18246         * lib/fwriting.h: Likewise.
18247         * lib/fflush.c: Likewise.
18248
18249         Fix closein for mingw.
18250         * modules/closein-tests: Add tests for closein.
18251         * tests/test-closein.c: New file.
18252         * tests/test-closein.sh: Likewise.
18253         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
18254         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
18255
18256 2007-04-27  Bruno Haible  <bruno@clisp.org>
18257
18258         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
18259         version is < 6.
18260         * lib/math_.h [__DECC]: Likewise.
18261         * lib/stdio_.h [__DECC]: Likewise.
18262         * lib/stdlib_.h [__DECC]: Likewise.
18263         * lib/string_.h [__DECC]: Likewise.
18264         * lib/time_.h [__DECC]: Likewise.
18265         * lib/wchar_.h [__DECC]: Likewise.
18266         * lib/wctype_.h [__DECC]: Likewise.
18267
18268 2007-04-27  Bruno Haible  <bruno@clisp.org>
18269
18270         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
18271
18272 2007-04-27  Bruno Haible  <bruno@clisp.org>
18273
18274         * lib/fflush.c: Add comments.
18275         * modules/fpurge-tests (Depends-on): Add fflush.
18276         * modules/freadable-tests (Depends-on): Likewise.
18277         * modules/fwritable-tests (Depends-on): Likewise.
18278
18279 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
18280
18281         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
18282         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
18283         Report by Bruno Haible <bruno@clisp.org>.
18284
18285 2007-04-26  Eric Blake  <ebb9@byu.net>
18286
18287         Fix fflush on mingw.
18288         * modules/fflush (Depends-on): Add freading.
18289         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
18290         but unread data.
18291
18292 2007-04-26  Eric Blake  <ebb9@byu.net>
18293         and Bruno Haible  <bruno@clisp.org>
18294
18295         Implement freading and fwriting.
18296         * lib/freading.c: New file.
18297         * lib/freading.h: Likewise.
18298         * m4/freading.m4: Likewise.
18299         * modules/freading: Likewise.
18300         * modules/freading-tests: Likewise.
18301         * tests/test-freading.c: Likewise.
18302         * lib/fwriting.c: New file.
18303         * lib/fwriting.h: Likewise.
18304         * m4/fwriting.m4: Likewise.
18305         * modules/fwriting: Likewise.
18306         * modules/fwriting-tests: Likewise.
18307         * tests/test-fwriting.c: Likewise.
18308         * MODULES.html.sh (File stream based Input/Output): Mention them.
18309
18310 2007-04-26  Bruno Haible  <bruno@clisp.org>
18311
18312         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
18313         'long' when we assume it.
18314         Suggested by Eric Blake.
18315
18316 2007-04-26  Bruno Haible  <bruno@clisp.org>
18317
18318         Ensure fseeko, ftello are declared on glibc systems.
18319         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
18320         * modules/fseeko (configure.ac-early): Likewise.
18321         * modules/ftello (configure.ac-early): Likewise.
18322         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
18323         AC_FUNC_FSEEKO for this.
18324         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
18325         (gl_CHECK_FSEEKO): Remove macro.
18326
18327 2007-04-26  Bruno Haible  <bruno@clisp.org>
18328
18329         * tests/test-fflush.c (main): Also check the ftell result after
18330         fflush and fseek/fseeko.
18331         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
18332         file descriptor position cache in the stream.
18333         * lib/fseeko.c (rpl_fseeko): Likewise.
18334
18335 2007-04-26  Bruno Haible  <bruno@clisp.org>
18336
18337         * modules/fflush-tests (Depends-on): Add fseeko.
18338
18339 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
18340             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18341
18342         * lib/argz_.h: ensure error_t definition is obtained in same
18343         mechanism system argz.h would have.
18344         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
18345         argz facilities are known bad.  Err on the side of caution if
18346         cross-compiling.
18347
18348 2007-04-25  Eric Blake  <ebb9@byu.net>
18349
18350         * lib/fpurge.c (includes): Use stdlib.h for free.
18351         * tests/test-fflush.c (main): Also test fflush-fseeko.
18352
18353 2007-04-25  Bruno Haible  <bruno@clisp.org>
18354
18355         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
18356         * lib/fseeko.c: New file.
18357         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
18358         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
18359         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
18360         gl_FUNC_FSEEKO.
18361         (gl_FUNC_FSEEKO): Invoke it.
18362         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
18363         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
18364         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
18365
18366 2007-04-25  Bruno Haible  <bruno@clisp.org>
18367
18368         * modules/fflush (Depends-on): Add ftello.
18369
18370 2007-04-25  Bruno Haible  <bruno@clisp.org>
18371
18372         * modules/ftello-tests: New file.
18373         * tests/test-ftello.c: New file.
18374
18375         * modules/ftello: New file.
18376         * m4/ftello.m4: New file.
18377         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
18378         HAVE_FTELLO.
18379         * lib/stdio_.h (ftello): New declaration.
18380         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
18381         HAVE_FTELLO.
18382
18383 2007-04-25  Bruno Haible  <bruno@clisp.org>
18384
18385         * modules/fseeko-tests: New file.
18386         * tests/test-fseeko.c: New file.
18387
18388         * modules/fseeko: New file.
18389         * m4/fseeko.m4: New file.
18390         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
18391         HAVE_FSEEKO.
18392         * lib/stdio_.h (fseeko): New declaration.
18393         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
18394         HAVE_FSEEKO.
18395
18396 2007-04-25  Bruno Haible  <bruno@clisp.org>
18397
18398         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
18399
18400 2007-04-25  Bruno Haible  <bruno@clisp.org>
18401
18402         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
18403         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
18404         * tests/test-unistd.c: Likewise.
18405         * tests/test-fcntl.c: Likewise.
18406
18407 2007-04-23  Eric Blake  <ebb9@byu.net>
18408
18409         * lib/fflush.c: Fix missing include.
18410         Reported by Bruno Haible.
18411
18412 2007-04-23  Bruno Haible  <bruno@clisp.org>
18413
18414         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
18415         Reported by Eric Blake.
18416
18417 2007-04-23  Bruno Haible  <bruno@clisp.org>
18418
18419         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
18420
18421 2007-04-23  Bruno Haible  <bruno@clisp.org>
18422
18423         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
18424
18425 2007-04-23  Bruno Haible  <bruno@clisp.org>
18426
18427         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
18428         Needed on HP-UX 11.
18429
18430 2007-04-16  Eric Blake  <ebb9@byu.net>
18431
18432         Make fflush rely on fpurge.
18433         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
18434         open coding all variants.
18435         * modules/fflush (Depends-on): Add fpurge and unistd.
18436         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
18437         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
18438
18439         Fix --with-tests compilation on cygwin.
18440         * modules/argmatch-tests (Makefile.am): List gnulib library first
18441         in LDADD.
18442         * modules/argp-tests (Makefile.am): Likewise.
18443         * modules/array-list-tests (Makefile.am): Likewise.
18444         * modules/array-oset-tests (Makefile.am): Likewise.
18445         * modules/avltree-list-tests (Makefile.am): Likewise.
18446         * modules/avltree-oset-tests (Makefile.am): Likewise.
18447         * modules/avltreehash-list-tests (Makefile.am): Likewise.
18448         * modules/carray-list-tests (Makefile.am): Likewise.
18449         * modules/dirname-tests (Makefile.am): Likewise.
18450         * modules/frexp-tests (Makefile.am): Likewise.
18451         * modules/isnanl-tests (Makefile.am): Likewise.
18452         * modules/linked-list-tests (Makefile.am): Likewise.
18453         * modules/linkedhash-list-tests (Makefile.am): Likewise.
18454         * modules/lock-tests (Makefile.am): Likewise.
18455         * modules/rbtree-list-tests (Makefile.am): Likewise.
18456         * modules/rbtree-oset-tests (Makefile.am): Likewise.
18457         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
18458         * modules/tls-tests (Makefile.am): Likewise.
18459         * modules/tsearch-tests (Makefile.am): Likewise.
18460         * modules/xvasprintf-tests (Makefile.am): Likewise.
18461
18462         Fix fpurge for cygwin.
18463         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
18464         value.
18465         * modules/fpurge-tests (Depends-on): Clean up trash.
18466
18467 2007-04-16  Simon Josefsson  <simon@josefsson.org>
18468
18469         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
18470
18471         * m4/autobuild.m4: Re-indent.
18472
18473 2007-04-13  Bruno Haible  <bruno@clisp.org>
18474
18475         * modules/fpurge-tests: New file.
18476         * tests/test-fpurge.c: New file.
18477
18478         * modules/fpurge: New file.
18479         * lib/fpurge.h: New file.
18480         * lib/fpurge.c: New file.
18481         * m4/fpurge.m4: New file.
18482
18483 2007-04-13  Bruno Haible  <bruno@clisp.org>
18484
18485         * modules/fbufmode-tests: New file.
18486         * tests/test-fbufmode.c: New file.
18487
18488         * modules/fbufmode: New file.
18489         * lib/fbufmode.h: New file.
18490         * lib/fbufmode.c: New file.
18491         * m4/fbufmode.m4: New file.
18492
18493 2007-04-13  Bruno Haible  <bruno@clisp.org>
18494
18495         * modules/fwritable-tests: New file.
18496         * tests/test-fwritable.c: New file.
18497
18498         * modules/fwritable: New file.
18499         * lib/fwritable.h: New file.
18500         * lib/fwritable.c: New file.
18501         * m4/fwritable.m4: New file.
18502
18503 2007-04-13  Bruno Haible  <bruno@clisp.org>
18504
18505         * modules/freadable-tests: New file.
18506         * tests/test-freadable.c: New file.
18507
18508         * modules/freadable: New file.
18509         * lib/freadable.h: New file.
18510         * lib/freadable.c: New file.
18511         * m4/freadable.m4: New file.
18512
18513 2007-04-13  Bruno Haible  <bruno@clisp.org>
18514
18515         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
18516         MOSTLYCLEANFILES.
18517
18518 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18519
18520         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
18521         gzip bootstrap.conf to avoid dragging in i18n machinery.
18522         (gnulib_tool_option): Use it.
18523
18524 2007-04-13  Bruno Haible  <bruno@clisp.org>
18525
18526         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
18527         %F directives.
18528         * tests/test-vasprintf-posix.c (test_function): Likewise.
18529         * tests/test-snprintf-posix.h (test_function): Likewise.
18530         * tests/test-sprintf-posix.h (test_function): Likewise.
18531         * tests/test-fprintf-posix.h (test_function): Likewise.
18532         * tests/test-printf-posix.h (test_function): Likewise.
18533         * tests/test-fprintf-posix.out: Likewise.
18534
18535 2007-04-13  Bruno Haible  <bruno@clisp.org>
18536
18537         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
18538         * modules/tls-tests (configure.ac): Likewise.
18539         Reported by Arto C. Nirkko <anirkko@insel.ch>.
18540
18541 2007-04-13  Bruno Haible  <bruno@clisp.org>
18542
18543         * lib/tls.c (glthread_tls_get): Fix return type.
18544         Patch by Arto C. Nirkko <anirkko@insel.ch>.
18545
18546 2007-04-12  Eric Blake  <ebb9@byu.net>
18547
18548         * modules/gettime (Depends-on): Remove gettime.
18549         Reported by Dmitry V. Levin.
18550
18551 2007-04-12  Bruno Haible  <bruno@clisp.org>
18552
18553         * modules/fflush (Include): Mention <stdio.h>.
18554         * modules/strtoimax (Include): Mention <inttypes.h>.
18555         * modules/strtoumax (Include): Likewise.
18556
18557 2007-04-12  Eric Blake  <ebb9@byu.net>
18558
18559         * .cvsignore: New file.
18560         * .gitignore: Likewise.
18561
18562 2007-04-12  Bruno Haible  <bruno@clisp.org>
18563
18564         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
18565         not before, since $(LDADD) often contains libgnu.a.
18566         * modules/striconv-tests (test_striconv_LDADD): Likewise.
18567         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
18568         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
18569         Needed on Cygwin.
18570
18571 2007-04-12  Eric Blake  <ebb9@byu.net>
18572
18573         Work around glibc's failure to flush stdin on fclose.
18574         * lib/closein.c (close_stdin): Flush stdin before closing.
18575
18576         Work around glibc's failure to reset seekable stdin on exit.
18577         * modules/closein: New module.
18578         * lib/closein.c: New file.
18579         * lib/closein.h: Likewise.
18580         * m4/closein.m4: Likewise.
18581         * MODULES.html.sh (File stream based Input/Output): Document it.
18582
18583 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18584
18585         * gnulib-tool: Rename generated 'autobuild' script to
18586         'do-autobuild' in --create-megatestdir output.
18587
18588         * doc/gnulib.texi (Build robot for gnulib): Fix.
18589
18590 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18591
18592         * modules/sysexits (Depends-on): Add absolute-header.
18593
18594 2007-04-12  Eric Blake  <ebb9@byu.net>
18595
18596         No need to preserve errno on success.
18597         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
18598         Reported by Bruno Haible.
18599
18600 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18601
18602         * MODULES.html.sh (Support for maintaining and releasing
18603         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
18604
18605 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18606
18607         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
18608
18609 2007-04-12  Simon Josefsson  <simon@josefsson.org>
18610
18611         * modules/autobuild: New module.
18612
18613         * m4/autobuild.m4: New file.
18614
18615 2007-04-11  Bruno Haible  <bruno@clisp.org>
18616
18617         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
18618         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
18619         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
18620         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
18621         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18622         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18623         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18624         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18625         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18626         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18627         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
18628         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18629         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18630         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
18631         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18632         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18633         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
18634         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18635         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18636         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
18637         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18638         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18639         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
18640         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18641         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18642         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
18643         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
18644         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
18645         Reported by Eric Blake.
18646
18647 2007-04-11  Bruno Haible  <bruno@clisp.org>
18648
18649         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
18650
18651 2007-04-10  Bruno Haible  <bruno@clisp.org>
18652
18653         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
18654         for NaN and Infinity. Needed on FreeBSD 6.1.
18655         * tests/test-vasnprintf-posix.c (test_function): Undo last change
18656         regarding results for "%010a" of Infinity and NaN.
18657         * tests/test-vasprintf-posix.c (test_function): Likewise.
18658         * tests/test-snprintf-posix.h (test_function): Likewise.
18659         * tests/test-sprintf-posix.h (test_function): Likewise.
18660         * tests/test-fprintf-posix.h (test_function): Likewise.
18661         * tests/test-printf-posix.h (test_function): Likewise.
18662         * tests/test-fprintf-posix.out: Likewise.
18663
18664 2007-04-10  Bruno Haible  <bruno@clisp.org>
18665
18666         * modules/locale-tests: New file.
18667         * tests/test-locale.c: New file.
18668
18669         * modules/locale: New file.
18670         * lib/locale_.h: New file.
18671         * m4/locale_h.m4: New file.
18672
18673 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18674             Bruno Haible  <bruno@clisp.org>
18675
18676         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
18677         be determined, test for availability of the copysignf, copysign,
18678         copysignl functions.
18679         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
18680         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
18681         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
18682
18683 2007-04-09  Eric Blake  <ebb9@byu.net>
18684
18685         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
18686         * modules/stdio (Makefile.am): Support fflush.
18687         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
18688         * modules/fflush: New file.
18689         * lib/fflush.c: Likewise.
18690         * m4/fflush.m4: Likewise.
18691         * modules/fflush-tests: New test.
18692         * tests/test-fflush.c: Likewise.
18693         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
18694
18695 2007-04-06  Bruno Haible  <bruno@clisp.org>
18696
18697         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
18698         (VASNPRINTF): Use signbit for faster determination whether to print a
18699         minus sign.
18700         * modules/vasnprintf (Files): Remove lib/float+.h.
18701         * modules/fprintf-posix (Depends-on): Add signbit.
18702         * modules/snprintf-posix (Depends-on): Likewise.
18703         * modules/sprintf-posix (Depends-on): Likewise.
18704         * modules/vasnprintf-posix (Depends-on): Likewise.
18705         * modules/vasprintf-posix (Depends-on): Likewise.
18706         * modules/vfprintf-posix (Depends-on): Likewise.
18707         * modules/vsnprintf-posix (Depends-on): Likewise.
18708         * modules/vsprintf-posix (Depends-on): Likewise.
18709
18710 2007-04-06  Bruno Haible  <bruno@clisp.org>
18711
18712         * tests/test-frexp.c (main): Test also the sign bit of zero results.
18713         * tests/test-frexpl.c (main): Likewise.
18714         * tests/test-ldexpl.c (main): Likewise.
18715         * modules/frexp-tests (Depends-on): Add signbit.
18716         * modules/frexpl-tests (Depdends-on): Likewise.
18717         * modules/ldexpl-tests (Depdends-on): Likewise.
18718
18719 2007-04-06  Bruno Haible  <bruno@clisp.org>
18720
18721         * modules/signbit-tests: New file.
18722         * tests/test-signbit.c: New file.
18723
18724         * modules/signbit: New file.
18725         * lib/signbitf.c: New file.
18726         * lib/signbitd.c: New file.
18727         * lib/signbitl.c: New file.
18728         * m4/signbit.m4: New file.
18729         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
18730         (signbit): New macro.
18731         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
18732         REPLACE_SIGNBIT.
18733         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
18734         REPLACE_FREXPL into math.h.
18735
18736 2007-04-06  Bruno Haible  <bruno@clisp.org>
18737
18738         * modules/isnanf-nolibm-tests: New file.
18739         * tests/test-isnanf.c: New file.
18740
18741         * modules/isnanf-nolibm: New file.
18742         * lib/isnanf.h: New file.
18743         * lib/isnanf.c: New file.
18744         * lib/isnan.c: Consider the USE_FLOAT macro.
18745         * m4/isnanf.m4: New file.
18746
18747 2007-04-06  Bruno Haible  <bruno@clisp.org>
18748
18749         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
18750         (Link): New section.
18751
18752         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
18753
18754 2007-04-06  Bruno Haible  <bruno@clisp.org>
18755
18756         Assume the 'long double' type.
18757         * m4/longdouble.m4: Remove file.
18758         * config/srclist.txt: Don't mention longdouble.m4.
18759         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
18760         * lib/float+.h: Likewise.
18761         * lib/frexp.c: Likewise.
18762         * lib/printf-args.h: Likewise.
18763         * lib/printf-args.c: Likewise.
18764         * lib/printf-frexp.c: Likewise.
18765         * lib/printf-parse.c: Likewise.
18766         * lib/vasnprintf.c: Likewise.
18767         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
18768         * m4/intl.m4: Likewise.
18769         * m4/isnanl.m4: Likewise.
18770         * m4/printf.m4: Likewise.
18771         * m4/printf-frexpl.m4: Likewise.
18772         * m4/vasnprintf.m4: Likewise.
18773         * modules/allocsa (Files): Remove m4/longdouble.m4.
18774         * modules/gettext (Files): Likewise.
18775         * modules/relocatable-prog-wrapper (Files): Likewise.
18776         * modules/vasnprintf (Files): Likewise.
18777         * modules/isnanl (Files): Likewise.
18778         (Include): Simplify.
18779         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
18780         (Include): Simplify.
18781         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
18782         (Include): Simplify.
18783         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
18784         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18785         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
18786         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18787         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
18788         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18789         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
18790         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18791         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
18792         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18793         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
18794         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
18795         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
18796         * tests/test-isnanl.c: Likewise.
18797         * tests/test-snprintf-posix.h: Likewise.
18798         * tests/test-sprintf-posix.h: Likewise.
18799         * tests/test-vasnprintf-posix.c: Likewise.
18800         * tests/test-vasnprintf-posix2.c: Likewise.
18801         * tests/test-vasprintf-posix.c: Likewise.
18802
18803 2007-04-06  Bruno Haible  <bruno@clisp.org>
18804
18805         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
18806         * lib/math_.h [__DECC]: Include the overridden include file through
18807         #include_next, outside the double-inclusion guard.
18808         * lib/stdio_.h [__DECC]: Likewise.
18809         * lib/stdlib_.h [__DECC]: Likewise.
18810         * lib/string_.h [__DECC]: Likewise.
18811         * lib/time_.h [__DECC]: Likewise.
18812         * lib/wchar_.h [__DECC]: Likewise.
18813         * lib/wctype_.h [__DECC]: Likewise.
18814         * lib/inttypes_.h [__DECC]: Likewise.
18815         Reported by Albert Chin <china@thewrittenword.com> in
18816         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
18817
18818 2007-04-04  Eric Blake  <ebb9@byu.net>
18819
18820         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
18821         1.5.x.
18822
18823 2007-04-04  Bruno Haible  <bruno@clisp.org>
18824
18825         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
18826         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
18827
18828 2007-04-04  Bruno Haible  <bruno@clisp.org>
18829
18830         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
18831         results for "%010a" of Infinity and NaN.
18832         * tests/test-vasprintf-posix.c (test_function): Likewise.
18833         * tests/test-snprintf-posix.h (test_function): Likewise.
18834         * tests/test-sprintf-posix.h (test_function): Likewise.
18835         * tests/test-fprintf-posix.h (test_function): Remove these tests.
18836         * tests/test-printf-posix.h (test_function): Likewise.
18837         * tests/test-fprintf-posix.out: Update.
18838         Needed for FreeBSD 6.1.
18839
18840 2007-04-04  Bruno Haible  <bruno@clisp.org>
18841
18842         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
18843         directly used by the gnulib modules nor by gnulib-tool.
18844
18845 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
18846
18847         * DEPENDENCIES: Give overall description of version dependency
18848         desirability.  Use more-typical names for apps.
18849         Add shell, coreutils, diffutils, grep, tar, gzip.
18850
18851 2007-04-04  Simon Josefsson  <simon@josefsson.org>
18852
18853         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
18854
18855 2007-04-04  Karl Berry  <karl@gnu.org>
18856
18857         * MODULES.html.sh (func_module): missing '.
18858
18859 2007-04-03  Bruno Haible  <bruno@clisp.org>
18860
18861         * modules/argmatch-tests (Makefile.am): New variable
18862         test_argmatch_LDADD.
18863         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
18864         * modules/array-list-tests (Makefile.am): New variable
18865         test_array_list_LDADD.
18866         * modules/array-oset-tests (Makefile.am): New variable
18867         test_array_oset_LDADD.
18868         * modules/avltree-list-tests (Makefile.am): New variable
18869         test_avltree_list_LDADD.
18870         * modules/avltree-oset-tests (Makefile.am): New variable
18871         test_avltree_oset_LDADD.
18872         * modules/avltreehash-list-tests (Makefile.am): New variable
18873         test_avltreehash_list_LDADD.
18874         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
18875         test_canonicalize_lgpl_LDADD.
18876         * modules/carray-list-tests (Makefile.am): New variable
18877         test_carray_list_LDADD.
18878         * modules/dirname-tests (Makefile.am): New variable
18879         test_dirname_LDADD.
18880         * modules/linked-list-tests (Makefile.am): New variable
18881         test_linked_list_LDADD.
18882         * modules/linkedhash-list-tests (Makefile.am): New variable
18883         test_linkedhash_list_LDADD.
18884         * modules/rbtree-list-tests (Makefile.am): New variable
18885         test_rbtree_list_LDADD.
18886         * modules/rbtree-oset-tests (Makefile.am): New variable
18887         test_rbtree_oset_LDADD.
18888         * modules/rbtreehash-list-tests (Makefile.am): New variable
18889         test_rbtreehash_list_LDADD.
18890         * modules/xvasprintf-tests (Makefile.am): New variable
18891         test_xvasprintf_LDADD.
18892         Reported by Eric Blake.
18893
18894 2007-04-03  Eric Blake  <ebb9@byu.net>
18895
18896         * DEPENDENCIES: Weaken m4 requirements.
18897
18898 2007-04-03  Bruno Haible  <bruno@clisp.org>
18899
18900         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
18901         * modules/isnanl-tests (configure.ac): Likewise.
18902
18903 2007-04-03  Ben Pfaff  <blp@gnu.org>
18904
18905         * modules/iconv_open: Add $(srcdir)/ to source directory
18906         references in Makefile fragments that call gperf, to fix VPATH
18907         builds.
18908
18909 2007-04-03  Bruno Haible  <bruno@clisp.org>
18910
18911         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
18912         * lib/ldexpl.c: Undo last change.
18913
18914 2007-04-03  Bruno Haible  <bruno@clisp.org>
18915
18916         * modules/printf-frexpl (Depends-on): Undo last change.
18917         (Files): Add m4/ldexpl.m4.
18918
18919 2007-04-03  Bruno Haible  <bruno@clisp.org>
18920
18921         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
18922         * modules/isnanl (Link): New section.
18923
18924         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
18925         * modules/frexp (Link): New section.
18926
18927         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
18928         * modules/frexpl (Link): New section.
18929
18930         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
18931         * modules/ldexpl (Link): New section.
18932
18933 2007-04-03  Bruno Haible  <bruno@clisp.org>
18934
18935         * modules/TEMPLATE-EXTENDED: New file.
18936         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
18937
18938 2007-04-03  Bruno Haible  <bruno@clisp.org>
18939
18940         * DEPENDENCIES: New file.
18941         Suggested by Simon Josefsson.
18942
18943 2007-04-03  Bruno Haible  <bruno@clisp.org>
18944
18945         * doc/gnulib.texi: Escape @.
18946
18947 2007-04-03  James Youngman  <jay@gnu.org>
18948         and Paul Eggert  <eggert@cs.ucla.edu>
18949
18950         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
18951         birthtime on all systems that have birthtime, not just those which
18952         use st_birthtimensec rather than st_birthtim.  Putting zero in
18953         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
18954         that the birth time is not available for files on an NFS mount.
18955
18956 2007-04-03  Simon Josefsson  <simon@josefsson.org>
18957
18958         * modules/memxor: Move back from crypto/, suggested by Bruno.
18959         * modules/crypto/hmac-sha1: Fix memxor dependency.
18960
18961         * modules/crypto/gc: Moved from ../.
18962
18963 2007-04-02  Eric Blake  <ebb9@byu.net>
18964
18965         * lib/ldexpl.c (includes): Avoid libm.
18966
18967         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
18968
18969 2007-04-02  Bruno Haible  <bruno@clisp.org>
18970
18971         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
18972         on IRIX.
18973
18974 2007-04-02  Bruno Haible  <bruno@clisp.org>
18975
18976         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
18977         x86 or x86_64 platforms running MacOS X.
18978         Reported by Ryan Schmidt <@ryandesign.com>.
18979
18980 2007-04-02  Bruno Haible  <bruno@clisp.org>
18981
18982         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
18983         i386.
18984
18985 2007-04-01  Simon Josefsson  <simon@josefsson.org>
18986
18987         * modules/crypto/arcfour: Moved from ../.
18988         * modules/crypto/arcfour-tests: Moved from ../.
18989         * modules/crypto/arctwo: Moved from ../.
18990         * modules/crypto/arctwo-tests: Moved from ../.
18991         * modules/crypto/des: Moved from ../.
18992         * modules/crypto/des-tests: Moved from ../.
18993         * modules/crypto/gc-arcfour: Moved from ../.
18994         * modules/crypto/gc-arcfour-tests: Moved from ../.
18995         * modules/crypto/gc-arctwo: Moved from ../.
18996         * modules/crypto/gc-arctwo-tests: Moved from ../.
18997         * modules/crypto/gc-des: Moved from ../.
18998         * modules/crypto/gc-des-tests: Moved from ../.
18999         * modules/crypto/gc-hmac-md5: Moved from ../.
19000         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
19001         * modules/crypto/gc-hmac-sha1: Moved from ../.
19002         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
19003         * modules/crypto/gc-md2: Moved from ../.
19004         * modules/crypto/gc-md2-tests: Moved from ../.
19005         * modules/crypto/gc-md4: Moved from ../.
19006         * modules/crypto/gc-md4-tests: Moved from ../.
19007         * modules/crypto/gc-md5: Moved from ../.
19008         * modules/crypto/gc-md5-tests: Moved from ../.
19009         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
19010         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
19011         * modules/crypto/gc-random: Moved from ../.
19012         * modules/crypto/gc-rijndael: Moved from ../.
19013         * modules/crypto/gc-rijndael-tests: Moved from ../.
19014         * modules/crypto/gc-sha1: Moved from ../.
19015         * modules/crypto/gc-sha1-tests: Moved from ../.
19016         * modules/crypto/gc-tests: Moved from ../.
19017         * modules/crypto/hmac-md5: Moved from ../.
19018         * modules/crypto/hmac-md5-tests: Moved from ../.
19019         * modules/crypto/hmac-sha1: Moved from ../.
19020         * modules/crypto/hmac-sha1-tests: Moved from ../.
19021         * modules/crypto/md2: Moved from ../.
19022         * modules/crypto/md2-tests: Moved from ../.
19023         * modules/crypto/md4: Moved from ../.
19024         * modules/crypto/md4-tests: Moved from ../.
19025         * modules/crypto/md5: Moved from ../.
19026         * modules/crypto/md5-tests: Moved from ../.
19027         * modules/crypto/memxor: Moved from ../.
19028         * modules/crypto/rijndael: Moved from ../.
19029         * modules/crypto/rijndael-tests: Moved from ../.
19030         * modules/crypto/sha1: Moved from ../.
19031
19032 2007-03-30  James Youngman  <jay@gnu.org>
19033
19034         * tests/test-stat-time.c (prepare_test): use chmod() rather than
19035         rename() to change the ctime of a file (because ctime is unaffected
19036         by rename on jfs2 on AIX 5.1).
19037         (main): Start by doing cleanup, in case a previous run failed leaving
19038         test files behind.
19039
19040 2007-03-31  Bruno Haible  <bruno@clisp.org>
19041
19042         Support old proprietary implementations of iconv.
19043         * modules/iconv_open: New file.
19044         * lib/iconv_.h: New file.
19045         * m4/iconv_h.m4: New file.
19046         * lib/iconv_open.c: New file.
19047         * lib/iconv_open-aix.gperf: New file.
19048         * lib/iconv_open-hpux.gperf: New file.
19049         * lib/iconv_open-irix.gperf: New file.
19050         * lib/iconv_open-osf.gperf: New file.
19051         * m4/iconv_open.m4: New file.
19052         * modules/linebreak (Depends-on): Add iconv_open.
19053         * modules/striconv (Depends-on): Likewise.
19054         * modules/striconveh (Depends-on): Likewise.
19055         * modules/unicodeio (Depends-on): Likewise.
19056         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
19057         (iconv_t)(-1).
19058         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
19059         conversion if cd is (iconv_t)(-1).
19060         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
19061         is not possible.
19062
19063 2007-03-31  Bruno Haible  <bruno@clisp.org>
19064
19065         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
19066         work on Solaris either. Protect also second use of "autodetect_jp".
19067
19068 2007-03-31  Bruno Haible  <bruno@clisp.org>
19069
19070         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
19071         the function is not present.
19072
19073 2007-03-31  Bruno Haible  <bruno@clisp.org>
19074
19075         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
19076         the function is not present.
19077
19078 2007-03-31  Bruno Haible  <bruno@clisp.org>
19079
19080         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
19081         a bug in HP-UX iconv_open().
19082
19083 2007-03-31  Bruno Haible  <bruno@clisp.org>
19084
19085         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
19086         (Mathematics <math.h>): New section, add fpieee.
19087         (Input/output <stdio.h>): Add fseterr.
19088         (Mathematics <math.h>): New section, add printf-frexp.
19089         (Container data structures): Add sublist.
19090         (Core language properties): Add fpucw, inline.
19091         (Functions for greatest-width integer types <inttypes.h>): Add
19092         imaxabs, imaxdiv, inttypes.
19093         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
19094         isnanl-nolibm, ldexp.
19095         (Mathematics <math.h>): New section, add printf-frexpl.
19096         (Support for systems lacking POSIX:2001): Add fprintf-posix,
19097         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
19098         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
19099         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
19100         (Unicode string functions): Add unistr/u*-mbtoucr.
19101         (Java): Add javacomp-script, javaexec-script.
19102         (C#): Add csharpcomp-script, csharpexec-script.
19103         (Support for building libraries and executables): Add havelib,
19104         relocatable-*.
19105         (Support for maintaining and releasing projects): Renamed from
19106         'Support for maintaining and release projects'. Add announce-gen.
19107
19108 2007-03-31  Bruno Haible  <bruno@clisp.org>
19109
19110         * README: Talk primarily about git.
19111         (git and CVS): Renamed from CVS.
19112         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
19113         gnulib is available through git.
19114         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
19115
19116 2007-03-30  Bruno Haible  <bruno@clisp.org>
19117
19118         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
19119         * lib/poll_.h: Likewise.
19120         * lib/stat_.h: Likewise.
19121         * lib/sys_time_.h: Likewise.
19122         * lib/sysexit_.h: Likewise.
19123         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
19124         * lib/stdbool_.h: Likewise.
19125         * lib/byteswap_.h: Add double-inclusion guard.
19126
19127 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
19128
19129         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
19130
19131 2007-03-30  Karl Berry  <karl@gnu.org>
19132
19133         * config/srclist-update: double space after USA in the license
19134         substitution, since that's how it's usually (?) written.
19135
19136 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
19137
19138         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
19139         reported by Bruno Haible.
19140
19141 2007-03-29  Bruno Haible  <bruno@clisp.org>
19142
19143         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
19144         a bug in AIX iconv().
19145
19146 2007-03-29  Bruno Haible  <bruno@clisp.org>
19147
19148         * modules/ldexpl-tests: New file.
19149         * tests/test-ldexpl.c: New file.
19150
19151 2007-03-29  Bruno Haible  <bruno@clisp.org>
19152
19153         * lib/ldexpl.c: Include fpucw.h.
19154         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
19155         multiplication.
19156         * modules/ldexpl (Depends-on): Add fpucw.
19157
19158 2007-03-29  Bruno Haible  <bruno@clisp.org>
19159
19160         * modules/ldexpl: New file.
19161         * m4/ldexpl.m4: New file.
19162         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
19163         set.
19164         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
19165         REPLACE_LDEXPL.
19166         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
19167         REPLACE_LDEXPL.
19168         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
19169         gl_FUNC_LDEXPL_WORKS.
19170         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
19171         * modules/mathl (Files): Remove lib/ldexpl.c.
19172         (Depends-on): Add ldexpl.
19173
19174 2007-03-29  Bruno Haible  <bruno@clisp.org>
19175
19176         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
19177
19178 2007-03-29  Bruno Haible  <bruno@clisp.org>
19179
19180         * tests/test-striconveh.c (main): Don't assume that a direct conversion
19181         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
19182         and possibly also HP-UX.
19183         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
19184         work on AIX, IRIX, HP-UX, OSF/1.
19185         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
19186         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
19187         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
19188         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
19189         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
19190         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
19191
19192 2007-03-29  Bruno Haible  <bruno@clisp.org>
19193
19194         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
19195
19196 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
19197
19198         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
19199         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
19200
19201 2007-03-29  Eric Blake  <ebb9@byu.net>
19202
19203         * lib/acl-internal.h: Remove redundant include.
19204         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
19205         Cygwin when a file is locked.
19206
19207 2007-03-29  Bruno Haible  <bruno@clisp.org>
19208
19209         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
19210         file.
19211         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
19212
19213 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
19214
19215         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
19216         try to remove a parent directory if the child couldn't be removed
19217         (except for the first rmdir, which could fail because the child
19218         doesn't exist).  Problem reported by Jeff Blaine in
19219         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
19220
19221 2007-03-28  Bruno Haible  <bruno@clisp.org>
19222
19223         * lib/striconveh.c (utf8conv_carefully): New function.
19224         (mem_cd_iconveh_internal): Invoke it.
19225
19226 2007-03-28  Bruno Haible  <bruno@clisp.org>
19227
19228         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
19229         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
19230         input.
19231         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
19232         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
19233         unistr/u8-uctomb.
19234
19235 2007-03-28  Bruno Haible  <bruno@clisp.org>
19236
19237         * modules/unistr/u8-mbtoucr: New file.
19238         * lib/unistr/u8-mbtoucr.c: New file.
19239         * modules/unistr/u16-mbtoucr: New file.
19240         * lib/unistr/u16-mbtoucr.c: New file.
19241         * modules/unistr/u16-mbtoucr: New file.
19242         * lib/unistr/u16-mbtoucr.c: New file.
19243         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
19244
19245 2007-03-27  Simon Josefsson  <simon@josefsson.org>
19246             Bruno Haible  <bruno@clisp.org>
19247
19248         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
19249         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
19250         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
19251
19252         * m4/stdio_h.m4: Add stubs for vasprintf too.
19253
19254         * modules/stdio: Support vasprintf in sed command.
19255
19256         * modules/vasprintf: Depend on stdio for prototypes.  Remove
19257         vasprintf.h.  Add stdio module indicator.
19258
19259         * lib/stdio_.h: Declare asprintf and vasprintf, based on
19260         vasprintf.h.
19261
19262         * lib/vasprintf.h: File removed.
19263
19264         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
19265         * lib/vasprintf.c: Ditto.
19266         * lib/xvasprintf.c: Ditto.
19267         * tests/test-vasprintf-posix.c: Ditto.
19268         * tests/test-vasprintf.c: Ditto.
19269
19270 2007-03-27  Bruno Haible  <bruno@clisp.org>
19271
19272         Make vasnprintf multithread-safe.
19273         * lib/vasnprintf.c (decimal_point_char): New function.
19274         (VASNPRINTF): Use it.
19275         Suggested by Simon Josefsson.
19276
19277 2007-03-27  Eric Blake  <ebb9@byu.net>
19278
19279         Support sub-second birthtime on cygwin.
19280         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
19281         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
19282         (get_stat_birthtime): Also work with st_birthtim.
19283
19284 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
19285
19286         * lib/stat-time.h (USE_BIRTHTIME): Remove.
19287         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
19288         (get_stat_birthtime_ns): Do not try to use "spare" fields.
19289         (get_stat_birthtime_ns): Simplify compile-time tests.
19290         (get_stat_birthtime): Change the API to look like
19291         get_stat_mtime etc., except return a negative tv_nsec on error.
19292         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
19293         Don't check for "spare" fields.
19294         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
19295         or for struct stat.st_birthtime, as these tests aren't used.
19296         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
19297
19298 2007-03-27  Bruno Haible  <bruno@clisp.org>
19299
19300         * lib/stat-time.h: Include <sys/stat.h>.
19301
19302 2007-03-27  James Youngman  <jay@gnu.org>
19303
19304         * lib/stat-time.h (get_stat_birthtime): New function for
19305           retrieving st_birthtime as provided by UFS2 (hence *BSD).
19306         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
19307           and its variants.
19308         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
19309         * modules/stat-time-test: New file.
19310         * tests/test-stat-time.c: New test, devised by Bruno Haible.
19311
19312 2007-03-26  Bruno Haible  <bruno@clisp.org>
19313
19314         Better support of signalling NaNs.
19315         * lib/atanl.c: Include isnanl.h.
19316         (atanl): Perform test for NaN at the beginning of the function and
19317         through a call to isnanl.
19318         * lib/cosl.c: Include isnanl.h.
19319         (cosl): Perform test for NaN at the beginning of the function and
19320         through a call to isnanl.
19321         * lib/ldexpl.c: Include isnanl.h.
19322         (ldexpl): Perform test for NaN through a call to isnanl.
19323         * lib/logl.c: Include isnanl.h.
19324         (logl): Perform test for NaN at the beginning of the function and
19325         through a call to isnanl.
19326         * lib/sinl.c: Include isnanl.h.
19327         (sinl): Perform test for NaN at the beginning of the function and
19328         through a call to isnanl.
19329         * lib/sqrtl.c: Include isnanl.h.
19330         (sqrtl): Perform test for NaN at the beginning of the function and
19331         through a call to isnanl.
19332         * lib/tanl.c: Include isnanl.h.
19333         (tanl): Perform test for NaN at the beginning of the function and
19334         through a call to isnanl.
19335         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
19336         * modules/mathl (Depends-on): Add isnanl.
19337
19338 2007-03-26  Eric Blake  <ebb9@byu.net>
19339
19340         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
19341         regression in logic sense of previous patch.
19342
19343 2007-03-26  Bruno Haible  <bruno@clisp.org>
19344
19345         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
19346         unportable shell command "if ! ...".
19347         Reported by Ralf Wildenhues.
19348
19349 2007-03-25  Bruno Haible  <bruno@clisp.org>
19350
19351         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
19352         <sysexits.h> file, and only add EX_CONFIG.
19353         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
19354         absolute file name and whether it is sufficient. Substitute also
19355         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
19356         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
19357         ABSOLUTE_SYSEXITS_H into sysexits.h.
19358
19359 2007-03-25  Bruno Haible  <bruno@clisp.org>
19360
19361         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
19362         hints is NULL.
19363
19364 2007-03-25  Bruno Haible  <bruno@clisp.org>
19365
19366         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
19367         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
19368
19369 2007-03-25  Bruno Haible  <bruno@clisp.org>
19370
19371         * lib/vasnprintf.c: Include langinfo.h.
19372         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
19373         multithread-safe.
19374         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
19375         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
19376         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
19377         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19378         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19379         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19380         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19381         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
19382         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19383         Reported by Simon Josefsson.
19384
19385 2007-03-25  Bruno Haible  <bruno@clisp.org>
19386
19387         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
19388         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
19389         * modules/vasnprintf (Depends-on): Add stdint.
19390
19391 2007-03-25  Bruno Haible  <bruno@clisp.org>
19392
19393         * modules/fpieee: New file.
19394         * m4/fpieee.m4: New file.
19395         * modules/isnan-nolibm (Depends-on): Add fpieee.
19396         * modules/isnanl-nolibm (Depends-on): Add fpieee.
19397         * modules/isnanl (Depends-on): Add fpieee.
19398
19399 2007-03-25  Bruno Haible  <bruno@clisp.org>
19400
19401         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
19402
19403 2007-03-25  Bruno Haible  <bruno@clisp.org>
19404
19405         Avoid test failures on IRIX 6.5.
19406         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
19407         (main): Use it.
19408         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
19409         macros.
19410         (main): Use them.
19411
19412 2007-03-25  Bruno Haible  <bruno@clisp.org>
19413
19414         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
19415         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
19416         exists but doesn't work.
19417         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
19418         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
19419         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
19420         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
19421
19422 2007-03-25  Bruno Haible  <bruno@clisp.org>
19423
19424         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
19425         returns inf. Needed on IRIX 6.5.
19426
19427 2007-03-25  Bruno Haible  <bruno@clisp.org>
19428
19429         * tests/test-frexpl.c: Include isnanl-nolibm.h.
19430         (main): Use isnanl instead of x != x idiom.
19431         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
19432
19433         * tests/test-frexp.c: Include isnan.h.
19434         (main): Use isnan instead of x != x idiom.
19435         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
19436
19437 2007-03-25  Bruno Haible  <bruno@clisp.org>
19438
19439         * tests/test-frexp.c (NaN): New function/macro.
19440         (main): Use it instead of 0.0 / 0.0.
19441         * tests/test-isnan.c (NaN): New function/macro.
19442         (main): Use it instead of 0.0 / 0.0.
19443         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
19444         (test_function): Use it instead of 0.0 / 0.0.
19445         * tests/test-vasprintf-posix.c (NaN): New function/macro.
19446         (test_function): Use it instead of 0.0 / 0.0.
19447         * tests/test-snprintf-posix.h (NaN): New function/macro.
19448         (test_function): Use it instead of 0.0 / 0.0.
19449         * tests/test-sprintf-posix.h (NaN): New function/macro.
19450         (test_function): Use it instead of 0.0 / 0.0.
19451         * tests/test-fprintf-posix.h (NaN): New function/macro.
19452         (test_function): Use it instead of 0.0 / 0.0.
19453         * tests/test-printf-posix.h (NaN): New function/macro.
19454         (test_function): Use it instead of 0.0 / 0.0.
19455
19456         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
19457
19458 2007-03-25  Bruno Haible  <bruno@clisp.org>
19459
19460         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
19461
19462 2007-03-25  Bruno Haible  <bruno@clisp.org>
19463
19464         * lib/regexec.c (merge_state_with_log): Make static.
19465
19466 2007-03-25  Bruno Haible  <bruno@clisp.org>
19467
19468         * lib/trigl.c (kernel_rem_pio2): Make static.
19469
19470 2007-03-25  Bruno Haible  <bruno@clisp.org>
19471
19472         * lib/sincosl.c (sincosl_table): Make static.
19473
19474 2007-03-25  Bruno Haible  <bruno@clisp.org>
19475
19476         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
19477         if the compiler does not support C99.
19478
19479 2007-03-25  Bruno Haible  <bruno@clisp.org>
19480
19481         * modules/time (Makefile.am): Ensure all rule action lines start with a
19482         tab.
19483
19484 2007-03-24  Bruno Haible  <bruno@clisp.org>
19485
19486         * modules/tsearch-tests: New file.
19487         * tests/test-tsearch.sh: New file.
19488         * tests/test-tsearch.c: New file, mostly copied from glibc.
19489
19490         * modules/search-tests: New file.
19491         * tests/test-search.c: New file.
19492
19493         * modules/search: New file.
19494         * lib/search_.h: New file, incorporating lib/tsearch.h.
19495         * m4/search_h.m4: New file.
19496         * lib/tsearch.h: Remove file.
19497         * lib/tsearch.c: Include search.h instead of tsearch.h.
19498         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
19499         HAVE_TSEARCH.
19500         * modules/tsearch (Files): Remove lib/tsearch.h.
19501         (Depends-on): Add search.
19502         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
19503         (Include): Change tsearch.h into search.h.
19504
19505 2007-03-24  Bruno Haible  <bruno@clisp.org>
19506
19507         * modules/fpucw: New file.
19508         * lib/fpucw.h: New file.
19509         * lib/frexp.c: Include fpucw.h.
19510         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
19511         (FUNC): Use them.
19512         * lib/printf-frexp.c: Include fpucw.h.
19513         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
19514         (FUNC): Use them.
19515         * lib/vasnprintf.c: Include fpucw.h.
19516         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
19517         'long double' calculations.
19518         * tests/test-frexpl.c: Include fpucw.h.
19519         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
19520         * tests/test-printf-frexpl.c: Include fpucw.h.
19521         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
19522         * modules/frexpl (Depends-on): Add fpucw.
19523         * modules/printf-frexpl (Depends-on): Likewise.
19524         * modules/fprintf-posix (Depends-on): Likewise.
19525         * modules/snprintf-posix (Depends-on): Likewise.
19526         * modules/sprintf-posix (Depends-on): Likewise.
19527         * modules/vasnprintf-posix (Depends-on): Likewise.
19528         * modules/vasprintf-posix (Depends-on): Likewise.
19529         * modules/vfprintf-posix (Depends-on): Likewise.
19530         * modules/vsnprintf-posix (Depends-on): Likewise.
19531         * modules/vsprintf-posix (Depends-on): Likewise.
19532         * modules/frexpl-tests (Depends-on): Likewise.
19533         * modules/printf-frexpl-tests (Depends-on): Likewise.
19534
19535 2007-03-24  Bruno Haible  <bruno@clisp.org>
19536
19537         * lib/float+.h: New file.
19538         * lib/isnan.c: Include float+.h.
19539         (SIZE): New macro.
19540         (FUNC): Compare only SIZE bytes of the value.
19541         * lib/vasnprintf.c: Include float+.h.
19542         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
19543         SIZEOF_LDBL or SIZEOF_DBL bytes.
19544         * modules/isnan-nolibm (Files): Add lib/float+.h.
19545         * modules/isnanl-nolibm (Files): Add lib/float+.h.
19546         * modules/isnanl (Files): Add lib/float+.h.
19547         * modules/vasnprintf (Files): Add lib/float+.h.
19548
19549 2007-03-24  Bruno Haible  <bruno@clisp.org>
19550
19551         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
19552         include isnanl-nolibm.h.
19553
19554 2007-03-24  Bruno Haible  <bruno@clisp.org>
19555
19556         * tests/test-read-file.c (main): Don't produce spurious output for
19557         expected situations. Make the test fail if it encountered unexpected
19558         results.
19559
19560 2007-03-24  Bruno Haible  <bruno@clisp.org>
19561
19562         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
19563         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
19564
19565 2007-03-24  Bruno Haible  <bruno@clisp.org>
19566
19567         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
19568
19569 2007-03-24  Bruno Haible  <bruno@clisp.org>
19570
19571         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
19572         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
19573
19574         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
19575         * modules/utf8-ucs4: Turn into a symbolic link to module
19576         unistr/u8-mbtouc.
19577
19578         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
19579         utf8-ucs4-unsafe.
19580         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
19581         unistr/u8-mbtouc-unsafe.
19582
19583         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
19584         * modules/utf16-ucs4: Turn into a symbolic link to module
19585         unistr/u16-mbtouc.
19586
19587         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
19588         utf16-ucs4-unsafe.
19589         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
19590         unistr/u16-mbtouc-unsafe.
19591
19592         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
19593         * modules/ucs4-utf8: Turn into a symbolic link to module
19594         unistr/u8-ubtomb.
19595
19596         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
19597         * modules/ucs4-utf16: Turn into a symbolic link to module
19598         unistr/u16-ubtomb.
19599
19600 2007-03-24  Bruno Haible  <bruno@clisp.org>
19601
19602         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
19603         Enable the function only if HAVE_INLINE.
19604         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
19605         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
19606         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
19607         Enable the function only if HAVE_INLINE.
19608         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
19609         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
19610         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
19611         Enable the function only if HAVE_INLINE.
19612         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
19613         Enable the function only if HAVE_INLINE.
19614         * modules/utf8-ucs4: Update.
19615         * modules/utf8-ucs4-unsafe: Update.
19616         * modules/utf16-ucs4: Update.
19617         * modules/utf16-ucs4-unsafe: Update.
19618         * modules/ucs4-utf8: Update.
19619         * modules/ucs4-utf16: Update.
19620
19621 2007-03-24  Bruno Haible  <bruno@clisp.org>
19622
19623         * lib/utf8-ucs4.h: Remove file.
19624         * lib/utf8-ucs4-unsafe.h: Remove file.
19625         * lib/utf16-ucs4.h: Remove file.
19626         * lib/utf16-ucs4-unsafe.h: Remove file.
19627         * lib/ucs4-utf8.h: Remove file.
19628         * lib/ucs4-utf16.h: Remove file.
19629         * lib/unistr.h: Include their previous contents.
19630         * m4/utf-ucs4.m4: Remove file.
19631         * m4/ucs4-utf.m4: Remove file.
19632         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
19633         (Depends-on): Add unistr/base.
19634         (configure.ac): Remove gl_UTF_UCS4.
19635         (Makefile.am): Update.
19636         (Include): Change to unistr.h.
19637         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
19638         (Depends-on): Add unistr/base.
19639         (configure.ac): Remove gl_UTF_UCS4.
19640         (Makefile.am): Update.
19641         (Include): Change to unistr.h.
19642         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
19643         (Depends-on): Add unistr/base.
19644         (configure.ac): Remove gl_UTF_UCS4.
19645         (Makefile.am): Update.
19646         (Include): Change to unistr.h.
19647         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
19648         (Depends-on): Add unistr/base.
19649         (configure.ac): Remove gl_UTF_UCS4.
19650         (Makefile.am): Update.
19651         (Include): Change to unistr.h.
19652         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
19653         (Depends-on): Add unistr/base.
19654         (configure.ac): Remove gl_UCS4_UTF.
19655         (Makefile.am): Update.
19656         (Include): Change to unistr.h.
19657         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
19658         (Depends-on): Add unistr/base.
19659         (configure.ac): Remove gl_UCS4_UTF.
19660         (Makefile.am): Update.
19661         (Include): Change to unistr.h.
19662         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
19663         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
19664         utf8-ucs4-unsafe.h.
19665         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
19666         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
19667         utf16-ucs4-unsafe.h.
19668         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
19669         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
19670         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
19671         * lib/unistr/u8-strchr.c: Likewise.
19672         * lib/unistr/u8-strrchr.c: Likewise.
19673         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
19674         * lib/unistr/u16-strchr.c: Likewise.
19675         * lib/unistr/u16-strrchr.c: Likewise.
19676         * lib/striconveh.c: Update.
19677         * lib/linebreak.c: Update.
19678
19679 2007-03-24  Bruno Haible  <bruno@clisp.org>
19680
19681         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
19682         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
19683
19684 2007-03-22  Bruno Haible  <bruno@clisp.org>
19685
19686         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
19687
19688 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
19689
19690         * MODULES.html.sh (File system functions): New module write-any-file.
19691         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
19692         * m4/write-any-file.m4: New files.
19693
19694 2007-03-23  Eric Blake  <ebb9@byu.net>
19695
19696         * gnulib-tool: Rearrange space-tab sequences, since some editors
19697         like to eat them.
19698
19699 2007-03-23  Eric Blake  <ebb9@byu.net>
19700
19701         * lib/version-etc.c (version_etc_va): Update license wording to
19702         be more concise.  Recommended by Richard Stallman.
19703
19704 2007-03-22  Bruno Haible  <bruno@clisp.org>
19705
19706         * lib/poll.c (MSG_PEEK): New fallback definition.
19707
19708 2007-03-22  Bruno Haible  <bruno@clisp.org>
19709
19710         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
19711         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
19712         (main): Update.
19713         Fixes a compilation error on BeOS.
19714
19715 2007-03-22  Bruno Haible  <bruno@clisp.org>
19716
19717         * modules/frexpl-tests: New file.
19718         * tests/test-frexpl.c: New file.
19719
19720         * modules/frexpl: New file.
19721         * m4/frexpl.m4: New file.
19722         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
19723         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
19724         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
19725         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
19726         (Depends-on): Add frexpl. Remove isnanl-nolibm.
19727         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
19728
19729 2007-03-22  Bruno Haible  <bruno@clisp.org>
19730
19731         * lib/frexpl.c: Share code with lib/frexp.c.
19732         * modules/mathl (Files): Add lib/frexp.c.
19733         (Depends-on): Add isnanl-nolibm.
19734
19735 2007-03-22  Bruno Haible  <bruno@clisp.org>
19736
19737         * modules/printf-frexp (Files): Add m4/frexp.m4.
19738         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
19739         only if the found frexp function actually works.
19740
19741 2007-03-22  Bruno Haible  <bruno@clisp.org>
19742
19743         * lib/frexp.c: Remove older implementation that uses divisions.
19744
19745 2007-03-21  Bruno Haible  <bruno@clisp.org>
19746
19747         * modules/frexp-tests: New file.
19748         * tests/test-frexp.c: New file.
19749
19750         * modules/frexp: New file.
19751         * lib/frexp.c: New file.
19752         * m4/frexp.m4: New file.
19753         * lib/math_.h (frexp): New declaration.
19754         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
19755         REPLACE_FREXP.
19756         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
19757
19758 2007-03-21  Bruno Haible  <bruno@clisp.org>
19759
19760         * modules/isnanl-tests: New file.
19761         * tests/test-isnanl.c: New file.
19762
19763         * modules/isnanl: New file.
19764         * lib/isnanl.h: New file.
19765         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
19766         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
19767         gl_FUNC_ISNANL_WORKS.
19768         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
19769         New macros.
19770
19771 2007-03-21  Bruno Haible  <bruno@clisp.org>
19772
19773         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
19774         lib/isnanl.h.
19775         (Include): Update.
19776         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
19777         * lib/vasnprintf.c: Update.
19778         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
19779         tests/test-isnanl.h, remove tests/test-isnanl.c.
19780         (Makefile.am): Update.
19781         * tests/test-isnanl-nolibm.c: New file.
19782         * tests/test-isnanl.h: New file.
19783         * tests/test-isnanl.c: Remove file.
19784
19785 2007-03-21  Jim Meyering  <jim@meyering.net>
19786
19787         When trying to open ".", treat ESTALE like EACCES.
19788         * lib/savewd.c (savewd_save): Resort to forking not just upon
19789         failure with EACCES, but also when errno is ESTALE.
19790
19791 2007-03-20  Bruno Haible  <bruno@clisp.org>
19792
19793         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
19794         Needed on AIX 5.1. Reported by Matthew Woehlke.
19795
19796 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19797
19798         Suggestions by Bruno Haible:
19799         * lib/acl-internal.h: Include "gettext.h" rather than rolling
19800         our own.
19801         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
19802         * modules/acl (Depends-on): Add gettext.
19803
19804 2007-03-19  Bruno Haible  <bruno@clisp.org>
19805
19806         * modules/iconvme: Remove file.
19807         * lib/iconvme.h: Remove file.
19808         * lib/iconvme.c: Remove file.
19809         * m4/iconvme.m4: Remove file.
19810
19811 2007-03-19  Bruno Haible  <bruno@clisp.org>
19812
19813         * doc/relocatable-maint.texi: Break long shell script line.
19814         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
19815
19816 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19817
19818         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
19819         handle file_has_acl.
19820         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
19821         * lib/acl.c: Move header inclusions and related macro defns into
19822         lib/acl-internal.h.
19823         (S_ISLNK): Remove defn, since that's now done for us.
19824         (file_has_acl): Move to lib/file-has-acl.c.
19825         Call acl_trivial if available.  This is the crucial part of the fix.
19826         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
19827         shared within the library.  Rewrite a bit, partly to make it compatible
19828         with the GNU coding style.
19829         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
19830         Remove unnecessary double-quotes.
19831         Don't test for acl_to_text; the build will catch that.
19832         Replace acl_entries if it doesn't exist and it is needed.
19833         Check for -lsec and acl_trivial (as used on Solaris 10).
19834         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
19835         lib/file-has-acl.c.
19836         (Depends-on): Add sys_stat, for S_ISLNK.
19837
19838 2007-03-19  Ben Pfaff  <blp@gnu.org>
19839
19840         * doc/gnulib.texi: Fix typos.
19841         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
19842
19843 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
19844
19845         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
19846         If size is zero here, buf must be zero.
19847
19848 2007-03-19  Simon Josefsson  <simon@josefsson.org>
19849
19850         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
19851         <bruno@clisp.org>.
19852
19853 2007-03-18  Bruno Haible  <bruno@clisp.org>
19854
19855         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
19856         Suggested by Eric Blake.
19857
19858 2007-03-18  Ben Pfaff  <blp@gnu.org>
19859
19860         * doc/relocatable.texi: Recommend using as prefix a directory
19861         that does not exist and will never be created.  Based on
19862         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
19863         and others.
19864
19865 2007-03-17  Bruno Haible  <bruno@clisp.org>
19866
19867         * lib/fchownat.c: Include lchown.h.
19868
19869 2007-03-17  Bruno Haible  <bruno@clisp.org>
19870
19871         Fix endless loop when the given allocated size was > INT_MAX.
19872         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
19873         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
19874         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
19875         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
19876         * lib/sprintf.c (sprintf): Likewise.
19877
19878 2007-03-17  Bruno Haible  <bruno@clisp.org>
19879
19880         * tests/test-argp-2.sh (func_compare): Output a context diff.
19881
19882 2007-03-17  Bruno Haible  <bruno@clisp.org>
19883
19884         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
19885         locale's decimal-point character.
19886
19887 2007-03-17  Bruno Haible  <bruno@clisp.org>
19888
19889         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
19890         before comparing it. Needed because on some platforms (e.g. x86) a
19891         'long double' occupies less bytes than sizeof (long double).
19892
19893 2007-03-17  Bruno Haible  <bruno@clisp.org>
19894
19895         * tests/test-crc.c (main): Make printf statements 64-bit clean.
19896         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
19897         * tests/test-getaddrinfo.c (simple): Likewise.
19898         * tests/test-read-file.c (main): Likewise.
19899
19900 2007-03-17  Bruno Haible  <bruno@clisp.org>
19901
19902         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
19903
19904 2007-03-17  Bruno Haible  <bruno@clisp.org>
19905
19906         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
19907         unused variable.
19908
19909 2007-03-17  Bruno Haible  <bruno@clisp.org>
19910
19911         * tests/test-c-strcasecmp.c: Include c-strcase.h.
19912         * tests/test-c-strncasecmp.c: Likewise.
19913
19914 2007-03-17  Bruno Haible  <bruno@clisp.org>
19915
19916         * modules/stdlib (Depends-on): Add unistd.
19917         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
19918         Needed for MacOS X 10.3.
19919
19920 2007-03-17  Bruno Haible  <bruno@clisp.org>
19921
19922         * lib/unistr/u-strdup.h: Include <stdlib.h>.
19923
19924 2007-03-17  Bruno Haible  <bruno@clisp.org>
19925
19926         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
19927
19928 2007-03-17  Bruno Haible  <bruno@clisp.org>
19929
19930         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
19931         to reflect files copied from gnulib (with or without modifications).
19932         Suggested by Jim Meyering.
19933
19934 2007-03-17  Eric Blake  <ebb9@byu.net>
19935
19936         * NEWS: Document stdlib change from 2007-02-18.
19937
19938 2007-03-17  Jim Meyering  <jim@meyering.net>
19939
19940         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
19941         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
19942         someone uses a name containing shell meta-characters.
19943         Reported by Alfred M. Szmidt.
19944
19945         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
19946
19947 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
19948
19949         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
19950         and copy gettext configuration files only if configure.ac contains
19951         a use of AM_GNU_GETTEXT_VERSION.
19952
19953 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
19954
19955         * build-aux/bootstrap (gnulib_name): New variable.
19956         (gnulib_tool_options): Use it.
19957
19958 2007-03-13  Simon Josefsson  <simon@josefsson.org>
19959
19960         * tests/test-des.c: Use new namespace.
19961
19962 2007-03-15  Bruno Haible  <bruno@clisp.org>
19963
19964         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
19965         Reported by James Youngman <jay@gnu.org>.
19966
19967 2007-03-15  Bruno Haible  <bruno@clisp.org>
19968
19969         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
19970         declared prototype. Needed with cc on OSF/1 5.1.
19971
19972 2007-03-15  Bruno Haible  <bruno@clisp.org>
19973
19974         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
19975         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
19976         (struct gl_list_implementation): Add dispose_fn argument to the
19977         'create_empty', 'create' methods.
19978         (struct gl_list_impl_base): Add field 'dispose_fn'.
19979         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
19980         argument.
19981         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
19982         dispose_fn argument.
19983         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
19984         dispose_fn on the dropped values.
19985         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
19986         dispose_fn argument.
19987         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
19988         dropped values.
19989         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
19990         (gl_tree_remove_node): Call dispose_fn on the dropped value.
19991         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
19992         (gl_tree_remove_node): Call dispose_fn on the dropped value.
19993         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
19994         argument.
19995         (gl_tree_list_free): Call dispose_fn on the dropped values.
19996         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
19997         the dropped values.
19998         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
19999         Add dispose_fn argument.
20000         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
20001         Call dispose_fn on the dropped values.
20002         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
20003         Add dispose_fn argument.
20004         (gl_sublist_create): Initialize the 'dispose_fn' field.
20005         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
20006         * tests/test-array_list.c (main): Update.
20007         * tests/test-carray_list.c (main): Update.
20008         * tests/test-avltree_list.c (main): Update.
20009         * tests/test-rbtree_list.c (main): Update.
20010         * tests/test-avltreehash_list.c (main): Update.
20011         * tests/test-rbtreehash_list.c (main): Update.
20012         * tests/test-linked_list.c (main): Update.
20013         * tests/test-linkedhash_list.c (main): Update.
20014         * tests/test-array_oset.c (main): Update.
20015
20016 2007-03-15  Bruno Haible  <bruno@clisp.org>
20017
20018         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
20019         (gl_oset_create_empty): Add dispose_fn argument.
20020         (struct gl_oset_implementation): Add dispose_fn argument to
20021         'create_empty' method.
20022         (struct gl_oset_impl_base): Add dispose_fn field.
20023         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
20024         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
20025         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
20026         values.
20027         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
20028         (gl_tree_oset_free): Call dispose_fn on the dropped values.
20029         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
20030         dropped value.
20031         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
20032         dropped value.
20033         * tests/test-array_oset.c (main): Update.
20034         * tests/test-avltree_oset.c (main): Update.
20035         * tests/test-rbtree_oset.c (main): Update.
20036         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
20037
20038 2007-03-13  Bruno Haible  <bruno@clisp.org>
20039
20040         * tests/test-stdbool.c (i): Update after last patch.
20041
20042 2007-03-12  Bruno Haible  <bruno@clisp.org>
20043
20044         * lib/quotearg.c: Include <wctype.h> early, before the definition of
20045         the iswprint macro. Needed on Solaris 2.5.1.
20046
20047 2007-03-12  Bruno Haible  <bruno@clisp.org>
20048
20049         * tests/test-printf-frexp.c (main): Declare x as volatile.
20050
20051 2007-03-12  Simon Josefsson  <simon@josefsson.org>
20052
20053         * doc/gnulib.texi (Build robot for gnulib): New section.
20054
20055 2007-03-12  Jim Meyering  <jim@meyering.net>
20056
20057         * build-aux/bootstrap: New file.
20058         * build-aux/bootstrap.conf: New file, from coreutils.
20059
20060 2007-03-11  Bruno Haible  <bruno@clisp.org>
20061
20062         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
20063
20064 2007-03-12  Simon Josefsson  <simon@josefsson.org>
20065
20066         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
20067         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
20068         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
20069
20070 2007-03-11  Bruno Haible  <bruno@clisp.org>
20071
20072         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
20073         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
20074
20075 2007-03-11  Bruno Haible  <bruno@clisp.org>
20076
20077         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
20078         formula. Needed for SunPRO C 5.0.
20079
20080 2007-03-11  Bruno Haible  <bruno@clisp.org>
20081
20082         * modules/long-options (Depends-on): Add getopt.
20083
20084 2007-03-11  Bruno Haible  <bruno@clisp.org>
20085
20086         * modules/modechange (Depends-on): Add stdbool.
20087
20088 2007-03-11  Bruno Haible  <bruno@clisp.org>
20089
20090         * modules/i-ring (Depends-on): Add stdbool.
20091
20092 2007-03-11  Bruno Haible  <bruno@clisp.org>
20093
20094         * modules/gc-des (Depends-on): Add stdbool.
20095
20096 2007-03-11  Bruno Haible  <bruno@clisp.org>
20097
20098         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
20099
20100 2007-03-11  Bruno Haible  <bruno@clisp.org>
20101
20102         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
20103
20104 2007-03-11  Bruno Haible  <bruno@clisp.org>
20105
20106         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
20107
20108 2007-03-11  Bruno Haible  <bruno@clisp.org>
20109
20110         * lib/vasnprintf.c (sprintf): Undefine.
20111
20112 2007-03-11  Bruno Haible  <bruno@clisp.org>
20113
20114         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
20115         initializers in SunPRO C and Compaq C compilers.
20116
20117 2007-03-11  Bruno Haible  <bruno@clisp.org>
20118
20119         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
20120         decrementing code ANSI C compliant.
20121
20122 2007-03-11  Bruno Haible  <bruno@clisp.org>
20123
20124         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
20125         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
20126
20127 2007-03-11  Bruno Haible  <bruno@clisp.org>
20128
20129         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
20130         <stdbool.h> substitute doesn't pass.
20131
20132 2007-03-11  Bruno Haible  <bruno@clisp.org>
20133
20134         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
20135
20136 2007-03-11  Bruno Haible  <bruno@clisp.org>
20137
20138         * gnulib-tool (func_create_megatestdir): Create also an autobuild
20139         script, for submission to autobuild.josefsson.org.
20140
20141 2007-03-10  Bruno Haible  <bruno@clisp.org>
20142
20143         * modules/canonicalize-lgpl-tests: New file.
20144         * tests/test-canonicalize-lgpl.sh: New file.
20145         * tests/test-canonicalize-lgpl.c: New file.
20146
20147         * modules/c-strcase-tests: New file.
20148         * tests/test-c-strcase.sh: New file.
20149         * tests/test-c-strcasecmp.c: New file.
20150         * tests/test-c-strncasecmp.c: New file.
20151
20152         * modules/atexit-tests: New file.
20153         * tests/test-atexit.sh: New file.
20154         * tests/test-atexit.c: New file.
20155
20156 2007-03-10  Bruno Haible  <bruno@clisp.org>
20157
20158         * tests/test-binary-io.sh: Use temporary filenames that are not so
20159         likely to clash with those of other tests (in a parallel make).
20160         * tests/test-binary-io.c: Likewise.
20161
20162 2007-03-10  Bruno Haible  <bruno@clisp.org>
20163
20164         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
20165         fallback; use #error instead.
20166         Suggested by Simon Josefsson.
20167
20168 2007-03-10  Bruno Haible  <bruno@clisp.org>
20169
20170         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
20171         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
20172         first and the last.
20173
20174 2007-03-10  Bruno Haible  <bruno@clisp.org>
20175
20176         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
20177
20178 2007-03-10  Bruno Haible  <bruno@clisp.org>
20179
20180         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
20181         "make distcheck".
20182         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
20183         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
20184         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
20185
20186 2007-03-10  Bruno Haible  <bruno@clisp.org>
20187
20188         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
20189         variable.
20190         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
20191         variable.
20192
20193 2007-03-09  Eric Blake  <ebb9@byu.net>
20194         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
20195
20196         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
20197         types are not being provided by gnulib.
20198         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
20199         types are supported.
20200
20201 2007-03-10  Bruno Haible  <bruno@clisp.org>
20202
20203         * lib/stdio_.h (__attribute__): New macro.
20204         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
20205         vsprintf): Specify __attribute__ __format__ for GCC.
20206         Suggested by Eric Blake.
20207
20208 2007-03-09  Bruno Haible  <bruno@clisp.org>
20209
20210         * modules/printf-posix-tests: New file.
20211         * tests/test-printf-posix.sh: New file.
20212         * tests/test-printf-posix.c: New file.
20213
20214         * modules/printf-posix: New file.
20215         * lib/printf.c: New file.
20216         * m4/printf-posix-rpl.m4: New file.
20217         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
20218         REPLACE_PRINTF.
20219         * lib/stdio_.h (printf): New declaration.
20220         (format, __format__, ____printf____, ____scanf____, ____strftime____,
20221         ____strfmon____): New macros.
20222         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
20223         REPLACE_PRINTF.
20224
20225 2007-03-09  Bruno Haible  <bruno@clisp.org>
20226
20227         * tests/test-vasnprintf-posix2.sh: New file.
20228         * tests/test-vasnprintf-posix2.c: New file.
20229         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
20230         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
20231         (Makefile.am): Activate test-vasnprintf-posix2.sh.
20232
20233         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
20234         a locale dependent decimal point, rather than always '.'.
20235
20236 2007-03-09  Eric Blake  <ebb9@byu.net>
20237
20238         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
20239         spite of platforms like Tandem/NSK that define it to -1.
20240
20241 2007-03-08  Bruno Haible  <bruno@clisp.org>
20242
20243         * modules/vprintf-posix-tests: New file.
20244         * tests/test-vprintf-posix.sh: New file.
20245         * tests/test-vprintf-posix.c: New file.
20246         * tests/test-printf-posix.h: New file.
20247
20248         * modules/vprintf-posix: New file.
20249         * lib/vprintf.c: New file.
20250         * m4/vprintf-posix.m4: New file.
20251         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
20252         REPLACE_VPRINTF.
20253         * lib/stdio_.h (vprintf): New declaration.
20254         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
20255         REPLACE_VPRINTF.
20256
20257 2007-03-08  Bruno Haible  <bruno@clisp.org>
20258
20259         * modules/fprintf-posix-tests: New file.
20260         * tests/test-fprintf-posix.sh: New file.
20261         * tests/test-fprintf-posix.c: New file.
20262
20263         * modules/fprintf-posix: New file.
20264         * lib/fprintf.c: New file.
20265         * m4/fprintf-posix.m4: New file.
20266         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
20267         REPLACE_FPRINTF.
20268         * lib/stdio_.h (fprintf): New declaration.
20269         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
20270         REPLACE_FPRINTF.
20271
20272 2007-03-08  Bruno Haible  <bruno@clisp.org>
20273
20274         * modules/vfprintf-posix-tests: New file.
20275         * tests/test-vfprintf-posix.sh: New file.
20276         * tests/test-vfprintf-posix.c: New file.
20277         * tests/test-fprintf-posix.h: New file.
20278         * tests/test-fprintf-posix.out: New file.
20279
20280         * modules/vfprintf-posix: New file.
20281         * lib/vfprintf.c: New file.
20282         * m4/vfprintf-posix.m4: New file.
20283         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
20284         REPLACE_VFPRINTF.
20285         * lib/stdio_.h (vfprintf): New declaration.
20286         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
20287         REPLACE_VFPRINTF.
20288
20289 2007-03-08  Bruno Haible  <bruno@clisp.org>
20290
20291         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
20292
20293 2007-03-08  Bruno Haible  <bruno@clisp.org>
20294
20295         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
20296         instead of 'expr' invocations.
20297         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
20298         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
20299         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
20300         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
20301         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
20302         Suggested by Paul Eggert.
20303
20304 2007-03-08  Bruno Haible  <bruno@clisp.org>
20305
20306         * modules/fseterr-tests: New file.
20307         * tests/test-fseterr.c: New file.
20308
20309         * modules/fseterr: New file.
20310         * lib/fseterr.h: New file.
20311         * lib/fseterr.c: New file.
20312
20313 2007-03-08  Bruno Haible  <bruno@clisp.org>
20314
20315         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
20316         * lib/getopt_.h: Likewise.
20317         * lib/mbswidth.h: Likewise.
20318         * lib/setenv.h: Likewise.
20319         * lib/vasnprintf.h: Likewise.
20320         * lib/vasprintf.h: Likewise.
20321         * lib/verror.h: Likewise.
20322         * lib/xsetenv.h: Likewise.
20323         * lib/xvasprintf.h: Likewise.
20324
20325 2007-03-08  Jim Meyering  <jim@meyering.net>
20326
20327         * users.txt: Add parted.
20328
20329         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
20330
20331 2007-03-07  Bruno Haible  <bruno@clisp.org>
20332
20333         * m4/printf.m4: Make the shell script snippets copy&pastable.
20334
20335 2007-03-02  Bruno Haible  <bruno@clisp.org>
20336
20337         * lib/netinet_in_.h: New file.
20338         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
20339         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
20340         * modules/netinet_in (Files): Add lib/netinet_in_.h.
20341         (Depends-on): Add absolute-header.
20342         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
20343         into netinet/in.h.
20344
20345 2007-03-03  Bruno Haible  <bruno@clisp.org>
20346
20347         * lib/sys_select_.h: New file.
20348         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
20349         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
20350         * modules/sys_select (Files): Add lib/sys_select_.h.
20351         (Depends-on): Add absolute-header.
20352         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
20353         into sys/select.h.
20354
20355 2007-03-02  Bruno Haible  <bruno@clisp.org>
20356
20357         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
20358         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
20359         values.
20360         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
20361         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
20362         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
20363         * modules/sys_socket (Depends-on): Add absolute-header.
20364         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
20365         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
20366         (Include): Remove requirement of inclusion of <sys/types.h>.
20367
20368 2007-03-02  Bruno Haible  <bruno@clisp.org>
20369
20370         * lib/byteswap_.h (bswap_32): Fix formula.
20371
20372 2007-03-06  Bruno Haible  <bruno@clisp.org>
20373
20374         * modules/sprintf-posix-tests: New file.
20375         * tests/test-sprintf-posix.c: New file.
20376
20377         * modules/sprintf-posix: New file.
20378         * lib/sprintf.c: New file.
20379         * m4/sprintf-posix.m4: New file.
20380         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
20381         REPLACE_SPRINTF.
20382         * lib/stdio_.h (sprintf): New declaration.
20383         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
20384         REPLACE_SPRINTF.
20385
20386 2007-03-06  Bruno Haible  <bruno@clisp.org>
20387
20388         * modules/vsprintf-posix-tests: New file.
20389         * tests/test-vsprintf-posix.c: New file.
20390         * tests/test-sprintf-posix.h: New file.
20391
20392         * modules/vsprintf-posix: New file.
20393         * lib/vsprintf.c: New file.
20394         * m4/vsprintf-posix.m4: New file.
20395         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
20396         REPLACE_VSPRINTF.
20397         * lib/stdio_.h (vsprintf): New declaration.
20398         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
20399         REPLACE_VSPRINTF.
20400
20401 2007-03-06  Bruno Haible  <bruno@clisp.org>
20402
20403         * modules/vsnprintf (Depend-on): Remove minmax.
20404
20405 2007-03-06  Bruno Haible  <bruno@clisp.org>
20406
20407         * modules/snprintf-posix-tests: New file.
20408         * tests/test-snprintf-posix.c: New file.
20409
20410         * modules/snprintf-posix: New file.
20411         * m4/snprintf-posix.m4: New file.
20412         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
20413         gl_FUNC_SNPRINTF.
20414         (gl_FUNC_SNPRINTF): Invoke it.
20415         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
20416         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
20417         is set.
20418         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
20419
20420 2007-03-06  Bruno Haible  <bruno@clisp.org>
20421
20422         * modules/vsnprintf-posix-tests: New file.
20423         * tests/test-vsnprintf-posix.c: New file.
20424         * tests/test-snprintf-posix.h: New file.
20425
20426         * modules/vsnprintf-posix: New file.
20427         * m4/vsnprintf-posix.m4: New file.
20428         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
20429         gl_FUNC_VSNPRINTF.
20430         (gl_FUNC_VSNPRINTF): Invoke it.
20431         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
20432         * lib/stdio_.h (vsnprintf): Define as a replacement if
20433         REPLACE_VSNPRINTF is set.
20434         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
20435
20436 2007-03-06  Bruno Haible  <bruno@clisp.org>
20437
20438         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
20439         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
20440
20441 2007-03-06  Bruno Haible  <bruno@clisp.org>
20442
20443         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
20444         (asinl): Declare also if HAVE_DECL_ASINL is set.
20445         (atanl): Declare also if HAVE_DECL_ATANL is set.
20446         (ceill): Declare also if HAVE_DECL_CEILL is set.
20447         (cosl): Declare also if HAVE_DECL_COSL is set.
20448         (expl): Declare also if HAVE_DECL_EXPL is set.
20449         (floorl): Declare also if HAVE_DECL_FLOORL is set.
20450         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
20451         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
20452         (logl): Declare also if HAVE_DECL_LOGL is set.
20453         (sinl): Declare also if HAVE_DECL_SINL is set.
20454         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
20455         (tanl): Declare also if HAVE_DECL_TANL is set.
20456         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
20457         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
20458         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
20459         declaration of frexpl, ldexpl.
20460         * modules/printf-frexpl (Depends-on): Add math.
20461         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
20462
20463 2007-03-05  Bruno Haible  <bruno@clisp.org>
20464
20465         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
20466         frexpl and ldexpl are declared.
20467         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
20468
20469 2007-03-05  Bruno Haible  <bruno@clisp.org>
20470
20471         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
20472         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
20473
20474 2007-03-05  Bruno Haible  <bruno@clisp.org>
20475
20476         * lib/stdio_.h: Include <stddef.h>.
20477
20478 2007-03-05  Bruno Haible  <bruno@clisp.org>
20479
20480         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
20481
20482 2007-03-05  Bruno Haible  <bruno@clisp.org>
20483
20484         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
20485         NetBSD 4, from Ralf Wildenhues.
20486
20487 2007-03-04  Bruno Haible  <bruno@clisp.org>
20488
20489         * lib/vasprintf.h: Update #if logic for the case when the functions
20490         exist but are overridden.
20491
20492 2007-03-04  Bruno Haible  <bruno@clisp.org>
20493
20494         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
20495         implementations: glibc-2.4 and MacOS X 10.3.
20496         * tests/test-vasnprintf-posix.c (test_function): Test also the case
20497         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
20498         * tests/test-vasprintf-posix.c (test_function): Likewise.
20499
20500 2007-03-04  Bruno Haible  <bruno@clisp.org>
20501
20502         * modules/vasprintf-posix-tests: New file.
20503         * tests/test-vasprintf-posix.c: New file.
20504
20505         * modules/vasprintf-posix: New file.
20506         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
20507         defined.
20508         * m4/vasprintf-posix.m4: New file.
20509         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
20510         gl_FUNC_VASPRINTF.
20511         (gl_FUNC_VASPRINTF): Invoke it.
20512         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
20513         here.
20514         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
20515
20516 2007-03-04  Bruno Haible  <bruno@clisp.org>
20517
20518         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
20519         REPLACE_GETTIMEOFDAY.
20520         * modules/sys_time (Makefile.am): Likewise.
20521         * m4/sys_time_h.m4: Likewise.
20522         * m4/gettimeofday.m4: Likewise.
20523
20524 2007-03-04  Bruno Haible  <bruno@clisp.org>
20525
20526         * modules/vasnprintf-posix-tests: New file.
20527         * tests/test-vasnprintf-posix.c: New file.
20528
20529         * modules/vasnprintf-posix: New file.
20530         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
20531         printf-frexpl.h.
20532         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
20533         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
20534         REPLACE_VASNPRINTF is defined.
20535         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
20536         gl_FUNC_VASNPRINTF.
20537         (gl_FUNC_VASNPRINTF): Invoke it.
20538         * m4/vasnprintf-posix.m4: New file.
20539         * m4/printf.m4: New file.
20540
20541 2007-03-04  Bruno Haible  <bruno@clisp.org>
20542
20543         Compile progreloc.c only if --enable-relocatable is specified.
20544         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
20545         if --enable-relocatable was specified.
20546         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
20547         lib_SOURCES.
20548
20549 2007-03-04  Jim Meyering  <jim@meyering.net>
20550
20551         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
20552         Use it consistently, rather than enumerating errno constants.
20553
20554 2007-03-04  Bruno Haible  <bruno@clisp.org>
20555
20556         * modules/xvasprintf-tests: New file.
20557         * tests/test-xvasprintf.c: New file.
20558
20559         * modules/vasprintf-tests: New file.
20560         * tests/test-vasprintf.c: New file.
20561
20562         * modules/vasnprintf-tests: New file.
20563         * tests/test-vasnprintf.c: New file.
20564
20565         * modules/vsnprintf-tests: New file.
20566         * tests/test-vsnprintf.c: New file.
20567
20568         * modules/snprintf-tests: New file.
20569         * tests/test-snprintf.c: New file.
20570
20571 2007-03-04  Bruno Haible  <bruno@clisp.org>
20572
20573         Compile relocatable.c only if --enable-relocatable is specified.
20574         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
20575         gl_RELOCATABLE_LIBRARY.
20576         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
20577         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
20578         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
20579         gl_RELOCATABLE_LIBRARY.
20580         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
20581         (Makefile.am): Remove lib_SOURCES.
20582         * modules/relocatable-lib-lgpl (configure.ac): Invoke
20583         gl_RELOCATABLE_LIBRARY.
20584         (Makefile.am): Remove lib_SOURCES.
20585         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
20586         always.
20587         * modules/relocatable-prog-wrapper (configure.ac): Invoke
20588         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
20589
20590 2007-03-04  Bruno Haible  <bruno@clisp.org>
20591
20592         * modules/argmatch-tests: New file.
20593         * tests/test-argmatch.c: New file.
20594
20595         * tests/test-allocsa.c (main): Halve the number of loop runs.
20596
20597         * modules/alloca-opt-tests: New file.
20598         * tests/test-alloca-opt.c: New file.
20599
20600 2007-03-04  Jim Meyering  <jim@meyering.net>
20601
20602         Work around difference between Linux ACLs and Solaris 10 ZFS.
20603         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
20604         for EINVAL.
20605
20606 2007-03-03  Bruno Haible  <bruno@clisp.org>
20607
20608         * modules/relocatable-prog (Depends-on): Add back progreloc's
20609         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
20610
20611 2007-03-03  Bruno Haible  <bruno@clisp.org>
20612
20613         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
20614         * modules/relocatable-lib: New file.
20615
20616 2007-03-03  Bruno Haible  <bruno@clisp.org>
20617
20618         * modules/relocatable-prog: Renamed from modules/relocatable.
20619         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
20620
20621 2007-03-03  Bruno Haible  <bruno@clisp.org>
20622
20623         * modules/relocatable-script (Files): Add doc/relocatable.texi,
20624         m4/relocatable-lib.m4.
20625         (Depends-on): Remove 'relocatable'.
20626         (configure.ac): Add gl_RELOCATABLE_NOP.
20627
20628 2007-03-03  Bruno Haible  <bruno@clisp.org>
20629
20630         * modules/relocatable-prog-wrapper: New file.
20631         * modules/relocatable (Depends-on): Add it. Remove all other
20632         dependencies except progname.
20633         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
20634
20635         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
20636         (gl_FUNC_STRERROR): Nop.
20637         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
20638
20639         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
20640         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
20641
20642         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
20643         (gl_FUNC_READLINK): Update.
20644
20645         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
20646
20647 2007-03-03  Bruno Haible  <bruno@clisp.org>
20648
20649         * lib/xreadlink.c: Include <unistd.h> unconditionally.
20650         * modules/xreadlink (Depends-on): Add unistd.
20651         * modules/xreadlink-with-size (Depends-on): Likewise.
20652
20653 2007-03-03  Bruno Haible  <bruno@clisp.org>
20654
20655         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
20656         extracted from gt_FUNC_SETENV.
20657         (gt_FUNC_SETENV): Remove macro.
20658         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
20659         remove gt_FUNC_SETENV.
20660
20661 2007-03-03  Bruno Haible  <bruno@clisp.org>
20662
20663         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
20664         ENABLE_RELOCATABLE here.
20665         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
20666
20667 2007-03-03  Bruno Haible  <bruno@clisp.org>
20668
20669         * modules/rbtreehash-list-tests (Depends-on): Add progname.
20670         * tests/test-rbtreehash_list.c: Include progname.h.
20671         (main): Call set_program_name.
20672
20673         * modules/rbtree-oset-tests (Depends-on): Add progname.
20674         * tests/test-rbtree_oset.c: Include progname.h.
20675         (main): Call set_program_name.
20676
20677         * modules/rbtree-list-tests (Depends-on): Add progname.
20678         * tests/test-rbtree_list.c: Include progname.h.
20679         (main): Call set_program_name.
20680
20681         * modules/linked-list-tests (Depends-on): Add progname.
20682         * tests/test-linked_list.c: Include progname.h.
20683         (main): Call set_program_name.
20684
20685 2007-03-03  Bruno Haible  <bruno@clisp.org>
20686
20687         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
20688         All uses of __restrict changed to _Restrict_.
20689         * lib/glob_.h (__restrict): Remove macro.
20690
20691 2007-03-02  Bruno Haible  <bruno@clisp.org>
20692
20693         * modules/gettext (configure.ac): Require gettext infrastructure
20694         from version 0.16.1.
20695
20696 2007-03-02  Bruno Haible  <bruno@clisp.org>
20697
20698         * modules/linkedhash-list-tests (Depends-on): Add progname.
20699         * tests/test-linkedhash_list.c: Include progname.h.
20700         (main): Call set_program_name.
20701
20702         * modules/carray-list-tests (Depends-on): Add progname.
20703         * tests/test-carray_list.c: Include progname.h.
20704         (main): Call set_program_name.
20705
20706         * modules/avltreehash-list-tests (Depends-on): Add progname.
20707         * tests/test-avltreehash_list.c: Include progname.h.
20708         (main): Call set_program_name.
20709
20710         * modules/avltree-oset-tests (Depends-on): Add progname.
20711         * tests/test-avltree_oset.c: Include progname.h.
20712         (main): Call set_program_name.
20713
20714         * modules/avltree-list-tests (Depends-on): Add progname.
20715         * tests/test-avltree_list.c: Include progname.h.
20716         (main): Call set_program_name.
20717
20718         * modules/array-oset-tests (Depends-on): Add progname.
20719         * tests/test-array_oset.c: Include progname.h.
20720         (main): Call set_program_name.
20721
20722         * modules/array-list-tests (Depends-on): Add progname.
20723         * tests/test-array_list.c: Include progname.h.
20724         (main): Call set_program_name.
20725
20726         * modules/argp-tests (Depends-on): Add progname.
20727         * tests/test-argp.c: Include argp.h first. Include progname.h.
20728         (main): Call set_program_name.
20729
20730 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
20731
20732         * doc/gnulib-tool.texi (Initial import): Reword description of
20733         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
20734         limited effect even if defined after the first system include.
20735
20736 2007-03-01  Bruno Haible  <bruno@clisp.org>
20737
20738         * build-aux/config.libpath: Update to libtool-1.5.22.
20739         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
20740
20741 2007-03-01  Bruno Haible  <bruno@clisp.org>
20742
20743         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
20744         foo_CFLAGS.
20745         Reported by Ralf Wildenhues.
20746
20747 2007-03-01  Bruno Haible  <bruno@clisp.org>
20748
20749         * build-aux/install-reloc: Remove object files left over by some
20750         compilers.
20751         Reported by Ralf Wildenhues.
20752
20753 2007-03-01  Bruno Haible  <bruno@clisp.org>
20754
20755         * build-aux/install-reloc: Break long lines.
20756
20757 2007-03-01  Bruno Haible  <bruno@clisp.org>
20758
20759         * doc/relocatable.texi: Document that it may not work on OpenBSD.
20760         Reported by Ralf Wildenhues.
20761
20762 2007-03-01  Bruno Haible  <bruno@clisp.org>
20763
20764         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
20765         include ordering constraints.
20766
20767 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
20768
20769         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
20770         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
20771         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
20772         as another example.
20773         * lib/time_.h: Fix misspelling.
20774         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
20775         Require gl_HEADER_TIME_H_DEFAULTS.
20776         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
20777         * m4/time_r.m4 (gl_TIME_R): Likewise.
20778         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
20779
20780 2007-03-01  Bruno Haible  <bruno@clisp.org>
20781
20782         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
20783         * m4/utimens.m4 (gl_UTIMENS): Likewise.
20784
20785 2007-03-01  Jim Meyering  <jim@meyering.net>
20786
20787         * modules/xreadlink (Maintainer): Add my name.
20788         * modules/xreadlink-with-size (Depends-on): Alphabetize.
20789
20790 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
20791             Bruno Haible  <bruno@clisp.org>
20792
20793         * build-aux/install-reloc: Compile also c-ctype.c.
20794         * build-aux/relocatable.sh.in: New file.
20795         * doc/relocatable.texi: New file.
20796         * doc/relocatable-maint.texi: New file.
20797         * doc/gnulib.texi: Include relocatable-maint.texi.
20798         * lib/progreloc.c: Include unistd.h unconditionally.
20799         * lib/relocwrapper.c: Include unistd.h unconditionally.
20800         Include c-ctype.h.
20801         (add_dotbin): Use c_tolower.
20802         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
20803         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
20804         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
20805         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
20806         to m4/relocatable-lib.m4.
20807         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
20808         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
20809         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
20810         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
20811         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
20812         * modules/relocatable: New file.
20813         * modules/relocatable-lib: New file.
20814         * modules/relocatable-script: New file.
20815
20816 2007-02-28  Bruno Haible  <bruno@clisp.org>
20817
20818         Import --enable-relocatable infrastructure.
20819         * build-aux/config.libpath: New file, from GNU gettext.
20820         * build-aux/install-reloc: New file, from GNU gettext.
20821         * build-aux/reloc-ldflags: New file, from GNU gettext.
20822         * lib/relocatable.h: New file, from GNU gettext.
20823         * lib/relocatable.c: New file, from GNU gettext.
20824         * lib/relocwrapper.c: New file, from GNU gettext.
20825         * m4/relocatable.m4: New file, from GNU gettext.
20826
20827 2007-02-28  Bruno Haible  <bruno@clisp.org>
20828
20829         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
20830
20831         * modules/xreadlink: New file, from GNU gettext with modifications.
20832         * lib/xreadlink.c: New file, from GNU gettext.
20833         * lib/xreadlink.h: Add comments.
20834         (xreadlink): New declaration.
20835
20836         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
20837         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
20838         lib/xreadlink-with-size.c.
20839         (configure.ac): Remove gl_XREADLINK invocation.
20840         (Makefile.am): Augment lib_SOURCES.
20841         * m4/xreadlink.m4: Remove file.
20842         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
20843         (xreadlink_with_size): Renamed from xreadink.
20844         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
20845         * modules/canonicalize (Depends-on): Replace xreadlink with
20846         xreadlink-with-size.
20847         * lib/canonicalize.c (canonicalize_filename_mode): Update.
20848
20849 2007-02-25  Jim Meyering  <jim@meyering.net>
20850
20851         * build-aux/announce-gen: When complaining about excess arguments,
20852         list them.
20853
20854 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
20855
20856         * README: Document signed integer overflow situation more
20857         accurately.
20858
20859 2007-02-25  Bruno Haible  <bruno@clisp.org>
20860
20861         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
20862         'a' or 'A' conversion.
20863
20864 2007-02-25  Bruno Haible  <bruno@clisp.org>
20865
20866         * modules/filename: Renamed from modules/pathname.
20867         (Files): Replace lib/pathname.h with lib/filename.h. Replace
20868         lib/concatpath.c with lib/concat-filename.c.
20869         (Makefile.am): Update.
20870         (Include): Replace pathname.h with filename.h.
20871         * lib/filename.h: Renamed from lib/pathname.h.
20872         (concatenated_filename): Renamed from concatenated_pathname.
20873         * lib/concat-filename.c: Renamed from lib/concatpath.c.
20874         (concatenated_filename): Renamed from concatenated_pathname.
20875         * lib/findprog.c: Include filename.h instead of pathname.h.
20876         (find_in_path): Update.
20877         * lib/javacomp.c: Include filename.h instead of pathname.h.
20878         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
20879         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
20880         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
20881         is_oldgcj_14_13_usable, is_javac_usable): Update.
20882         * lib/javaexec.c: Include filename.h instead of pathname.h.
20883         (execute_java_class): Update.
20884         * modules/findprog: Update.
20885         * modules/javacomp: Update.
20886         * modules/javaexec: Update.
20887         * MODULES.html.sh (File system functions): Add 'filename', remove
20888         'pathname'.
20889
20890 2007-02-25  Bruno Haible  <bruno@clisp.org>
20891
20892         * modules/printf-frexpl-tests: New file.
20893         * tests/test-printf-frexpl.c: New file.
20894
20895         * modules/printf-frexpl: New file.
20896         * lib/printf-frexpl.h: New file.
20897         * lib/printf-frexpl.c: New file.
20898         * m4/printf-frexpl.m4: New file.
20899
20900 2007-02-25  Bruno Haible  <bruno@clisp.org>
20901
20902         * modules/printf-frexp-tests: New file.
20903         * tests/test-printf-frexp.c: New file.
20904
20905         * modules/printf-frexp: New file.
20906         * lib/printf-frexp.h: New file.
20907         * lib/printf-frexp.c: New file.
20908         * m4/printf-frexp.m4: New file.
20909
20910 2007-02-25  Bruno Haible  <bruno@clisp.org>
20911
20912         Assume automake >= 1.10 for the tests.
20913         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
20914         * modules/arctwo-tests: Likewise.
20915         * modules/argp-tests: Likewise.
20916         * modules/avltree-list-tests: Likewise.
20917         * modules/avltree-oset-tests: Likewise.
20918         * modules/avltreehash-list-tests: Likewise.
20919         * modules/carray-list-tests: Likewise.
20920         * modules/crc-tests: Likewise.
20921         * modules/des-tests: Likewise.
20922         * modules/gc-arcfour-tests: Likewise.
20923         * modules/gc-arctwo-tests: Likewise.
20924         * modules/gc-des-tests: Likewise.
20925         * modules/gc-hmac-md5-tests: Likewise.
20926         * modules/gc-hmac-sha1-tests: Likewise.
20927         * modules/gc-md2-tests: Likewise.
20928         * modules/gc-md4-tests: Likewise.
20929         * modules/gc-md5-tests: Likewise.
20930         * modules/gc-pbkdf2-sha1-tests: Likewise.
20931         * modules/gc-rijndael-tests: Likewise.
20932         * modules/gc-sha1-tests: Likewise.
20933         * modules/gc-tests: Likewise.
20934         * modules/getaddrinfo-tests: Likewise.
20935         * modules/hmac-md5-tests: Likewise.
20936         * modules/hmac-sha1-tests: Likewise.
20937         * modules/linked-list-tests: Likewise.
20938         * modules/linkedhash-list-tests: Likewise.
20939         * modules/lock-tests: Likewise.
20940         * modules/md2-tests: Likewise.
20941         * modules/md4-tests: Likewise.
20942         * modules/md5-tests: Likewise.
20943         * modules/rbtree-list-tests: Likewise.
20944         * modules/rbtree-oset-tests: Likewise.
20945         * modules/rbtreehash-list-tests: Likewise.
20946         * modules/read-file-tests: Likewise.
20947         * modules/rijndael-tests: Likewise.
20948         * modules/stdint-tests: Likewise.
20949         * modules/tls-tests: Likewise.
20950
20951 2007-02-24  Bruno Haible  <bruno@clisp.org>
20952
20953         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
20954         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
20955         function; instead check whether isnan with a double argument links.
20956         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
20957         function; instead check whether isnan with a 'long double' argument
20958         links.
20959         Reported by Eric Blake <ebb9@byu.net>.
20960
20961 2007-02-24  Bruno Haible  <bruno@clisp.org>
20962
20963         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
20964         defined.
20965         * lib/isnanl.c: Remove all code. Just include isnan.c.
20966         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
20967
20968 2007-02-25  Jim Meyering  <jim@meyering.net>
20969
20970         Avoid conflicting types for 'unsetenv' on FreeBSD.
20971         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
20972         conflicting with FreeBSD's (5.0 and 6.1) function declaration
20973         in stdlib.h.
20974
20975 2007-02-24  Bruno Haible  <bruno@clisp.org>
20976
20977         * modules/isnanl-nolibm-tests: New file.
20978         * tests/test-isnanl.c: New file.
20979
20980         * modules/isnanl-nolibm: New file.
20981         * lib/isnanl.h: New file.
20982         * lib/isnanl.c: New file.
20983         * m4/isnanl.m4: New file.
20984
20985 2007-02-24  Bruno Haible  <bruno@clisp.org>
20986
20987         * modules/isnan-nolibm-tests: New file.
20988         * tests/test-isnan.c: New file.
20989
20990         * modules/isnan-nolibm: New file.
20991         * lib/isnan.h: New file.
20992         * lib/isnan.c: New file.
20993         * m4/isnan.m4: New file.
20994
20995 2007-02-24  Bruno Haible  <bruno@clisp.org>
20996
20997         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
20998         assume that an exponent fits in 20 bits.
20999
21000 2007-02-24  Jim Meyering  <jim@meyering.net>
21001
21002         * m4/regex.m4: Update the description of the configure-time option,
21003         --without-included-regex, to state accurately what the defaults are,
21004         and perhaps to give people an idea why using this option is risky.
21005
21006 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
21007
21008         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
21009         loops on small arguments.  This attempts to avoid the problem
21010         Bruno Haible reported for AIX 4.3.2 in
21011         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
21012
21013 2007-02-23  Bruno Haible  <bruno@clisp.org>
21014
21015         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
21016         Needed for help2man.
21017
21018 2007-02-23  Karl Berry  <karl@gnu.org>
21019
21020         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
21021         exists, foo.h should be cvs-ignored, not committed.
21022
21023 2007-02-23  Eric Blake  <ebb9@byu.net>
21024
21025         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
21026         * lib/stat-time.h (includes): Likewise.
21027         * lib/utimecmp.c (includes): Likewise.
21028         * lib/utimens.h (includes): Likewise.
21029         * lib/getdate.y (includes): Also include "timespec.h" for use
21030         internal to the module.
21031         * modules/utimens (Depends-on): Revert yesterday's patch.
21032         * modules/nanosleep (Depends-on): Add missing dependency.
21033
21034 2007-02-22  Bruno Haible  <bruno@clisp.org>
21035
21036         * lib/glob.c: Don't include getlogin_r.h.
21037
21038 2007-02-22  Jim Meyering  <jim@meyering.net>
21039
21040         * modules/utimens (Depends-on): Add timespec, required for
21041         utimens.h's inclusion of timespec.h.
21042
21043 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
21044
21045         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
21046         long unreadable paths in GNU/Linux.  Problem reported by Andreas
21047         Schwab in
21048         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
21049         I'll try to think of a better way to fix the Solaris problem.
21050
21051         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
21052         like glibc; on Solaris 10, it fails with errno == EINVAL.
21053         POSIX says the behavior is unspecified if the first argument is NULL,
21054         so play it safe and never pass NULL to the system getcwd.
21055
21056 2007-02-21  Jim Meyering  <jim@meyering.net>
21057
21058         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
21059         of gettimeofday.  It would conflict with the one now always
21060         provided via sys_time_.h.  Reported by Matthew Woehlke, as
21061         an IRIX 6.5 build failure.
21062
21063 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
21064
21065         Minor fixups to port to Solaris 10 with Sun C 5.8.
21066         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
21067         * modules/getcwd (Depends-on): Add dirfd.
21068         * lib/putenv.c (putenv): #undef it.
21069         (rpl_putenv): New decl.
21070         (malloc, free): Include <stdlib.h> rather than prototyping separately.
21071
21072 2007-02-20  Bruno Haible  <bruno@clisp.org>
21073
21074         * modules/stdio-tests: New file.
21075         * tests/test-stdio.c: New file.
21076
21077         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
21078         (Depends-on): Add stdio.
21079         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
21080         (Include): Use <stdio.h> instead of vsnprintf.h.
21081         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
21082         HAVE_DECL_VSNPRINTF.
21083         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
21084
21085         * modules/snprintf (Files): Remove lib/snprintf.h.
21086         (Depends-on): Add stdio.
21087         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
21088         (Include): Use <stdio.h> instead of snprintf.h.
21089         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
21090         HAVE_DECL_SNPRINTF.
21091         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
21092         * lib/getaddrinfo.c: Likewise.
21093
21094         * modules/stdio: New file.
21095         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
21096         * lib/snprintf.h: Remove file.
21097         * lib/vsnprintf.h: Remove file.
21098         * lib/.cppi-disable: Remove snprintf.h.
21099         * m4/stdio_h.m4: New file.
21100         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
21101
21102 2007-02-20  Jim Meyering  <jim@meyering.net>
21103
21104         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
21105         used by e.g., mingw.  From Bruno Haible.
21106
21107 2007-02-19  Bruno Haible  <bruno@clisp.org>
21108
21109         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
21110         warnings.
21111         Reported by Ben Pfaff <blp@cs.stanford.edu>.
21112
21113 2007-02-19  Bruno Haible  <bruno@clisp.org>
21114
21115         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
21116         from mingw users.
21117
21118 2007-02-19  Bruno Haible  <bruno@clisp.org>
21119
21120         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
21121         warnings.
21122         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
21123
21124 2007-02-19  Jim Meyering  <jim@meyering.net>
21125
21126         Don't use FD after a successful "fdopendir (fd)".
21127         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
21128         Reset it by calling dirfd on the just-obtained DIR*.
21129
21130         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
21131         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
21132
21133 2007-02-18  Bruno Haible  <bruno@clisp.org>
21134
21135         * lib/readlink.c: Include <unistd.h>.
21136         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
21137         HAVE_READLINK.
21138         * modules/readlink (Depends-on): Add unistd.
21139         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21140         (Include): Add <unistd.h>.
21141
21142         * lib/getlogin_r.h: Remove file.
21143         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
21144         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
21145         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
21146         HAVE_DECL_GETLOGIN_R.
21147         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
21148         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21149         (Include): Use <unistd.h> instead of getlogin_r.h.
21150
21151         * lib/getcwd.h: Remove file.
21152         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
21153         * lib/xgetcwd.c: Likewise.
21154         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
21155         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
21156         * modules/getcwd (Files): Remove lib/getcwd.h.
21157         (Depends-on): Add unistd.
21158         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21159         (Include): Use <unistd.h> instad of getcwd.h.
21160
21161         * lib/ftruncate.c: Include <unistd.h> first.
21162         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
21163         Set HAVE_FTRUNCATE.
21164         * modules/ftruncate (Depends-on): Add unistd.
21165         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21166
21167         * lib/fchdir.c: Include <unistd.h> first.
21168         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
21169         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
21170         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
21171         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21172         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
21173
21174         * lib/dup2.c: Include <unistd.h> first.
21175         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
21176         HAVE_DUP2.
21177         * modules/dup2 (Depends-on): Add unistd.
21178         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21179
21180         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
21181         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
21182         REPLACE_CHOWN. Don't define chown as a macro here.
21183         * modules/chown (Depends-on): Add unistd.
21184         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21185
21186         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
21187         Add definition for GL_LINK_WARNING.
21188         (chown, dup2): New declarations.
21189         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
21190         link warning.
21191         (ftruncate): New declaration.
21192         (getcwd): New declaration, taken from old getcwd.h.
21193         (getlogin_r): New declaration, taken from old getlogin_r.h.
21194         (readlink): New declaration.
21195         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
21196         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
21197         (gl_PREREQ_UNISTD): Remove macro.
21198         (gl_UNISTD_MODULE_INDICATOR): New macro.
21199         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
21200         many new variables. Don't set UNISTD_H.
21201         * modules/unistd (Description): Change.
21202         (Depends-on): Add link-warning.
21203         (configure.ac): Update.
21204         (Makefile.am): Create unistd.h always. Substitute many new variables
21205         into it.
21206
21207 2007-02-18  Bruno Haible  <bruno@clisp.org>
21208
21209         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
21210         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
21211         HAVE_GETSUBOPT.
21212         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
21213         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
21214         * lib/getsubopt.h: Remove file.
21215         * modules/getsubopt (Files): Remove lib/getsubopt.h.
21216         (Depends-on): Add stdlib.
21217         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21218         (Includes): Use <stdlib.h> instead of getsubopt.h.
21219         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
21220         Set HAVE_GETSUBOPT.
21221         * lib/getsubopt.c: Don't include getsubopt.h.
21222
21223 2007-02-18  Bruno Haible  <bruno@clisp.org>
21224
21225         * modules/fchdir (Depends-on): Add dup2.
21226
21227 2007-02-18  Bruno Haible  <bruno@clisp.org>
21228
21229         * lib/stdlib_.h: Handle glibc's special invocation convention
21230         specially.
21231
21232 2007-02-18  Bruno Haible  <bruno@clisp.org>
21233
21234         * modules/stdlib-tests: New file.
21235         * tests/test-stdlib.c: New file.
21236
21237         * modules/mkstemp (Files): Remove lib/mkstemp.h.
21238         (Depends-on): Add stdlib.
21239         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21240         (Includes): Use <stdlib.h> instead of mkstemp.h.
21241         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
21242         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
21243         * lib/mkstemp.c: Don't include mkstemp.h.
21244         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
21245         * lib/stdlib--.h: Don't include mkstemp.h.
21246
21247         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
21248         (Depends-on): Add stdlib.
21249         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21250         (Includes): Use <stdlib.h> instead of mkdtemp.h.
21251         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
21252         HAVE_MKDTEMP.
21253         * lib/mkdtemp.c: Don't include mkdtemp.h.
21254         * lib/clean-temp.c: Don't include mkdtemp.h.
21255
21256         * modules/exit (Files): Remove lib/exit.h.
21257         (Depends-on): Add stdlib.
21258         (Makefile.am): Remove lib_SOURCES.
21259         (Include): Use <stdlib.h> instead of exit.h.
21260         * lib/argmatch.c: Don't include exit.h.
21261         * lib/execute.c: Likewise.
21262         * lib/pagealign_alloc.c: Likewise.
21263         * lib/pipe.c: Likewise.
21264         * lib/wait-process.c: Likewise.
21265         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
21266         * lib/exitfail.c: Likewise.
21267         * lib/savewd.c: Likewise.
21268         * lib/xsetenv.c: Likewise.
21269
21270         * modules/stdlib: New file.
21271         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
21272         and extra comments about mkstemp().
21273         * lib/exit.h: Remove file.
21274         * lib/mkdtemp.h: Remove file.
21275         * lib/mkstemp.h: Remove file.
21276         * m4/stdlib_h.m4: New file.
21277         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
21278
21279 2007-02-18  Bruno Haible  <bruno@clisp.org>
21280
21281         * modules/math-tests: New file.
21282         * tests/test-math.c: New file.
21283
21284         * modules/math: New file.
21285         * modules/mathl (Files): Remove lib/mathl.h.
21286         (Depends-on): Add math.
21287         (Makefile.am): Don't mention mathl.h.
21288         (Include): Use <math.h> instead of mathl.h.
21289         * lib/math_.h: New file.
21290         * lib/mathl.h: Remove file.
21291         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
21292         mathl.h.
21293         * lib/asinl.c: Likewise.
21294         * lib/atanl.c: Likewise.
21295         * lib/ceill.c: Likewise.
21296         * lib/cosl.c: Likewise.
21297         * lib/expl.c: Likewise.
21298         * lib/floorl.c: Likewise.
21299         * lib/frexpl.c: Likewise.
21300         * lib/ldexpl.c: Likewise.
21301         * lib/logl.c: Likewise.
21302         * lib/sincosl.c: Likewise.
21303         * lib/sinl.c: Likewise.
21304         * lib/sqrtl.c: Likewise.
21305         * lib/tanl.c: Likewise.
21306         * lib/trigl.c: Likewise.
21307         * m4/math_h.m4: New file.
21308         * MODULES.html.sh (Mathematics): Add math.
21309
21310 2007-02-17  Bruno Haible  <bruno@clisp.org>
21311
21312         * modules/wctype-tests: New file.
21313         * tests/test-wctype.c: New file.
21314
21315         * modules/wchar-tests: New file.
21316         * tests/test-wchar.c: New file.
21317
21318         * modules/unistd-tests: New file.
21319         * tests/test-unistd.c: New file.
21320
21321         * modules/time-tests: New file.
21322         * tests/test-time.c: New file.
21323
21324         * modules/sysexits-tests: New file.
21325         * tests/test-sysexits.c: New file.
21326
21327         * modules/sys_time-tests: New file.
21328         * tests/test-sys_time.c: New file.
21329
21330         * modules/sys_stat-tests: New file.
21331         * tests/test-sys_stat.c: New file.
21332
21333         * modules/sys_socket-tests: New file.
21334         * tests/test-sys_socket.c: New file.
21335
21336         * modules/sys_select-tests: New file.
21337         * tests/test-sys_select.c: New file.
21338
21339         * modules/string-tests: New file.
21340         * tests/test-string.c: New file.
21341
21342         * modules/stdbool-tests: New file.
21343         * tests/test-stdbool.c: New file.
21344
21345         * modules/netinet_in-tests: New file.
21346         * tests/test-netinet_in.c: New file.
21347
21348         * modules/inttypes-tests: New file.
21349         * tests/test-inttypes.c: New file.
21350
21351         * modules/fcntl-tests: New file.
21352         * tests/test-fcntl.c: New file.
21353
21354         * modules/byteswap-tests: New file.
21355         * tests/test-byteswap.c: New file.
21356
21357         * modules/arpa_inet-tests: New file.
21358         * tests/test-arpa_inet.c: New file.
21359
21360 2007-02-17  Bruno Haible  <bruno@clisp.org>
21361
21362         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
21363         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
21364         if the corresponding module is not enabled. Emit link warnings if
21365         the function is used nevertheless.
21366         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
21367         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
21368         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
21369         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
21370         * modules/inttypes (Depends-on): Add link-warning.
21371         (Makefile.am): Copy the contents of build-aux/link-warning.h into
21372         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
21373         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
21374         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
21375         * modules/imaxdiv (configure.ac): Likewise.
21376         * modules/strtoimax (configure.ac): Likewise.
21377         * modules/strtoumax (configure.ac): Likewise.
21378
21379 2007-02-17  Bruno Haible  <bruno@clisp.org>
21380
21381         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
21382         gl_STRING_MODULE_INDICATOR_DEFAULTS.
21383         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
21384         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
21385
21386 2007-02-17  Bruno Haible  <bruno@clisp.org>
21387
21388         * modules/link-warning: New file.
21389         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
21390         * lib/string_.h (GL_LINK_WARNING): Remove definition.
21391         * modules/string (Depends-on): Add link-warning.
21392         (Makefile.am): Copy the contents of build-aux/link-warning.h into
21393         string.h.
21394         * MODULES.html.sh (Support for building libraries and executables): Add
21395         link-warning.
21396
21397 2007-02-17  Bruno Haible  <bruno@clisp.org>
21398
21399         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
21400         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
21401         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
21402         long lines.
21403
21404 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
21405             Bruno Haible  <bruno@clisp.org>
21406
21407         * modules/tmpfile: New file.
21408         * lib/tmpfile.c: New file.
21409         * m4/tmpfile.m4: New file.
21410         * MODULES.html.sh (func_all_modules): New section "Input/output".
21411
21412 2007-02-15  Bruno Haible  <bruno@clisp.org>
21413
21414         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
21415         (supports_delete_on_close): New function.
21416         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
21417
21418 2007-02-14  Bruno Haible  <bruno@clisp.org>
21419
21420         * modules/mbspcasecmp-tests: New file.
21421         * tests/test-mbspcasecmp.sh: New file.
21422         * tests/test-mbspcasecmp.c: New file.
21423
21424         New module mbspcasecmp.
21425         * modules/mbspcasecmp: New file.
21426         * lib/mbspcasecmp.c: New file.
21427         * lib/string_.h (strncasecmp): Change warning message.
21428         (mbspcasecmp): New declaration.
21429         * m4/mbspcasecmp.m4: New file.
21430         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21431         GNULIB_MBSPCASECMP.
21432         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
21433         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
21434
21435 2007-02-14  Bruno Haible  <bruno@clisp.org>
21436
21437         * modules/mbsncasecmp-tests: New file.
21438         * tests/test-mbsncasecmp.sh: New file.
21439         * tests/test-mbsncasecmp.c: New file.
21440
21441         New module mbsncasecmp.
21442         * modules/mbsncasecmp: New file.
21443         * lib/mbsncasecmp.c: New file.
21444         * lib/string_.h (mbsncasecmp): New declaration.
21445         * m4/mbsncasecmp.m4: New file.
21446         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21447         GNULIB_MBSNCASECMP.
21448         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
21449         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
21450
21451 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
21452
21453         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
21454         Verify that it doesn't overlap with our flags.
21455         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
21456         do not have the desired effect in multibyte locales; instead, use
21457         mbscasecmp.
21458         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
21459         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
21460         we don't require GNU fnmatch ourselves (if our users require it, they
21461         should do so explicitly).
21462
21463         Fix regex code so it doesn't rely on strcasecmp.
21464         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
21465         Otherwise, include gnulib's langinfo.h.
21466         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
21467         undesirable behavior in non-C locales.  Instead, rely on localecharset.
21468         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
21469         * modules/regex (FILES): Remove m4/codeset.m4.
21470         (Depends-on): Add localcharset.  Remove strcase.
21471
21472 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21473
21474         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
21475         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
21476
21477 2007-02-13  Bruno Haible  <bruno@clisp.org>
21478
21479         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
21480         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21481
21482 2007-02-12  Bruno Haible  <bruno@clisp.org>
21483
21484         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
21485         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
21486         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
21487         time warning rather than a link error.
21488
21489 2007-02-12  Bruno Haible  <bruno@clisp.org>
21490
21491         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
21492         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
21493         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21494
21495 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
21496
21497         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
21498         args, not 2.
21499
21500 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
21501
21502         New module 'time', so that apps can include <time.h> as per
21503         POSIX and GNU instead of separate include files like time_r.h
21504         and timegm.h.  This implementation tries out a simpler approach
21505         for replacing decls in standard include files (as compared to
21506         the string module), somewhat as an experiment.
21507
21508         * config/srclist.txt: Comment out mktime.c for now.
21509         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
21510         since it doesn't apply any more.  Use generic wording instead.
21511         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
21512         'time'.
21513         * lib/time_.h, m4/time_h.m4, modules/time: New files.
21514         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
21515         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
21516         Don't include <sys/types.h>; no longer needed since we assume C89.
21517         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
21518         * lib/strftime.c: Likewise.
21519         * lib/time_r.c: Likewise.
21520         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
21521         * lib/nanosleep.c: Include <time.h> first, to check interface.
21522         * lib/strptime.c: Likewise.
21523         * lib/time_r.c: Likewise.
21524         * lib/timegm.c: Likewise.
21525         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
21526         needed.
21527         * lib/timegm.c: Don't include timegm.h; no longer needed.
21528         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
21529         time.h now handles any problems in that area.
21530         (struct timespec, nanosleep): Remove; time.h now arranges for these.
21531         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
21532         that time.h defines struct timespec.
21533         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
21534         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
21535         handles that.
21536         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
21537         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
21538         needed.  Set REPLACE_LOCALTIME.
21539         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
21540         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
21541         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
21542         nanosleep; time_h.m4 now does that.  Don't require
21543         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
21544         module handles this now.
21545         * modules/getdate (Depends-on): Remove timespec.  Add time.
21546         * modules/nanosleep (Depends-on): Likewise.
21547         * modules/stat-time (Depends-on): Likewise.
21548         * modules/nanosleep (Include): Include time.h, not timespec.h.
21549         * modules/strptime (Files): Remove lib/strptime.h.
21550         (Depends-on): Add extensions, time.
21551         (Include): Include time.h, not strptime.h.
21552         * modules/time_r (Files): Remove lib/time_r.h.
21553         (Depends-on): Add time.
21554         (Include): Include time.h, not time_r.h.
21555         * modules/timegm: Likewise.
21556         * modules/timespec (Description): Now does timespec-related decls
21557         of our own, instead of struct timespec itself.
21558         (Depends-on): Add time; remove extensions.
21559         (Maintainer): Add self.
21560         * modules/utimecmp (Depends-on): Add time; remove timespec.
21561         * modules/utimens (Depends-on): Likewise.
21562         * modules/xnanosleep (Depends-on): Likewise.
21563
21564 2007-02-11  Bruno Haible  <bruno@clisp.org>
21565
21566         * lib/c-strstr.c: Include allocsa.h.
21567         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21568         * lib/c-strcasestr.c: Include allocsa.h.
21569         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21570         * lib/strcasestr.c: Include allocsa.h.
21571         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
21572         * lib/mbsstr.c: Include allocsa.h.
21573         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
21574         allocsa/freesa instead of malloc/free.
21575         * lib/mbscasestr.c: Include allocsa.h.
21576         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
21577         allocsa/freesa instead of malloc/free.
21578         * modules/c-strstr (Depends-on): Add allocsa.
21579         * modules/c-strcasestr (Depends-on): Likewise.
21580         * modules/strcasestr (Depends-on): Likewise.
21581         * modules/mbsstr (Depends-on): Likewise.
21582         * modules/mbscasestr (Depends-on): Likewise.
21583
21584 2007-02-11  Bruno Haible  <bruno@clisp.org>
21585
21586         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
21587
21588         * modules/mbsspn-tests: New file.
21589         * tests/test-mbsspn.sh: New file.
21590         * tests/test-mbsspn.c: New file.
21591
21592 2007-02-11  Bruno Haible  <bruno@clisp.org>
21593
21594         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
21595
21596         * modules/mbspbrk-tests: New file.
21597         * tests/test-mbspbrk.sh: New file.
21598         * tests/test-mbspbrk.c: New file.
21599
21600 2007-02-11  Bruno Haible  <bruno@clisp.org>
21601
21602         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
21603         unneeded cast.
21604
21605         * modules/mbscspn-tests: New file.
21606         * tests/test-mbscspn.sh: New file.
21607         * tests/test-mbscspn.c: New file.
21608
21609 2007-02-11  Bruno Haible  <bruno@clisp.org>
21610
21611         * modules/mbscasecmp-tests: New file.
21612         * tests/test-mbscasecmp.sh: New file.
21613         * tests/test-mbscasecmp.c: New file.
21614
21615 2007-02-11  Bruno Haible  <bruno@clisp.org>
21616
21617         Ensure O(n) worst-case complexity of mbscasestr.
21618         * lib/mbscasestr.c: Include stdbool.h.
21619         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
21620         functions.
21621         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
21622         the bookkeeping indicates that it's worth it.
21623         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
21624
21625         * modules/mbscasestr-tests: New file.
21626         * tests/test-mbscasestr1.c: New file.
21627         * tests/test-mbscasestr2.sh: New file.
21628         * tests/test-mbscasestr2.c: New file.
21629         * tests/test-mbscasestr3.sh: New file.
21630         * tests/test-mbscasestr3.c: New file.
21631         * tests/test-mbscasestr4.sh: New file.
21632         * tests/test-mbscasestr4.c: New file.
21633         * m4/locale-tr.m4: New file.
21634
21635 2007-02-11  Bruno Haible  <bruno@clisp.org>
21636
21637         Ensure O(n) worst-case complexity of mbsstr.
21638         * lib/mbsstr.c: Include stdbool.h.
21639         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
21640         functions.
21641         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
21642         bookkeeping indicates that it's worth it.
21643         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
21644
21645         * modules/mbsstr-tests: New file.
21646         * tests/test-mbsstr1.c: New file.
21647         * tests/test-mbsstr2.sh: New file.
21648         * tests/test-mbsstr2.c: New file.
21649         * tests/test-mbsstr3.sh: New file.
21650         * tests/test-mbsstr3.c: New file.
21651         * m4/locale-fr.m4: New file.
21652
21653 2007-02-11  Bruno Haible  <bruno@clisp.org>
21654
21655         * lib/mbsrchr.c (mbsrchr): Fix bug.
21656
21657         * modules/mbsrchr-tests: New file.
21658         * tests/test-mbsrchr.sh: New file.
21659         * tests/test-mbsrchr.c: New file.
21660
21661 2007-02-11  Bruno Haible  <bruno@clisp.org>
21662
21663         * lib/mbschr.c (mbschr): Fix bug.
21664
21665         * modules/mbschr-tests: New file.
21666         * tests/test-mbschr.sh: New file.
21667         * tests/test-mbschr.c: New file.
21668         * m4/locale-zh.m4: New file.
21669
21670 2007-02-11  Bruno Haible  <bruno@clisp.org>
21671
21672         Support for copying multibyte string iterators.
21673         * lib/mbiter.h: Include <string.h>.
21674         (mbiter_multi_copy): New function.
21675         (mbi_copy): New macro.
21676         * lib/mbuiter.h: Include <string.h>.
21677         (mbuiter_multi_copy): New function.
21678         (mbui_copy): New macro.
21679
21680 2007-02-11  Bruno Haible  <bruno@clisp.org>
21681
21682         New module mbslen.
21683         * modules/mbslen: New file.
21684         * lib/mbslen.c: New file.
21685         * lib/string_.h (mbslen): New declaration.
21686         * m4/mbslen.m4: New file.
21687         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21688         GNULIB_MBSLEN.
21689         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
21690         * MODULES.html.sh (Internationalization functions): Add mbslen.
21691
21692 2007-02-11  Bruno Haible  <bruno@clisp.org>
21693
21694         Ensure O(n) worst-case complexity of strcasestr substitute.
21695         * lib/strcasestr.c: Include stdbool.h.
21696         (knuth_morris_pratt): New function.
21697         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
21698         bookkeeping indicates that it's worth it.
21699         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
21700
21701         * modules/strcasestr-tests: New file.
21702         * tests/test-strcasestr.c: New file.
21703
21704 2007-02-11  Bruno Haible  <bruno@clisp.org>
21705
21706         Ensure O(n) worst-case complexity of c_strcasestr.
21707         * lib/c-strcasestr.c: Include stdbool.h, string.h.
21708         (knuth_morris_pratt): New function.
21709         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
21710         the bookkeeping indicates that it's worth it.
21711         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
21712
21713         * modules/c-strcasestr-tests: New file.
21714         * tests/test-c-strcasestr.c: New file.
21715
21716 2007-02-11  Bruno Haible  <bruno@clisp.org>
21717
21718         Ensure O(n) worst-case complexity of c_strstr.
21719         * lib/c-strstr.c: Include stdbool.h, string.h.
21720         (knuth_morris_pratt): New function.
21721         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
21722         bookkeeping indicates that it's worth it.
21723         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
21724
21725         * lib/c-strstr.c: Complete rewrite for maintainability.
21726
21727         * modules/c-strstr-tests: New file.
21728         * tests/test-c-strstr.c: New file.
21729
21730 2007-02-11  Bruno Haible  <bruno@clisp.org>
21731
21732         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
21733         5.2.1 and earlier, whereby \055 was treated just like the range
21734         delimiter '-'.
21735         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
21736
21737 2007-02-08  Bruno Haible  <bruno@clisp.org>
21738
21739         * modules/regex (Depends-on): Add stdbool.
21740         Reported by Dalibor Topic <robilad@kaffe.org>.
21741
21742 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
21743
21744         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
21745         Prefer returning from main to exiting from it.
21746         Remove unnecessary parens after sizeof.
21747
21748 2007-02-05  Bruno Haible  <bruno@clisp.org>
21749
21750         New module mbssep.
21751         * modules/mbssep: New file.
21752         * lib/mbssep.c: New file.
21753         * lib/string_.h (strsep): Add a conditional link warning.
21754         (mbssep): New declaration.
21755         * m4/mbssep.m4: New file.
21756         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21757         GNULIB_MBSSEP.
21758         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
21759         * MODULES.html.sh (Internationalization functions): Add mbssep.
21760
21761 2007-02-05  Bruno Haible  <bruno@clisp.org>
21762
21763         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
21764         Optimize search in case of 1 delimiter.
21765
21766 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
21767
21768         * lib/acl.h: Include sys/types.h before sys/acl.h.
21769
21770 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
21771
21772         Merge upstream fix for glibc bugzilla #3957:
21773
21774         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
21775
21776         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
21777         bit for RE_HAT_LISTS_NOT_NEWLINE.
21778         (build_charclass_op): Remove bogus comment.
21779
21780 2007-02-05  Simon Josefsson  <simon@josefsson.org>
21781
21782         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
21783
21784 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
21785
21786         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
21787         * lib/memmem.c [!defined _LIBC]: Include config.h.
21788
21789 2007-02-04  Bruno Haible  <bruno@clisp.org>
21790
21791         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
21792         warning message.
21793
21794 2007-02-04  Bruno Haible  <bruno@clisp.org>
21795
21796         New module mbstok_r.
21797         * modules/mbstok_r: New file.
21798         * lib/mbstok_r.c: New file.
21799         * lib/string_.h (strtok_r): Change argument names to match the
21800         comments. Add a conditional link warning.
21801         (mbstok_r): New declaration.
21802         * m4/mbstok_r.m4: New file.
21803         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21804         GNULIB_MBSTOK_R.
21805         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
21806         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
21807
21808 2007-02-04  Bruno Haible  <bruno@clisp.org>
21809
21810         New module mbsspn.
21811         * modules/mbsspn: New file.
21812         * lib/mbsspn.c: New file.
21813         * lib/string_.h (strspn): Add a conditional link warning.
21814         (mbsspn): New declaration.
21815         * m4/mbsspn.m4: New file.
21816         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21817         GNULIB_MBSSPN.
21818         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
21819         * MODULES.html.sh (Internationalization functions): Add mbsspn.
21820
21821 2007-02-04  Bruno Haible  <bruno@clisp.org>
21822
21823         New module mbspbrk.
21824         * modules/mbspbrk: New file.
21825         * lib/mbspbrk.c: New file.
21826         * lib/string_.h (strpbrk): Add a conditional link warning.
21827         (mbspbrk): New declaration.
21828         * m4/mbspbrk.m4: New file.
21829         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21830         GNULIB_MBSPBRK.
21831         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
21832         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
21833
21834 2007-02-04  Bruno Haible  <bruno@clisp.org>
21835
21836         New module mbscspn.
21837         * modules/mbscspn: New file.
21838         * lib/mbscspn.c: New file.
21839         * lib/string_.h (strcspn): Add a conditional link warning.
21840         (mbscspn): New declaration.
21841         * m4/mbscspn.m4: New file.
21842         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21843         GNULIB_MBSCSPN.
21844         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
21845         * MODULES.html.sh (Internationalization functions): Add mbscspn.
21846
21847 2007-02-04  Bruno Haible  <bruno@clisp.org>
21848
21849         New module mbscasestr, reduced goal of strcasestr.
21850         * modules/mbscasestr: New file.
21851         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
21852         (mbscasestr): Renamed from strcasestr.
21853         * lib/strcasestr.c: Don't include mbuiter.h.
21854         (strcasestr): Remove support for multibyte locales.
21855         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
21856         Change the conditional link warning.
21857         (mbscasestr): New declaration.
21858         * m4/mbscasestr.m4: New file.
21859         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
21860         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
21861         REPLACE_STRCASESTR.
21862         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
21863         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
21864         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
21865         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
21866         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
21867         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
21868         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
21869         (Depends-on): Remove mbuiter.
21870         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
21871
21872 2007-02-04  Bruno Haible  <bruno@clisp.org>
21873
21874         Simplify handling of strncasecmp.
21875         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
21876         the conditional link warning.
21877         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
21878         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
21879         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
21880         * modules/strcase (configure.ac): Don't invoke
21881         gl_STRING_MODULE_INDICATOR.
21882         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
21883
21884 2007-02-04  Bruno Haible  <bruno@clisp.org>
21885
21886         New module mbscasecmp, reduced goal of strcasecmp.
21887         * modules/mbscasecmp: New file.
21888         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
21889         (mbscasecmp): Renamed from strcasecmp.
21890         * lib/strcasecmp.c: Don't include mbuiter.h.
21891         (strcasecmp): Remove support for multibyte locales.
21892         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
21893         Change the conditional link warning.
21894         (mbscasecmp): New declaration.
21895         * m4/mbscasecmp.m4: New file.
21896         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
21897         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
21898         REPLACE_STRCASECMP.
21899         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
21900         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21901         GNULIB_MBSCASECMP.
21902         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
21903         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
21904         * modules/strcase (Files): Remove m4/mbrtowc.m4.
21905         (Depends-on): Remove mbuiter.
21906         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
21907
21908 2007-02-04  Bruno Haible  <bruno@clisp.org>
21909
21910         New module mbsstr. Remove module strstr.
21911         * modules/mbsstr: New file.
21912         * modules/strstr: Remove file.
21913         * lib/mbsstr.c: Renamed from lib/strstr.c.
21914         (mbsstr): Renamed from strstr.
21915         * lib/string_.h (strstr): Remove declaration. Change the conditional
21916         link warning.
21917         (mbsstr): New declaration.
21918         * m4/mbsstr.m4: New file.
21919         * m4/strstr.m4: Remove file.
21920         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
21921         REPLACE_STRSTR.
21922         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
21923         Don't initialize GNULIB_STRSTR.
21924         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
21925         substitute GNULIB_STRSTR and REPLACE_STRSTR.
21926         * MODULES.html.sh (Internationalization functions): Add mbsstr.
21927         (Support for systems lacking ANSI C 89): Remove strstr.
21928
21929 2007-02-04  Bruno Haible  <bruno@clisp.org>
21930
21931         New module mbsrchr.
21932         * modules/mbsrchr: New file.
21933         * lib/mbsrchr.c: New file.
21934         * lib/string_.h (strrchr): Add a conditional link warning.
21935         (mbsrchr): New declaration.
21936         * m4/mbsrchr.m4: New file.
21937         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21938         GNULIB_MBSRCHR.
21939         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
21940         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
21941
21942 2007-02-04  Bruno Haible  <bruno@clisp.org>
21943
21944         New module mbschr.
21945         * modules/mbschr: New file.
21946         * lib/mbschr.c: New file.
21947         * lib/string_.h (strchr): Add a conditional link warning.
21948         (mbschr): New declaration.
21949         * m4/mbschr.m4: New file.
21950         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
21951         GNULIB_MBSCHR.
21952         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
21953         * MODULES.html.sh (Internationalization functions): Add mbschr.
21954
21955 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
21956
21957         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
21958
21959         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
21960
21961 2007-02-04  Bruno Haible  <bruno@clisp.org>
21962
21963         New module description section 'configure.ac-early'.
21964         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
21965         (func_get_autoconf_early_snippet): New function.
21966         (func_import, func_create_testdir): Use it. Remove special cases for
21967         modules 'extensions' and 'lock'.
21968         * modules/extensions (configure.ac-early): Require
21969         gl_USE_SYSTEM_EXTENSIONS.
21970         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
21971
21972 2007-02-04  Bruno Haible  <bruno@clisp.org>
21973
21974         Make use of gcj-4.3's -fsource and -ftarget option.
21975         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
21976         and if so try the options -fsource and -ftarget.
21977         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
21978         source_version, ftarget_option, target_version arguments.
21979         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
21980         (is_envjavac_oldgcj_14_14_usable): Renamed from
21981         is_envjavac_gcj_14_14_usable.
21982         (is_envjavac_oldgcj_14_13_usable): Renamed from
21983         is_envjavac_gcj_14_13_usable.
21984         (is_gcj_present): Update.
21985         (is_gcj_43, is_gcj43_usable): New functions.
21986         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
21987         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
21988         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
21989         try the options -fsource and -ftarget.
21990
21991 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21992
21993         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
21994         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
21995         larger value.
21996
21997 2007-02-03  Jim Meyering  <jim@meyering.net>
21998
21999         Give tools a better chance to allocate space for very large buffers.
22000         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
22001
22002         Make pwd and readlink work also when run with an unreadable parent dir
22003         on systems with openat support.
22004         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
22005         provided getcwd function, even when we have openat support.
22006         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
22007
22008 2007-02-02  Bruno Haible  <bruno@clisp.org>
22009
22010         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
22011         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
22012         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
22013         portability problems if one of these functions is only used on specific
22014         platforms.
22015         Reported by Paul Eggert.
22016
22017 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
22018
22019         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
22020         is causing more trouble than it's curing.
22021         * lib/regex_internal.h (__mempcpy): Remove.
22022         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
22023         (and make the code a tad smaller to boot).
22024         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
22025
22026 2007-02-02  Jim Meyering  <jim@meyering.net>
22027
22028         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
22029         section, not in the Makefile.am: one.
22030
22031 2007-02-02  Eric Blake  <ebb9@byu.net>
22032
22033         * lib/strchrnul.c: Always include config.h first.
22034
22035         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
22036         gnulib strstr is not necessary here.
22037
22038 2007-02-02  Simon Josefsson  <simon@josefsson.org>
22039
22040         * m4/socklen.m4: Fix typo.
22041
22042 2007-02-02  Eric Blake  <ebb9@byu.net>
22043
22044         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
22045         * modules/netinet_in (Makefile.am): Likewise.
22046
22047 2007-02-01  Bruno Haible  <bruno@clisp.org>
22048
22049         * lib/string_.h (GL_LINK_WARNING): New macro.
22050         (strcasecmp, strstr, strcasestr): If provided by the system,
22051         conditionally define as a macro that leads to a warning instead of to
22052         an error.
22053         (strncasecmp): Conditionally define as a macro that leads to a warning.
22054
22055 2007-02-01  Karl Berry  <karl@gnu.org>
22056
22057         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
22058
22059 2007-02-01  Bruno Haible  <bruno@clisp.org>
22060
22061         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
22062         renamings.
22063
22064 2007-02-01  Eric Blake  <ebb9@byu.net>
22065
22066         * modules/regex (Depends-on): Revert dependence on mempcpy.
22067         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
22068         module's definition of mempcpy.
22069         Reported by Paul Eggert.
22070
22071 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
22072
22073         * lib/string_.h: If the gnulib module XYZ is not present, undefine
22074         the symbol XYZ before redefining it.  This fixes a problem with
22075         programs that don't use XYZ, when compiled on systems that define
22076         XYZ to something else.
22077
22078 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
22079
22080         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
22081         occurs when "mkdir -m foo" creates a setgid directory that is (1)
22082         writeable to group or other and (2) is intended to have a special
22083         mode bit that is set or cleared.  In such a case, the directory
22084         should be neither group- nor other-writeable until the special
22085         mode bits are right.
22086
22087 2007-01-31  Eric Blake  <ebb9@byu.net>
22088
22089         * modules/mountlist (Depends-on): Add strstr.
22090
22091         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
22092         bug.
22093         * modules/string (Makefile.am): Remove redundant replacement.
22094         * modules/regex (Depends-on): Add mempcpy.
22095
22096 2007-01-31  Bruno Haible  <bruno@clisp.org>
22097
22098         New module description field 'Link'.
22099         * gnulib-tool (func_usage): Document --extract-link-directive.
22100         (sed_extract_prog): Recognize 'Link' directive.
22101         (func_get_link_directive): New function.
22102         (func_import): Show summary of link directives.
22103         Handle --extract-link-directive option.
22104         * modules/acl (Link): New section.
22105         * modules/clock-time (Link): New section.
22106         * modules/euidaccess (Link): New section.
22107         * modules/gettext (Link): New section.
22108         * modules/iconv (Link): New section.
22109         * modules/lock (Link): New section.
22110         * modules/nanosleep (Link): New section.
22111         * modules/readline (Link): New section.
22112
22113 2007-01-27  Bruno Haible  <bruno@clisp.org>
22114
22115         Enforce the use of gnulib modules for unportable <string.h> functions.
22116         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
22117         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
22118         (gl_HEADER_STRING_H_BODY): Require it.
22119         * lib/string_.h: If the gnulib module XYZ is not present, redefine
22120         the symbol XYZ to one that gives a link error.
22121         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
22122         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
22123         * modules/mempcpy (configure.ac): Likewise.
22124         * modules/memrchr (configure.ac): Likewise.
22125         * modules/stpcpy (configure.ac): Likewise.
22126         * modules/stpncpy (configure.ac): Likewise.
22127         * modules/strcase (configure.ac): Likewise.
22128         * modules/strcasestr (configure.ac): Likewise.
22129         * modules/strchrnul (configure.ac): Likewise.
22130         * modules/strdup (configure.ac): Likewise.
22131         * modules/strndup (configure.ac): Likewise.
22132         * modules/strnlen (configure.ac): Likewise.
22133         * modules/strpbrk (configure.ac): Likewise.
22134         * modules/strsep (configure.ac): Likewise.
22135         * modules/strstr (configure.ac): Likewise.
22136         * modules/strtok_r (configure.ac): Likewise.
22137
22138 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
22139
22140         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
22141
22142 2007-01-30  Jim Meyering  <jim@meyering.net>
22143
22144         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
22145
22146 2007-01-29  Bruno Haible  <bruno@clisp.org>
22147
22148         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
22149         * lib/execute.c: Likewise.
22150         * lib/pipe.c: Likewise.
22151         * lib/printf-args.h: Likewise.
22152         * lib/printf-args.c: Likewise.
22153         * lib/printf-parse.c: Likewise.
22154         * lib/vasnprintf.c: Likewise.
22155
22156 2007-01-29  Eric Blake  <ebb9@byu.net>
22157
22158         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
22159         declaration.
22160
22161 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
22162
22163         * lib/strptime.h (strptime): Use 'restrict' for args where
22164         POSIX requires this.
22165         * lib/strptime.c (strptime): Likewise.
22166         Change license notice from LGPL to GPL, since gnulib-tool will
22167         change this as needed.
22168         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
22169         defined.
22170         Include "strptime.h" first, to check interface.
22171         Do not #undef _LIBC and _NL_CURRENT.
22172         Do not include <stdlib.h>; no longer needed.
22173         Include "time_r.h" and declare ptime_locale_status
22174         only if _LIBC is not defined.
22175         (__P): Remove unused macro.
22176         (match_string): Bring back glibc version, but use it only if _LIBC
22177         is defined.
22178         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
22179         Remove unnecessary assertion and abort() call.
22180         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
22181         * m4/strptime.m4: Fix serial number comment.
22182         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
22183         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
22184         (Depends-on): Add time_r.
22185
22186 2007-01-29  Bruno Haible  <bruno@clisp.org>
22187
22188         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22189         strptime.
22190         * modules/strptime (Depends-on): Add stdbool.
22191         * lib/strptime.h: Include <time.h> always. Add comments.
22192
22193 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22194
22195         * modules/strptime: New file.
22196         * lib/strptime.h: New file.
22197         * lib/strptime.c: New file.
22198         * m4/strptime.m4: New file.
22199
22200 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22201
22202         * MODULES.html.sh: New module mpsort.
22203         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
22204
22205         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
22206         a circularity problem with HP-UX ia64 reported by Bob Proulx in
22207         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
22208         All uses changed.
22209         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
22210         All uses changed.
22211         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
22212         to _Restrict_.
22213         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
22214         the parameter matches the prototype.
22215
22216 2007-01-28  Jim Meyering  <jim@meyering.net>
22217
22218         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
22219         sys/time.h here, reverting that part of the previous patch:
22220         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
22221
22222 2007-01-28  Bruno Haible  <bruno@clisp.org>
22223
22224         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
22225         value of $(SYS_TIME_H).
22226         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
22227         remove it conditionally, too. [added by Jim Meyering]
22228         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
22229         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
22230         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
22231         GETTIMEOFDAY_REPLACEMENT to 1.
22232
22233 2007-01-28  Bruno Haible  <bruno@clisp.org>
22234
22235         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
22236         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
22237         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
22238         Set UNISTD_H instead of UNISTD_H2.
22239         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
22240
22241 2007-01-28  Bruno Haible  <bruno@clisp.org>
22242
22243         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
22244         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
22245
22246 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22247
22248         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
22249         (func_create_testdir): Ensure C locale for `grep' and `tr'
22250         character ranges.
22251         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
22252         ACLOCAL_AMFLAGS parsing state machine.
22253
22254 2007-01-27  Bruno Haible  <bruno@clisp.org>
22255
22256         * modules/unistr/base: Update.
22257
22258 2007-01-27  Bruno Haible  <bruno@clisp.org>
22259
22260         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
22261         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
22262         * modules/unistr/u32-mbtouc-unsafe: Renamed from
22263         modules/unistr/u32-mbtouc.
22264         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
22265         * lib/unistr.h: Update.
22266         * lib/linebreak.c: Update.
22267         * modules/unistr/u32-mbtouc: Renamed from
22268         modules/unistr/u32-mbtouc-safe.
22269         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
22270         * lib/unistr.h: Update.
22271         * lib/unistr/u32-to-u8.c: Update.
22272         * lib/unistr/u32-to-u16.c: Update.
22273
22274 2007-01-27  Bruno Haible  <bruno@clisp.org>
22275
22276         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
22277         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
22278         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
22279         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
22280         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
22281         * modules/unistr/u16-mbtouc-unsafe: Renamed from
22282         modules/unistr/u16-mbtouc.
22283         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
22284         * lib/unistr.h: Update.
22285         * lib/linebreak.c: Update.
22286         * modules/linebreak: Update.
22287         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
22288         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
22289         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
22290         * modules/unistr/u16-mbtouc: Renamed from
22291         modules/unistr/u16-mbtouc-safe.
22292         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
22293         * lib/unistr.h: Update.
22294         * lib/unistr/u16-to-u8.c: Update.
22295         * modules/unistr/u16-to-u8: Update.
22296         * lib/unistr/u16-to-u32.c: Update.
22297         * modules/unistr/u16-to-u32: Update.
22298
22299 2007-01-27  Bruno Haible  <bruno@clisp.org>
22300
22301         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
22302         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
22303         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
22304         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
22305         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
22306         * modules/unistr/u8-mbtouc-unsafe: Renamed from
22307         modules/unistr/u8-mbtouc.
22308         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
22309         * lib/unistr.h: Update.
22310         * lib/striconveh.c: Update.
22311         * modules/striconveh: Update.
22312         * lib/linebreak.c: Update.
22313         * modules/linebreak: Update.
22314         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
22315         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
22316         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
22317         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
22318         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
22319         * lib/unistr.h: Update.
22320         * lib/striconveh.c: Update.
22321         * modules/striconveh: Update.
22322         * lib/unistr/u8-to-u16.c: Update.
22323         * modules/unistr/u8-to-u16: Update.
22324         * lib/unistr/u8-to-u32.c: Update.
22325         * modules/unistr/u8-to-u32: Update.
22326
22327 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22328
22329         Sync from Libtool.
22330         * lib/argz.c: Do not include strings.h nor memory.h, include
22331         string.h unconditionally.  Patch by Simon Josefsson.
22332
22333 2007-01-27  Bruno Haible  <bruno@clisp.org>
22334
22335         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
22336         from gl_HEADER_STRING_H_BODY.
22337         (gl_HEADER_STRING_H_BODY): Require it.
22338         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
22339         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
22340         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
22341         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
22342         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
22343         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
22344         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
22345         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
22346         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
22347         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
22348         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
22349         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
22350         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
22351         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
22352         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
22353
22354 2007-01-27  Bruno Haible  <bruno@clisp.org>
22355
22356         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
22357         check_PROGRAMS into noinst_PROGRAMS.
22358         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
22359         check_PROGRAMS in this case.
22360         (func_import): Set for_test to false.
22361         (func_create_testdir): Set for_test to true.
22362
22363 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
22364             Bruno Haible  <bruno@clisp.org>
22365
22366         * modules/strcasestr (Files): Remove lib/strcasestr.h.
22367         (Depends-on): Add string.
22368         (Includes): Use <string.h> instead of strcasestr.h.
22369         * modules/string (Makefile.am): Also substitute the value of
22370         REPLACE_STRCASESTR.
22371         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
22372         assume strcasestr is declared in <string.h> not <strings.h>. Also
22373         set REPLACE_STRCASESTR.
22374         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
22375         REPLACE_STRCASESTR.
22376         * lib/strcasestr.h: Remove file.
22377         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
22378         * lib/string_.h (strcasestr): New declaration.
22379
22380 2007-01-27  Bruno Haible  <bruno@clisp.org>
22381
22382         * lib/string_.h: Use 'extern'.
22383
22384 2007-01-27  Jim Meyering  <jim@meyering.net>
22385
22386         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
22387         of set-but-not-used local, "q".
22388
22389         * lib/mempcpy.c: Include <config.h> before <string.h>.
22390         This fixes a compilation error on HP-UX, due to the system's
22391         "restrict"-using mempcpy prototype.
22392
22393 2007-01-26  Bruno Haible  <bruno@clisp.org>
22394
22395         Small optimization.
22396         * lib/javacomp.c: Include c-strstr.h.
22397          (is_envjavac_gcj): Use c_strstr instead of strstr.
22398         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
22399
22400 2007-01-26  Bruno Haible  <bruno@clisp.org>
22401
22402         * MODULES.html.sh (Unicode string functions): Add the new modules.
22403
22404         * modules/uniconv/u32-strconv-to-locale: New file.
22405         * lib/uniconv/u32-strconv-to-locale.c: New file.
22406
22407         * modules/uniconv/u16-strconv-to-locale: New file.
22408         * lib/uniconv/u16-strconv-to-locale.c: New file.
22409
22410         * modules/uniconv/u8-strconv-to-locale: New file.
22411         * lib/uniconv/u8-strconv-to-locale.c: New file.
22412
22413         * modules/uniconv/u32-strconv-from-locale: New file.
22414         * lib/uniconv/u32-strconv-from-locale.c: New file.
22415
22416         * modules/uniconv/u16-strconv-from-locale: New file.
22417         * lib/uniconv/u16-strconv-from-locale.c: New file.
22418
22419         * modules/uniconv/u8-strconv-from-locale: New file.
22420         * lib/uniconv/u8-strconv-from-locale.c: New file.
22421
22422         * modules/uniconv/u32-strconv-to-enc: New file.
22423         * lib/uniconv/u32-strconv-to-enc.c: New file.
22424         * modules/uniconv/u32-strconv-to-enc-tests: New file.
22425         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
22426
22427         * modules/uniconv/u16-strconv-to-enc: New file.
22428         * lib/uniconv/u16-strconv-to-enc.c: New file.
22429         * lib/uniconv/u-strconv-to-enc.h: New file.
22430         * modules/uniconv/u16-strconv-to-enc-tests: New file.
22431         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
22432
22433         * modules/uniconv/u8-strconv-to-enc: New file.
22434         * lib/uniconv/u8-strconv-to-enc.c: New file.
22435         * modules/uniconv/u8-strconv-to-enc-tests: New file.
22436         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
22437
22438         * modules/uniconv/u32-strconv-from-enc: New file.
22439         * lib/uniconv/u32-strconv-from-enc.c: New file.
22440         * modules/uniconv/u32-strconv-from-enc-tests: New file.
22441         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
22442
22443         * modules/uniconv/u16-strconv-from-enc: New file.
22444         * lib/uniconv/u16-strconv-from-enc.c: New file.
22445         * modules/uniconv/u16-strconv-from-enc-tests: New file.
22446         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
22447
22448         * modules/uniconv/u8-strconv-from-enc: New file.
22449         * lib/uniconv/u8-strconv-from-enc.c: New file.
22450         * lib/uniconv/u-strconv-from-enc.h: New file.
22451         * modules/uniconv/u8-strconv-from-enc-tests: New file.
22452         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
22453
22454         * modules/uniconv/u32-conv-from-enc: New file.
22455         * lib/uniconv/u32-conv-from-enc.c: New file.
22456         * modules/uniconv/u32-conv-from-enc-tests: New file.
22457         * tests/uniconv/test-u32-conv-from-enc.c: New file.
22458
22459         * modules/uniconv/u16-conv-from-enc: New file.
22460         * lib/uniconv/u16-conv-from-enc.c: New file.
22461         * lib/uniconv/u-conv-from-enc.h: New file.
22462         * modules/uniconv/u16-conv-from-enc-tests: New file.
22463         * tests/uniconv/test-u16-conv-from-enc.c: New file.
22464
22465         * modules/uniconv/u8-conv-from-enc: New file.
22466         * lib/uniconv/u8-conv-from-enc.c: New file.
22467         * modules/uniconv/u8-conv-from-enc-tests: New file.
22468         * tests/uniconv/test-u8-conv-from-enc.c: New file.
22469
22470         * modules/uniconv/base: New file.
22471         * lib/uniconv.h: New file.
22472
22473 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
22474
22475         * doc/gnulib-tool.texi (Initial import): Update to match current
22476         behavior with strdup module.
22477         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
22478         * lib/memmem.h: Remove; all uses removed.  This is now done
22479         by <string.h>.
22480         * lib/mempcpy.h: Likewise.
22481         * lib/memrchr.h: Likewise.
22482         * lib/stpcpy.h: Likewise.
22483         * lib/stpncpy.h: Likewise.
22484         * lib/strcase.h: Likewise.
22485         * lib/strchrnul.h: Likewise.
22486         * lib/strdup.h: Likewise.
22487         * lib/strndup.h: Likewise.
22488         * lib/strnlen.h: Likewise.
22489         * lib/strpbrk.h: Likewise.
22490         * lib/strsep.h: Likewise.
22491         * lib/strstr.h: Likewise.
22492         * lib/strtok_r.h: Likewise.
22493         * lib/string_.h: New file.
22494         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
22495         Rely on <string.h> instead.
22496         * lib/canon-host.c: Likewise.
22497         * lib/chdir-long.c: Likewise.
22498         * lib/concatpath.c: Likewise.
22499         * lib/exclude.c: Likewise.
22500         * lib/fchdir.c: Likewise.
22501         * lib/getaddrinfo.c: Likewise.
22502         * lib/getcwd.c: Likewise.
22503         * lib/getsubopt.c: Likewise.
22504         * lib/glob.c: Likewise.
22505         * lib/hard-locale.c: Likewise.
22506         * lib/iconvme.c: Likewise.
22507         * lib/javacomp.c: Likewise.
22508         * lib/mempcpy.c: Likewise.
22509         * lib/memrchr.c: Likewise.
22510         * lib/regex_internal.h: Likewise.
22511         * lib/stpncpy.c: Likewise.
22512         * lib/strcasecmp.c: Likewise.
22513         * lib/strchrnul.c: Likewise.
22514         * lib/strdup.c: Likewise.
22515         * lib/striconv.c: Likewise.
22516         * lib/striconveh.c: Likewise.
22517         * lib/striconveha.c: Likewise.
22518         * lib/strncasecmp.c: Likewise.
22519         * lib/strndup.c: Likewise.
22520         * lib/strnlen.c: Likewise.
22521         * lib/strsep.c: Likewise.
22522         * lib/strstr.c: Likewise.
22523         * lib/strtok_r.c: Likewise.
22524         * lib/userspec.c: Likewise.
22525         * lib/w32spawn.h: Likewise.
22526         * lib/xstrndup.c: Likewise.
22527         * lib/mountlist.c (strstr): Remove decl.
22528         * m4/string_h.m4: New file.
22529         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
22530         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
22531         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
22532         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
22533         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
22534         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
22535         Set REPLACE_STRCASECMP if necessary.
22536         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
22537         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
22538         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
22539         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
22540         HAVE_DECL_STRDUP if necessary.
22541         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
22542         since gl_FUNC_STRNDUP does that now.
22543         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
22544         Check for decl here...
22545         (gl_PREREQ_STRNLEN): ... not here.
22546         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
22547         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
22548         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
22549         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
22550         necessary.
22551         * modules/string: New file.
22552         * modules/memmem (Files): Remove special-purpose include file.
22553         (Depends-on): Add string.
22554         (Include): Include <string.h>, not the removed file.
22555         * modules/mempcpy: Likewise.
22556         * modules/memrchr: Likewise.
22557         * modules/stpcpy: Likewise.
22558         * modules/stpncpy: Likewise.
22559         * modules/strcase: Likewise.
22560         * modules/strchrnul: Likewise.
22561         * modules/strdup: Likewise.
22562         * modules/strndup: Likewise.
22563         * modules/strnlen: Likewise.
22564         * modules/strpbrk: Likewise.
22565         * modules/strsep: Likewise.
22566         * modules/strstr: Likewise.
22567         * modules/strtok_r: Likewise.
22568         * tests/test-dirname.c: Don't include "strdup.h", since
22569         <string.h> now suffices.
22570         * tests/test-memmem.c: Don't include "memmem.h", since
22571         <string.h> now suffices.
22572
22573 2007-01-25  Bruno Haible  <bruno@clisp.org>
22574
22575         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
22576         *resultp is 0.
22577
22578         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
22579         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
22580         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
22581         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
22582
22583         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
22584         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
22585         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
22586         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
22587         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
22588         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
22589
22590 2007-01-24  Bruno Haible  <bruno@clisp.org>
22591
22592         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
22593         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
22594         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
22595         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
22596         gl_FUNC_FTS_CORE.
22597         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
22598         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
22599         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22600         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
22601         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
22602         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
22603         gl_FUNC_FCHOWNAT.
22604         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
22605         gl_FUNC_STRFTIME.
22606         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
22607         Reported by Ralf Wildenhues.
22608
22609 2007-01-24  Bruno Haible  <bruno@clisp.org>
22610
22611         Drop AC_REQUIRE calls that are redundant with the module dependencies.
22612         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
22613         gl_GETADDRINFO.
22614         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
22615         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
22616         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
22617
22618 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
22619
22620         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
22621         Don't use 'exit'; just return from 'main'.
22622         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
22623
22624         * lib/fnmatch_.h: Readjust white space and comments to match
22625         glibc, to avoid spurious diffs.
22626
22627 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22628
22629         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
22630         2004-12-01 change by Jakub Jelinek, since this code won't compile
22631         if !LIBC.  Problem reported by Bob Proulx.
22632
22633 2007-01-23  Bruno Haible  <bruno@clisp.org>
22634
22635         * lib/striconveh.c: Include c-strcaseeq.h.
22636         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
22637         * modules/striconveh (Depends-on): Add c-strcaseeq.
22638
22639 2007-01-23  Bruno Haible  <bruno@clisp.org>
22640
22641         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
22642
22643         * modules/c-strcaseeq: New file.
22644         * lib/c-strcaseeq.h: New file.
22645
22646         * modules/streq: New file.
22647         * lib/streq.h: New file.
22648
22649 2007-01-23  Bruno Haible  <bruno@clisp.org>
22650
22651         * modules/striconveha-tests: New file.
22652         * tests/test-striconveha.c: New file.
22653
22654         * lib/striconveha.h: Include <stdbool.h>.
22655         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
22656         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
22657         (mem_iconveha_notranslit): Renamed from mem_iconveha.
22658         (mem_iconveha): New function.
22659         (str_iconveha_notranslit): Renamed from str_iconveha.
22660         (str_iconveha): New function.
22661         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
22662         c-strcase.
22663
22664 2007-01-23  Bruno Haible  <bruno@clisp.org>
22665
22666         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
22667         encodings without forgiving before trying any encoding with handler.
22668         (str_iconveha): Try all encodings without forgiving before trying any
22669         encoding with handler.
22670
22671 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22672
22673         Import the following changes from libc.
22674
22675         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
22676
22677         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
22678
22679         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
22680
22681         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
22682         normal_bracket label.
22683
22684         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
22685
22686         [BZ #361]
22687         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
22688         to normal_bracket after fetching the next character.
22689
22690 2007-01-22  Bruno Haible  <bruno@clisp.org>
22691
22692         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
22693         argument.
22694         * lib/striconveh.c (iconv_carefully_1): New function.
22695         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
22696         argument.
22697         (str_cd_iconveh): Update.
22698         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
22699         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
22700         * tests/test-striconveh.c (MAGIC): New macro.
22701         (new_offsets): New function.
22702         (main): Test call with and without offsets.
22703
22704 2007-01-22  Bruno Haible  <bruno@clisp.org>
22705
22706         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
22707         * modules/sys_select (Makefile.am): Likewise.
22708         * modules/sys_socket (Makefile.am): Likewise.
22709         * modules/sys_time (Makefile.am): Likewise.
22710
22711 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
22712
22713         * modules/gettimeofday (License): Change from GPL to LGPL, since
22714         gettimeofday is a library function.
22715
22716 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22717
22718         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
22719
22720 2007-01-21  Bruno Haible  <bruno@clisp.org>
22721
22722         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
22723
22724 2007-01-21  Bruno Haible  <bruno@clisp.org>
22725
22726         * modules/striconveha: New file.
22727         * lib/striconveha.h: New file.
22728         * lib/striconveha.c: New file.
22729         * MODULES.html.sh (Internationalization functions): Add striconveha.
22730         * lib/striconv.c (str_iconv): Optimize the case of an empty input
22731         string.
22732         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
22733
22734 2007-01-21  Bruno Haible  <bruno@clisp.org>
22735
22736         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
22737         * lib/striconveh.c (str_iconveh): Likewise.
22738
22739 2007-01-21  Bruno Haible  <bruno@clisp.org>
22740
22741         * lib/striconveh.h (mem_iconveh): New declaration.
22742         * lib/striconveh.c (mem_iconveh): New function.
22743         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
22744
22745 2007-01-21  Bruno Haible  <bruno@clisp.org>
22746
22747         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
22748
22749         * lib/striconveh.h (mem_cd_iconveh): Change specification.
22750         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
22751         original result buffer.
22752         (str_cd_iconveh): Update.
22753         * tests/test-striconveh.c (main): Update.
22754
22755         * lib/striconv.h (mem_cd_iconv): Change specification.
22756         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
22757         result buffer.
22758         (str_cd_iconv): Update.
22759         * tests/test-striconv.c (main): Update.
22760
22761 2007-01-21  Bruno Haible  <bruno@clisp.org>
22762
22763         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
22764
22765 2007-01-20  Jim Meyering  <jim@meyering.net>
22766
22767         * lib/userspec.c (parse_with_separator): If a user or group string
22768         starts with "+", skip the corresponding name-to-ID look-up, since
22769         such a look-up must fail: user and group names may not include "+".
22770
22771 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
22772
22773         * lib/poll.c: Include sys/time.h and time.h unconditionally,
22774         since we now assume the sys_time module.
22775         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
22776         check for sys/time.h; no longer needed.
22777         * modules/poll (Depends-on): Depend on sys_time.
22778
22779 2007-01-18  Bruno Haible  <bruno@clisp.org>
22780
22781         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
22782         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
22783
22784         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
22785         gettimeofday.
22786
22787         * tests/test-gettimeofday.c: Include <time.h>.
22788         (dummy): Remove variable.
22789
22790         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
22791         gl_HEADER_SYS_TIME_H.
22792         (gl_HEADER_SYS_TIME_H): New macro.
22793
22794         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
22795         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22796         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
22797         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
22798         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22799         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
22800         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
22801         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22802         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
22803         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
22804         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22805
22806         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
22807         last change; it caused a compilation error when cross-compiling to
22808         Cygwin.
22809
22810 2007-01-18  Jim Meyering  <jim@meyering.net>
22811
22812         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
22813         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
22814         than the race-prone "test -d sys || mkdir sys".
22815         (configure.ac): Use AC_PROG_MKDIR_P.
22816         * modules/sys_select: Likewise.
22817         * modules/sys_socket: Likewise.
22818         * modules/sys_time: Likewise.
22819
22820 2007-01-18  Eric Blake  <ebb9@byu.net>
22821
22822         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
22823         replace gettimeofday.
22824         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
22825         name, to avoid infinite recursion.
22826
22827 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
22828
22829         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
22830         module sys_time.
22831         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
22832         assume timespec.h defines struct timeval.
22833         * lib/settime.c: Likewise.
22834         * lib/utimens.c: Likewise.
22835         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
22836         since we now assume the gettimeofday module.
22837         * lib/tempname.c (__gen_tempname): Likewise.
22838         * lib/gettimeofday.h: Remove.
22839         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
22840         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
22841         Include <time.h>, for 'time()'.
22842         (localtime_buffer_addr): Also use this workaround if
22843         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
22844         to simplify the uses.  All uses changed.
22845         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
22846         that #undef is inside {}, and 'const' follows type name consistently.
22847         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
22848         (gettimeofday): Do not use the maximum possible value for
22849         tv->tv_usec, since that might break usages other than ls.c.
22850         Instead, we'll leave ls.c alone.  This undoes today's patch
22851         by Bruno.  Add a compile-time warning for 1s-clock resolution;
22852         we've never observed the problem but might as well keep the
22853         canary.
22854         * lib/nanosleep.c: Include timespec.h first, for interface check.
22855         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
22856         now assume the sys_time module.
22857         * lib/tempname.c: Likewise.
22858         * lib/timespec.h: Likewise.
22859         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
22860         needed.
22861         * lib/strftime.c: Likewise.
22862         * lib/timespec.h: Likewise.
22863         * lib/posixtm.c: Include posixtm.h first, for interface check.
22864         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
22865         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
22866         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
22867         * lib/sys_time_.h: New file.
22868         * lib/timespec.h (struct timespec): Use long int, not long.
22869         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
22870         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
22871         Remove obsolescent call to AC_HEADER_TIME.
22872         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
22873         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
22874         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
22875         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
22876         Likewise.
22877         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
22878         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
22879         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
22880         into the sys_time module.  Check for gettimeofday just once.
22881         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
22882         for gettimeofday signature to just check the signature.  Merely
22883         compile it, since linking doesn't test signature.  Improve test for
22884         whether gettimeofday.o is actually needed.
22885         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
22886         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
22887         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
22888         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22889         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
22890         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
22891         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
22892         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
22893         than worrying about sys/time.h.
22894         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
22895         Don't bother worrying about TIME_WITH_SYS_TIME.
22896         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
22897         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
22898         * m4/sys_time_h.m4: New file.
22899         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
22900         Don't include sys/time.h.  Return from main rather than exiting.
22901         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
22902         all uses changed.
22903         * modules/gethrxtime (Depends-on): Add sys_time.
22904         * modules/gettime (Depends-on): Likewise.
22905         * modules/gettimeofday (Depends-on): Likewise.
22906         * modules/nanosleep (Depends-on): Likewise.
22907         * modules/settime (Depends-on): Likewise.
22908         * modules/tempname (Depends-on): Likewise.
22909         * modules/utimens (Depends-on): Likewise.
22910         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
22911         (Include:) Change back to <sys/time.h>.
22912         (Maintainer:) Add self.
22913         * modules/sys_time: New file.
22914         * modules/tempname (Depends-on): Add gettimeofday.
22915         * tests/test-gettimeofday.c: Include <sys/time.h>
22916         rather than gettimeofday.h.
22917
22918 2007-01-17  Bruno Haible  <bruno@clisp.org>
22919
22920         * gnulib-tool (func_get_license): Revert last patch. Instead, let
22921         the license default to GPL.
22922         (func_create_testdir): Don't complain if a module is LGPL and its
22923         tests module depends on GPLed modules.
22924
22925 2007-01-17  Bruno Haible  <bruno@clisp.org>
22926
22927         * lib/gettimeofday.c (gettimeofday): Add code for the case
22928         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
22929         maximum possible value for tv->tv_usec, rather than the minimum one.
22930
22931 2005-10-08  Martin Lambers  <marlam@marlam.de>
22932 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22933 2007-01-16  Bruno Haible  <bruno@clisp.org>
22934
22935         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
22936         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
22937         gl_FUNC_GETTIMEOFDAY.
22938         (Include): Add gettimeofday.h.
22939         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
22940         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
22941         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
22942         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
22943         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
22944         * lib/gettimeofday.h: New file.
22945         * lib/gettimeofday.c: Include <sys/timeb.h>.
22946         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
22947         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
22948         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
22949         fall back on time().
22950
22951         * tests/test-gettimeofday.c: New file.
22952         * modules/gettimeofday-tests: New file.
22953
22954 2007-01-16  Eric Blake  <ebb9@byu.net>
22955
22956         * modules/fnmatch (Depends-on): Depend on wchar.
22957         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
22958         * m4/fnmatch.m4: Likewise.
22959         * modules/mbchar (Makefile.am): Assume <wchar.h>.
22960         * m4/mbchar.m4: Likewise.
22961         * modules/mbswidth (Depends-on): Depend on wchar.
22962         * lib/mbswidth.c: Assume <wchar.h>.
22963         * m4/mbswidth.m4: Likewise.
22964         * modules/quotearg (Depends-on): Depend on wchar.
22965         * lib/quotearg.c: Assume <wchar.h>.
22966         * m4/quotearg.m4: Likewise.
22967         * modules/regex (Depends-on): Depend on wchar.
22968         * lib/regex_internal.h: Assume <wchar.h>.
22969         * m4/regex.m4: Likewise.
22970         * modules/stdint (Depends-on): Depend on wchar.
22971         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
22972         * m4/stdint.m4: Likewise.
22973         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
22974         * modules/strftime (Depends-on): Depend on wchar.
22975         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
22976         * modules/strtol (Depends-on): Depend on wchar.
22977         * lib/strtol.c: Assume <wchar.h>.
22978         * modules/wcwidth (Depends-on): Depend on wchar.
22979         * lib/wcwidth.h: Assume <wchar.h>.
22980         * m4/wcwidth.m4: Likewise.
22981
22982 2007-01-16  Bruno Haible  <bruno@clisp.org>
22983
22984         * modules/csharpexec-script: New, created from...
22985         * modules/csharpexec: ... this.
22986
22987 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
22988
22989         * modules/javaexec-script: New, created from...
22990         * modules/javaexec: ... this.
22991
22992 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22993
22994         * modules/poll (Dependencies): Add sys_select.
22995
22996 2007-01-15  Jim Meyering  <jim@meyering.net>
22997
22998         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
22999         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
23000         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
23001         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
23002
23003 2007-01-15  Bruno Haible  <bruno@clisp.org>
23004
23005         * modules/striconveh: New file.
23006         * lib/striconveh.h: New file.
23007         * lib/striconveh.c: New file.
23008         * MODULES.html.sh (Internationalization functions): Add striconveh.
23009
23010         * modules/striconveh-tests: New file.
23011         * tests/test-striconveh.c: New file.
23012
23013 2007-01-15  Bruno Haible  <bruno@clisp.org>
23014
23015         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
23016         not from GNU libiconv or GNU libc.
23017
23018 2007-01-15  Bruno Haible  <bruno@clisp.org>
23019
23020         * doc/gnulib-intro.texi (Copyright): Explain the different license
23021         terms for module descriptions, autoconf macros, tests, documentation.
23022
23023 2007-01-14  Bruno Haible  <bruno@clisp.org>
23024
23025         * modules/striconv-tests: New file.
23026         * tests/test-striconv.c: New file.
23027
23028 2007-01-14  Bruno Haible  <bruno@clisp.org>
23029
23030         * modules/iconv-tests: New file.
23031         * tests/test-iconv.c: New file.
23032
23033 2007-01-14  Bruno Haible  <bruno@clisp.org>
23034
23035         * gnulib-tool (func_get_license): For test modules, use the license of
23036         the main module.
23037
23038 2007-01-14  Bruno Haible  <bruno@clisp.org>
23039
23040         * modules/iconv (Include): Clarify that <iconv.h> can only be included
23041         if iconv is found to exist.
23042
23043 2007-01-14  Bruno Haible  <bruno@clisp.org>
23044
23045         * modules/c-ctype-tests: New file.
23046         * tests/test-c-ctype.c: New file.
23047
23048 2007-01-14  Bruno Haible  <bruno@clisp.org>
23049
23050         * modules/binary-io-tests: New file.
23051         * tests/test-binary-io.sh: New file.
23052         * tests/test-binary-io.c: New file.
23053
23054 2007-01-14  Bruno Haible  <bruno@clisp.org>
23055
23056         * modules/array-oset-tests: New file.
23057         * tests/test-array_oset.c: New file.
23058
23059 2007-01-14  Bruno Haible  <bruno@clisp.org>
23060
23061         * modules/array-list-tests: New file.
23062         * tests/test-array_list.c: New file.
23063
23064 2007-01-14  Bruno Haible  <bruno@clisp.org>
23065
23066         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
23067         and make.
23068         Reported by Simon Josefsson in
23069         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
23070
23071 2007-01-14  Bruno Haible  <bruno@clisp.org>
23072
23073         * modules/allocsa-tests: New file.
23074         * tests/test-allocsa.c: New file.
23075
23076 2007-01-14  Bruno Haible  <bruno@clisp.org>
23077
23078         * modules/fchdir (Depends-on): Add absolute-header.
23079         * modules/unistd (Depends-on): Likewise.
23080
23081 2006-12-30  Bruno Haible  <bruno@clisp.org>
23082
23083         * modules/fchdir: New file.
23084         * modules/unistd (Files): Add lib/unistd_.h.
23085         (Makefile.am): Generate unistd.h from unistd_.h.
23086         * lib/fchdir.c: New file.
23087         * lib/dirent_.h: New file.
23088         * lib/unistd_.h: New file.
23089         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
23090         * m4/fchdir.m4: New file.
23091         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
23092         (gl_HEADER_UNISTD): Invoke it.
23093         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
23094         function.
23095         * lib/backupfile.c (opendir, closedir): Undefine.
23096         * lib/chown.c (open, close): Undefine.
23097         * lib/clean-temp.c (open, close): Undefine.
23098         * lib/copy-file.c (open, close): Undefine.
23099         * lib/execute.c (open, close): Undefine.
23100         * lib/fsusage.c (open, close): Undefine.
23101         * lib/gc-gnulib.c (open, close): Undefine.
23102         * lib/getcwd.c (opendir, closedir): Undefine.
23103         * lib/glob.c (opendir, closedir): Undefine.
23104         * lib/javacomp.c (open, close): Undefine.
23105         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
23106         * lib/openat-proc.c (open, close): Undefine.
23107         * lib/pagealign_alloc.c (open, close): Undefine.
23108         * lib/pipe.c (open, close): Undefine.
23109         * lib/progreloc.c (open, close): Undefine.
23110         * lib/savedir.c (opendir, closedir): Undefine.
23111         * lib/utime.c (open, close): Undefine.
23112         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
23113
23114 2007-01-10  Bruno Haible  <bruno@clisp.org>
23115
23116         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
23117
23118 2007-01-12  Eric Blake  <ebb9@byu.net>
23119
23120         Provide a robust <wchar.h>.  Further simplifications are now
23121         possible in other modules, but not included here.
23122         * modules/wchar: New module.
23123         * m4/wchar.m4: New file.
23124         * lib/wchar_.h: Likewise.
23125         * modules/mbchar (Depends-on): Depend on wchar, as the first use
23126         of the new module.
23127         * MODULES.html.sh (Extended multibyte and wide character utilities):
23128         New section.
23129
23130 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
23131
23132         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
23133         to a reasonable default for memory allocation.
23134         (xreadlink): Don't allocate a huge buffer, to work around a buggy
23135         file system that reports garbage st_size values for symlinks.
23136         Problem reported by Liyang Hu.
23137
23138 2007-01-11  Simon Josefsson  <simon@josefsson.org>
23139
23140         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
23141         Emacs .#* auto-save files).
23142
23143 2007-01-11  Bruno Haible  <bruno@clisp.org>
23144
23145         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
23146         directory.
23147
23148 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
23149
23150         Use @...@ consistently in lib/wctype_.h.
23151         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
23152         on it being set to 1 or 0.
23153         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
23154         go back to AC_SUBSTing it.
23155         * modules/wctype (Makefile.am): Undo previous change.
23156
23157 2007-01-10  Eric Blake  <ebb9@byu.net>
23158
23159         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
23160         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
23161         * modules/wctype (Makefile.am): Likewise.
23162         Reported by Chris McGuire.
23163
23164 2007-01-10  Jim Meyering  <jim@meyering.net>
23165
23166         fts.c: a small readability/maintainability improvement
23167         * lib/fts.c (fts_read): Make this code slightly more readable and
23168         maintainable by hoisting the "sp->fts_cur = p" assignments to
23169         immediately follow the statements that set P.  Derived from
23170         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
23171
23172 2007-01-10  Eric Blake  <ebb9@byu.net>
23173
23174         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
23175         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
23176         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
23177         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
23178         Reported by Chris McGuire.
23179
23180 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23181
23182         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
23183         in sed script.
23184
23185 2007-01-09  Bruno Haible  <bruno@clisp.org>
23186
23187         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
23188         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
23189         variables.
23190         (func_module): Use them.
23191
23192 2007-01-09  Bruno Haible  <bruno@clisp.org>
23193
23194         * modules/unistr/base: New file.
23195         * lib/unistr.h: New file.
23196
23197         * modules/unistr/u8-to-u16: New file.
23198         * lib/unistr/u8-to-u16.c: New file.
23199
23200         * modules/unistr/u8-to-u32: New file.
23201         * lib/unistr/u8-to-u32.c: New file.
23202
23203         * modules/unistr/u16-to-u8: New file.
23204         * lib/unistr/u16-to-u8.c: New file.
23205
23206         * modules/unistr/u16-to-u32: New file.
23207         * lib/unistr/u16-to-u32.c: New file.
23208
23209         * modules/unistr/u32-to-u8: New file.
23210         * lib/unistr/u32-to-u8.c: New file.
23211
23212         * modules/unistr/u32-to-u16: New file.
23213         * lib/unistr/u32-to-u16.c: New file.
23214
23215         * modules/unistr/u8-check: New file.
23216         * modules/unistr/u16-check: New file.
23217         * modules/unistr/u32-check: New file.
23218         * lib/unistr/u8-check.c: New file.
23219         * lib/unistr/u16-check.c: New file.
23220         * lib/unistr/u32-check.c: New file.
23221
23222         * modules/unistr/u8-chr: New file.
23223         * modules/unistr/u16-chr: New file.
23224         * modules/unistr/u32-chr: New file.
23225         * lib/unistr/u8-chr.c: New file.
23226         * lib/unistr/u16-chr.c: New file.
23227         * lib/unistr/u32-chr.c: New file.
23228
23229         * modules/unistr/u8-cmp: New file.
23230         * modules/unistr/u16-cmp: New file.
23231         * modules/unistr/u32-cmp: New file.
23232         * lib/unistr/u8-cmp.c: New file.
23233         * lib/unistr/u16-cmp.c: New file.
23234         * lib/unistr/u32-cmp.c: New file.
23235
23236         * modules/unistr/u8-cpy: New file.
23237         * modules/unistr/u16-cpy: New file.
23238         * modules/unistr/u32-cpy: New file.
23239         * lib/unistr/u8-cpy.c: New file.
23240         * lib/unistr/u16-cpy.c: New file.
23241         * lib/unistr/u32-cpy.c: New file.
23242         * lib/unistr/u-cpy.h: New file.
23243
23244         * modules/unistr/u8-cpy-alloc: New file.
23245         * modules/unistr/u16-cpy-alloc: New file.
23246         * modules/unistr/u32-cpy-alloc: New file.
23247         * lib/unistr/u8-cpy-alloc.c: New file.
23248         * lib/unistr/u16-cpy-alloc.c: New file.
23249         * lib/unistr/u32-cpy-alloc.c: New file.
23250         * lib/unistr/u-cpy-alloc.h: New file.
23251
23252         * modules/unistr/u8-endswith: New file.
23253         * modules/unistr/u16-endswith: New file.
23254         * modules/unistr/u32-endswith: New file.
23255         * lib/unistr/u8-endswith.c: New file.
23256         * lib/unistr/u16-endswith.c: New file.
23257         * lib/unistr/u32-endswith.c: New file.
23258         * lib/unistr/u-endswith.h: New file.
23259
23260         * modules/unistr/u8-mblen: New file.
23261         * modules/unistr/u16-mblen: New file.
23262         * modules/unistr/u32-mblen: New file.
23263         * lib/unistr/u8-mblen.c: New file.
23264         * lib/unistr/u16-mblen.c: New file.
23265         * lib/unistr/u32-mblen.c: New file.
23266
23267         * modules/unistr/u8-mbtouc: New file.
23268         * modules/unistr/u16-mbtouc: New file.
23269         * modules/unistr/u32-mbtouc: New file.
23270         * lib/unistr/u8-mbtouc.c: New file.
23271         * lib/unistr/u16-mbtouc.c: New file.
23272         * lib/unistr/u32-mbtouc.c: New file.
23273
23274         * modules/unistr/u8-mbtouc-safe: New file.
23275         * modules/unistr/u16-mbtouc-safe: New file.
23276         * modules/unistr/u32-mbtouc-safe: New file.
23277         * lib/unistr/u8-mbtouc-safe.c: New file.
23278         * lib/unistr/u16-mbtouc-safe.c: New file.
23279         * lib/unistr/u32-mbtouc-safe.c: New file.
23280
23281         * modules/unistr/u8-move: New file.
23282         * modules/unistr/u16-move: New file.
23283         * modules/unistr/u32-move: New file.
23284         * lib/unistr/u8-move.c: New file.
23285         * lib/unistr/u16-move.c: New file.
23286         * lib/unistr/u32-move.c: New file.
23287         * lib/unistr/u-move.h: New file.
23288
23289         * modules/unistr/u8-next: New file.
23290         * modules/unistr/u16-next: New file.
23291         * modules/unistr/u32-next: New file.
23292         * lib/unistr/u8-next.c: New file.
23293         * lib/unistr/u16-next.c: New file.
23294         * lib/unistr/u32-next.c: New file.
23295
23296         * modules/unistr/u8-prev: New file.
23297         * modules/unistr/u16-prev: New file.
23298         * modules/unistr/u32-prev: New file.
23299         * lib/unistr/u8-prev.c: New file.
23300         * lib/unistr/u16-prev.c: New file.
23301         * lib/unistr/u32-prev.c: New file.
23302
23303         * modules/unistr/u8-set: New file.
23304         * modules/unistr/u16-set: New file.
23305         * modules/unistr/u32-set: New file.
23306         * lib/unistr/u8-set.c: New file.
23307         * lib/unistr/u16-set.c: New file.
23308         * lib/unistr/u32-set.c: New file.
23309         * lib/unistr/u-set.h: New file.
23310
23311         * modules/unistr/u8-startswith: New file.
23312         * modules/unistr/u16-startswith: New file.
23313         * modules/unistr/u32-startswith: New file.
23314         * lib/unistr/u8-startswith.c: New file.
23315         * lib/unistr/u16-startswith.c: New file.
23316         * lib/unistr/u32-startswith.c: New file.
23317         * lib/unistr/u-startswith.h: New file.
23318
23319         * modules/unistr/u8-stpcpy: New file.
23320         * modules/unistr/u16-stpcpy: New file.
23321         * modules/unistr/u32-stpcpy: New file.
23322         * lib/unistr/u8-stpcpy.c: New file.
23323         * lib/unistr/u16-stpcpy.c: New file.
23324         * lib/unistr/u32-stpcpy.c: New file.
23325         * lib/unistr/u-stpcpy.h: New file.
23326
23327         * modules/unistr/u8-stpncpy: New file.
23328         * modules/unistr/u16-stpncpy: New file.
23329         * modules/unistr/u32-stpncpy: New file.
23330         * lib/unistr/u8-stpncpy.c: New file.
23331         * lib/unistr/u16-stpncpy.c: New file.
23332         * lib/unistr/u32-stpncpy.c: New file.
23333         * lib/unistr/u-stpncpy.h: New file.
23334
23335         * modules/unistr/u8-strcat: New file.
23336         * modules/unistr/u16-strcat: New file.
23337         * modules/unistr/u32-strcat: New file.
23338         * lib/unistr/u8-strcat.c: New file.
23339         * lib/unistr/u16-strcat.c: New file.
23340         * lib/unistr/u32-strcat.c: New file.
23341         * lib/unistr/u-strcat.h: New file.
23342
23343         * modules/unistr/u8-strchr: New file.
23344         * modules/unistr/u16-strchr: New file.
23345         * modules/unistr/u32-strchr: New file.
23346         * lib/unistr/u8-strchr.c: New file.
23347         * lib/unistr/u16-strchr.c: New file.
23348         * lib/unistr/u32-strchr.c: New file.
23349
23350         * modules/unistr/u8-strcmp: New file.
23351         * modules/unistr/u16-strcmp: New file.
23352         * modules/unistr/u32-strcmp: New file.
23353         * lib/unistr/u8-strcmp.c: New file.
23354         * lib/unistr/u16-strcmp.c: New file.
23355         * lib/unistr/u32-strcmp.c: New file.
23356
23357         * modules/unistr/u8-strcpy: New file.
23358         * modules/unistr/u16-strcpy: New file.
23359         * modules/unistr/u32-strcpy: New file.
23360         * lib/unistr/u8-strcpy.c: New file.
23361         * lib/unistr/u16-strcpy.c: New file.
23362         * lib/unistr/u32-strcpy.c: New file.
23363         * lib/unistr/u-strcpy.h: New file.
23364
23365         * modules/unistr/u8-strcspn: New file.
23366         * modules/unistr/u16-strcspn: New file.
23367         * modules/unistr/u32-strcspn: New file.
23368         * lib/unistr/u8-strcspn.c: New file.
23369         * lib/unistr/u16-strcspn.c: New file.
23370         * lib/unistr/u32-strcspn.c: New file.
23371         * lib/unistr/u-strcspn.h: New file.
23372
23373         * modules/unistr/u8-strdup: New file.
23374         * modules/unistr/u16-strdup: New file.
23375         * modules/unistr/u32-strdup: New file.
23376         * lib/unistr/u8-strdup.c: New file.
23377         * lib/unistr/u16-strdup.c: New file.
23378         * lib/unistr/u32-strdup.c: New file.
23379         * lib/unistr/u-strdup.h: New file.
23380
23381         * modules/unistr/u8-strlen: New file.
23382         * modules/unistr/u16-strlen: New file.
23383         * modules/unistr/u32-strlen: New file.
23384         * lib/unistr/u8-strlen.c: New file.
23385         * lib/unistr/u16-strlen.c: New file.
23386         * lib/unistr/u32-strlen.c: New file.
23387         * lib/unistr/u-strlen.h: New file.
23388
23389         * modules/unistr/u8-strmblen: New file.
23390         * modules/unistr/u16-strmblen: New file.
23391         * modules/unistr/u32-strmblen: New file.
23392         * lib/unistr/u8-strmblen.c: New file.
23393         * lib/unistr/u16-strmblen.c: New file.
23394         * lib/unistr/u32-strmblen.c: New file.
23395
23396         * modules/unistr/u8-strmbtouc: New file.
23397         * modules/unistr/u16-strmbtouc: New file.
23398         * modules/unistr/u32-strmbtouc: New file.
23399         * lib/unistr/u8-strmbtouc.c: New file.
23400         * lib/unistr/u16-strmbtouc.c: New file.
23401         * lib/unistr/u32-strmbtouc.c: New file.
23402
23403         * modules/unistr/u8-strncat: New file.
23404         * modules/unistr/u16-strncat: New file.
23405         * modules/unistr/u32-strncat: New file.
23406         * lib/unistr/u8-strncat.c: New file.
23407         * lib/unistr/u16-strncat.c: New file.
23408         * lib/unistr/u32-strncat.c: New file.
23409         * lib/unistr/u-strncat.h: New file.
23410
23411         * modules/unistr/u8-strncmp: New file.
23412         * modules/unistr/u16-strncmp: New file.
23413         * modules/unistr/u32-strncmp: New file.
23414         * lib/unistr/u8-strncmp.c: New file.
23415         * lib/unistr/u16-strncmp.c: New file.
23416         * lib/unistr/u32-strncmp.c: New file.
23417
23418         * modules/unistr/u8-strncpy: New file.
23419         * modules/unistr/u16-strncpy: New file.
23420         * modules/unistr/u32-strncpy: New file.
23421         * lib/unistr/u8-strncpy.c: New file.
23422         * lib/unistr/u16-strncpy.c: New file.
23423         * lib/unistr/u32-strncpy.c: New file.
23424         * lib/unistr/u-strncpy.h: New file.
23425
23426         * modules/unistr/u8-strnlen: New file.
23427         * modules/unistr/u16-strnlen: New file.
23428         * modules/unistr/u32-strnlen: New file.
23429         * lib/unistr/u8-strnlen.c: New file.
23430         * lib/unistr/u16-strnlen.c: New file.
23431         * lib/unistr/u32-strnlen.c: New file.
23432         * lib/unistr/u-strnlen.h: New file.
23433
23434         * modules/unistr/u8-strpbrk: New file.
23435         * modules/unistr/u16-strpbrk: New file.
23436         * modules/unistr/u32-strpbrk: New file.
23437         * lib/unistr/u8-strpbrk.c: New file.
23438         * lib/unistr/u16-strpbrk.c: New file.
23439         * lib/unistr/u32-strpbrk.c: New file.
23440         * lib/unistr/u-strpbrk.h: New file.
23441
23442         * modules/unistr/u8-strrchr: New file.
23443         * modules/unistr/u16-strrchr: New file.
23444         * modules/unistr/u32-strrchr: New file.
23445         * lib/unistr/u8-strrchr.c: New file.
23446         * lib/unistr/u16-strrchr.c: New file.
23447         * lib/unistr/u32-strrchr.c: New file.
23448
23449         * modules/unistr/u8-strspn: New file.
23450         * modules/unistr/u16-strspn: New file.
23451         * modules/unistr/u32-strspn: New file.
23452         * lib/unistr/u8-strspn.c: New file.
23453         * lib/unistr/u16-strspn.c: New file.
23454         * lib/unistr/u32-strspn.c: New file.
23455         * lib/unistr/u-strspn.h: New file.
23456
23457         * modules/unistr/u8-strstr: New file.
23458         * modules/unistr/u16-strstr: New file.
23459         * modules/unistr/u32-strstr: New file.
23460         * lib/unistr/u8-strstr.c: New file.
23461         * lib/unistr/u16-strstr.c: New file.
23462         * lib/unistr/u32-strstr.c: New file.
23463         * lib/unistr/u-strstr.h: New file.
23464
23465         * modules/unistr/u8-strtok: New file.
23466         * modules/unistr/u16-strtok: New file.
23467         * modules/unistr/u32-strtok: New file.
23468         * lib/unistr/u8-strtok.c: New file.
23469         * lib/unistr/u16-strtok.c: New file.
23470         * lib/unistr/u32-strtok.c: New file.
23471         * lib/unistr/u-strtok.h: New file.
23472
23473         * modules/unistr/u8-uctomb: New file.
23474         * modules/unistr/u16-uctomb: New file.
23475         * modules/unistr/u32-uctomb: New file.
23476         * lib/unistr/u8-uctomb.c: New file.
23477         * lib/unistr/u16-uctomb.c: New file.
23478         * lib/unistr/u32-uctomb.c: New file.
23479
23480         * MODULES.html.sh (Unicode string functions): Add the new modules.
23481
23482 2007-01-08  Bruno Haible  <bruno@clisp.org>
23483
23484         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
23485         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
23486         subdirectories.
23487
23488 2007-01-08  Karl Berry  <karl@gnu.org>
23489
23490         * doc/error.texi: mention that main() fns must set program_name
23491         when progname is used.
23492
23493 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
23494
23495         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
23496         WCTYPE_H is empty, for the benefit of builds from non-distclean
23497         directories.  Problem reported by Eric Blake in
23498         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
23499
23500 2007-01-08  Bruno Haible  <bruno@clisp.org>
23501
23502         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
23503         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
23504         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
23505         PROVIDE_CANONICALIZE_FILENAME_MODE.
23506         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
23507
23508 2007-01-08  Bruno Haible  <bruno@clisp.org>
23509
23510         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
23511         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
23512         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
23513         * lib/fts.c: Likewise.
23514         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
23515
23516 2006-12-25  Bruno Haible  <bruno@clisp.org>
23517
23518         * modules/utf8-ucs4-safe: New file.
23519         * lib/utf8-ucs4-safe.h: New file.
23520         * lib/unistr/utf8-ucs4-safe.c: New file.
23521
23522         * modules/utf16-ucs4-safe: New file.
23523         * lib/utf16-ucs4-safe.h: New file.
23524         * lib/unistr/utf16-ucs4-safe.c: New file.
23525
23526         * MODULES.html.sh (Unicode string functions): Add the new modules.
23527
23528 2007-01-08  Bruno Haible  <bruno@clisp.org>
23529
23530         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
23531         (Depends-on): Add unitypes.
23532         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
23533         (u8_mbtouc_aux): Move out to separate file.
23534         (u8_mbtouc): Use ucs4_t, uint8_t types.
23535         * lib/unistr/utf8-ucs4.c: New file.
23536
23537         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
23538         (Depends-on): Add unitypes.
23539         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
23540         (u16_mbtouc_aux): Move out to separate file.
23541         (u16_mbtouc): Use ucs4_t, uint16_t types.
23542         * lib/unistr/utf16-ucs4.c: New file.
23543
23544         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
23545         (Depends-on): Add unitypes.
23546         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
23547         (u8_uctomb_aux): Move out to separate file.
23548         (u8_uctomb): Use ucs4_t, uint8_t types.
23549         * lib/unistr/ucs4-utf8.c: New file.
23550
23551         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
23552         (Depends-on): Add unitypes.
23553         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
23554         (u16_uctomb_aux): Move out to separate file.
23555         (u16_uctomb): Use ucs4_t, uint16_t types.
23556         * lib/unistr/ucs4-utf16.c: New file.
23557
23558 2006-12-25  Bruno Haible  <bruno@clisp.org>
23559
23560         * modules/unitypes: New file.
23561         * lib/unitypes.h: New file.
23562         * MODULES.html.sh (func_all_modules): New section "Unicode string
23563         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
23564         this section. Add unitypes.
23565
23566 2007-01-08  Bruno Haible  <bruno@clisp.org>
23567
23568         Avoid variable names that conflict with those from libtool.
23569         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
23570         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
23571         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
23572         library_names_spec to acl_library_names_spec, hardcode_* to
23573         acl_hardcode_*.
23574         Reported by Ralf Wildenhues.
23575
23576 2007-01-08  Bruno Haible  <bruno@clisp.org>
23577
23578         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
23579         definition.
23580         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
23581         definition.
23582         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
23583         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
23584         definition.
23585         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
23586         definition.
23587         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
23588         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
23589         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
23590         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
23591         definition.
23592         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
23593         definition.
23594         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
23595         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
23596         GC_USE_<algorithm>.
23597         * lib/gc-libgcrypt.c: Likewise.
23598         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
23599         * modules/gc-arctwo (configure.ac): Likewise.
23600         * modules/gc-des (configure.ac): Likewise.
23601         * modules/gc-hmac-md5 (configure.ac): Likewise.
23602         * modules/gc-hmac-sha1 (configure.ac): Likewise.
23603         * modules/gc-md2 (configure.ac): Likewise.
23604         * modules/gc-md4 (configure.ac): Likewise.
23605         * modules/gc-md5 (configure.ac): Likewise.
23606         * modules/gc-random (configure.ac): Likewise.
23607         * modules/gc-rijndael (configure.ac): Likewise.
23608         * modules/gc-sha1 (configure.ac): Likewise.
23609
23610 2007-01-08  Bruno Haible  <bruno@clisp.org>
23611
23612         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
23613         macro definition.
23614         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
23615         definition.
23616         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
23617         definition.
23618         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
23619         * modules/fcntl-safer (configure.ac): Likewise.
23620         * modules/fopen-safer (configure.ac): Likewise.
23621         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
23622         GNULIB_FWRITEERROR macro definition.
23623
23624 2007-01-08  Bruno Haible  <bruno@clisp.org>
23625
23626         * m4/gnulib-common.m4: New file.
23627         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
23628         (func_get_filelist): Add m4/gnulib-common.m4.
23629
23630 2007-01-08  Bruno Haible  <bruno@clisp.org>
23631
23632         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
23633         command.
23634
23635 2007-01-08  Jim Meyering  <jim@meyering.net>
23636
23637         Use a more robust test for a "can't happen" condition.
23638         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
23639         narrowed the st_size value.  Presuming the "can't happen" condition
23640         is true, that narrowing could conceivably convert an invalid st_size
23641         value into a valid one.  Instead, use a change based on Matthew
23642         Woehlke's original patch.
23643
23644         Slight readability improvement: use an assert-like macro
23645         in place of literal "abort ()" uses.
23646         * lib/fts.c (fts_assert): Define.
23647         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
23648         Use this macro instead of a bare 'abort'.
23649
23650 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
23651
23652         Don't worry about using IRIX 5.3's wctype.h broken definitions;
23653         simply work around them.
23654         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
23655         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
23656         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
23657         declaring.
23658         Don't bother to define as macros, since the standard doesn't require it.
23659         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
23660         longer worry about IRIX 5.3.
23661         (HAVE_WCTYPE_CTMP_BUG): Remove.
23662
23663 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23664
23665         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
23666         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
23667         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
23668         Problems reported by Georg Schwarz for IRIX 5.3.
23669
23670         * gnulib-tool (autoconf_minversion): Take the maximum version number
23671         found, not the minimum.  Problem reported by James Youngman.
23672
23673 2007-01-03  Karl Berry  <karl@gnu.org>
23674
23675         * doc/error.texi: new file, explaining interaction with progname.
23676         * doc/gnulib.texi: include it.  Update copyright.
23677
23678 2007-01-03  Simon Josefsson  <simon@josefsson.org>
23679
23680         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
23681         AC_CANONICAL_HOST, to improve autobuild outputs.
23682
23683 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
23684             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
23685
23686         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
23687         sockets, server sockets, and other file descriptors.  Count errors
23688         to compute the return value.  Reorder the code a bit to be easier
23689         to follow.  Don't set event bits that were not requested (except
23690         POLLERR and POLLHUP).
23691
23692 2007-01-01  Bruno Haible  <bruno@clisp.org>
23693
23694         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
23695
23696 2007-01-03  Jim Meyering  <jim@meyering.net>
23697
23698         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
23699
23700 2007-01-02  Bruno Haible  <bruno@clisp.org>
23701
23702         * modules/settime (Include): Require timespec.h.
23703         * modules/nanosleep (Include): Likewise.
23704
23705 2007-01-01  Bruno Haible  <bruno@clisp.org>
23706
23707         * gnulib-tool (func_emit_copyright_notice): Bump year.
23708         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
23709
23710 2007-01-01  Bruno Haible  <bruno@clisp.org>
23711
23712         Improve support for OpenBSD.
23713         * build-aux/config.rpath (libname_spec): Export.
23714         (library_names_spec): New variable. Export.
23715         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
23716         library_names_spec from the config.rpath output. Locate shared library
23717         through the name pattern in library_names_spec.
23718
23719 2007-01-01  Eric Blake  <ebb9@byu.net>
23720
23721         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
23722
23723 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
23724
23725         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
23726         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
23727         assume the C locale, and avoid an "eval" that could cause trouble.
23728         Problem with SORT reported by Bob Proulx.
23729
23730         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
23731         Define.  Trivial patch from Henning Nielsen Lund, originally
23732         sent to bug-grep@gnu.org today.
23733
23734 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
23735
23736         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
23737         struct stat.  Problem reported by Henning Nielsen Lund.
23738         * lib/acl.c: Include acl.h first, to check interface.  Don't
23739         bother to include sys/types.h and sys/stat.h again.
23740
23741 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23742
23743         Import the following change from libc; problem reported by
23744         Sven Verdoolaege.
23745
23746         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
23747
23748         [BZ #1373]
23749         * lib/argp.h: Remove __NTH for __argp_usage inline function.
23750
23751 2006-12-28  Jim Meyering  <jim@meyering.net>
23752
23753         * build-aux/announce-gen: Do not assume that the package
23754         builds any of tar.gz, tar.bz2, and .xdelta files.
23755         Suggestion from Simon Josefsson.
23756
23757 2006-12-28  Simon Josefsson  <simon@josefsson.org>
23758
23759         * modules/announce-gen: New file.
23760
23761 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
23762
23763         * lib/mbchar.h: Just include <wctype.h>; the wctype module
23764         handles its gotchas now.
23765         * lib/mbswidth.c: Likewise.
23766         * lib/wcwidth.h: Likewise.
23767         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
23768         and iswcntrl; the wctype module does this stuff now.
23769         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
23770         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
23771         * modules/mbchar (Depends-on): Add wctype.
23772         * modules/mbswidth (Depends-on): Likewise.
23773         * modules/wcwidth (Depends-on): Likewise.
23774
23775 2006-12-27  Eric Blake  <ebb9@byu.net>
23776
23777         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
23778         module uses more than what <wctype.h> is required to provide.
23779
23780 2006-12-26  Eric Blake  <ebb9@byu.net>
23781
23782         * gnulib-tool (sed_extract_prog): Avoid space-tab.
23783
23784 2006-12-26  Eric Blake  <ebb9@byu.net>
23785
23786         * modules/absolute-header: New module.
23787         * modules/fcntl (Depends-on): Depend on it.
23788         * modules/inttypes (Depends-on): Likewise.
23789         * modules/stdint (Depends-on): Likewise.
23790         * modules/sys_stat (Depends-on): Likewise.
23791         * modules/wctype (Depends-on): Likewise.
23792         * MODULES.html.sh (Support for building libraries and
23793         executables): Document it.
23794
23795 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
23796
23797         * gnulib-tool (SED): Remove, undoing previous change.
23798         The problem was that it broke coreutils on Solaris, because
23799         "sed --posix" leaked into a makefile.
23800         (sed): New alias, if 'alias' and GNU sed.
23801
23802 2006-12-24  Jim Meyering  <jim@meyering.net>
23803
23804         Work around an fchownat bug in glibc-2.4:
23805         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
23806         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
23807         in spite of the -P option.
23808         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
23809         New macros.
23810         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
23811         * modules/openat (Files): Add lib/fchownat.c.
23812         * lib/openat.c (fchownat): Don't define here.  Move to...
23813         * lib/fchownat.c: ...this new file.
23814
23815 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23816
23817         Fix bug reported by Bruno Haible in
23818         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
23819         where quotearg.c didn't compile on Mac OS X 10.2 because it
23820         lacks <wchar.h> and wint_t.
23821         * lib/wctype_.h (__wctype_wint_t): New type.
23822         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
23823         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
23824         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
23825         Arg is now of type __wctype_wint_t, not wint_t.
23826         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
23827         substitute HAVE_WINT_T.
23828         * modules/wctype (Files): Add m4/wint_t.m4.
23829         (wctype.h): Substitute HAVE_WINT_T.
23830
23831 2006-12-23  Bruno Haible  <bruno@clisp.org>
23832
23833         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
23834
23835 2006-12-23  Bruno Haible  <bruno@clisp.org>
23836
23837         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
23838         S_ISLNK.
23839         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
23840         mingw.
23841
23842 2006-12-22  Bruno Haible  <bruno@clisp.org>
23843
23844         * lib/copy-file.c: Include acl.h.
23845         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
23846         Close the file descriptors only after being done with copy_acl.
23847         * modules/copy-file (Depends-on): Add acl.
23848
23849 2006-12-22  Bruno Haible  <bruno@clisp.org>
23850
23851         * gnulib-tool (SED): New variable.
23852         Use $SED instead of sed everywhere.
23853
23854 2006-12-22  Bruno Haible  <bruno@clisp.org>
23855
23856         * modules/no-c++: New file.
23857         * m4/no-c++.m4: New file.
23858         * MODULES.html.sh (Support for building libraries and executables):
23859         Add no-c++.
23860
23861 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
23862
23863         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
23864         Include <limits.h>, and use its INT_MAX to rewrite the
23865         j loop so that it does not overflow 'int'.  Problem reported by
23866         Ralf Wildenhues in
23867         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
23868         Play it safe by shifting left by 1 rather than multiplying by 2,
23869         as GCC is less likely to optimize this away when the value
23870         is signed (when it assumes overflow leads to undefined behavior).
23871         Also, don't assume time_t uses two's complement.
23872
23873 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
23874
23875         * MODULES.html.sh: New module wctype.
23876         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
23877         * lib/fnmatch.c: Don't bother to include <wchar.h> before
23878         <wctype.h>, since the new wctype module should fix this.
23879         * lib/quotearg.c: Include <wctype.h> unconditionally, since
23880         the wctype module should arrange for it.
23881         * lib/regex_internal.h: Likewise.
23882         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
23883         since the wctype module should handle this now.
23884         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
23885         * modules/fnmatch (Depends-on): Add wctype.
23886         * modules/quotearg (Depends-on): Likewise.
23887         * modules/regex (Depends-on): Likewise.
23888
23889 2006-12-19  Bruno Haible  <bruno@clisp.org>
23890
23891         * lib/strdup.h [C++]: Wrap definitions in extern "C".
23892         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
23893
23894 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23895
23896         * modules/savewd (Depends-on): Fix dependency on fcntl.
23897
23898 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
23899
23900         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
23901         conforms to C99, rather than relying on the user's environment
23902         setting of STDINT_H.
23903
23904 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
23905         and Eric Blake  <ebb9@byu.net>
23906
23907         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
23908         This is more consistent with the other defines here.
23909         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
23910         Port to z/OS.  Problem reported by Paul Gilmartin.
23911         Change local vars to use gl_ prefix rather than ac_.
23912         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
23913         with other defines.
23914         * modules/double-slash-root: New module.
23915         * modules/dirname (Files): Remove m4/double-slash-root.m4.
23916         (Depends-on): Add double-slash-root.
23917         * MODULES.html.sh (File system functions): Mention new module.
23918
23919 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
23920
23921         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
23922         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
23923         This is for the benefit of gzip, which doesn't do i18n.
23924
23925 2006-12-12  Jim Meyering  <jim@meyering.net>
23926
23927         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
23928         Reported by Andreas Schwab <schwab@suse.de>.
23929
23930 2006-12-12  Bruno Haible  <bruno@clisp.org>
23931
23932         Merge these changes.
23933         2006-09-05  Bruno Haible  <bruno@clisp.org>
23934         * lib/iconvme.c (iconv_string): No need to save and restore errno when
23935         iconv_alloc succeeded.
23936         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
23937         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
23938         test for " && dest " at the end - dest is always != NULL there. Call
23939         iconv with 4xNULL arguments initially, to reset the state. Call iconv
23940         with 2xNULL arguments, also to flush the state storage. Handle the
23941         IRIX iconv behaviour. Realloc the final result, to throw away unused
23942         memory.
23943
23944 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
23945
23946         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
23947         and fchmodat unconditionally, since glibc 2.4 has them.
23948         Problem reported by Arkadiusz Miskiewicz.
23949
23950 2006-12-10  Bruno Haible  <bruno@clisp.org>
23951
23952         * gnulib-tool (func_import): Show the include files only for those
23953         modules that are copied and specified.
23954         Reported by Karl Berry.
23955
23956 2006-12-08  Jim Meyering  <jim@meyering.net>
23957
23958         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
23959         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
23960
23961         * build-aux/announce-gen: Add two new options, both optional:
23962         --bootstrap-tools=TOOL_LIST
23963               a comma-separated list of tools, e.g.,
23964               autoconf,automake,bison,gnulib
23965         --gnulib-snapshot-date=DATE
23966               if gnulib is in the bootstrap tool list,
23967               then report this as the snapshot date.
23968               If not specified, use the current date/time.
23969               If you specify a date here, be sure it's UTC.
23970
23971 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23972
23973         * tests/test-argp-2.sh: Fix test to match actual output.
23974         (func_compare): Fix sed script to be portable.
23975
23976 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
23977
23978         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
23979         workaround for this case.  It is not autoconfigured now; offhand
23980         it's hard to see how to autoconfigure it.
23981
23982 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
23983
23984         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
23985         a directory that is about to be chowned.  Such a directory's
23986         initial file permissions should permit the owner only and this
23987         should not be changed until after the chown, since the group and
23988         other bits would be incorrect if they granted permission before
23989         the chown.
23990
23991         Fix porting problem for iswctype reported by Georg Schwarz in:
23992         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
23993         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
23994         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
23995         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
23996         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
23997
23998 2006-12-03  Jim Meyering  <jim@meyering.net>
23999
24000         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
24001         p->fts_statp may not yet be defined.
24002         (fts_read): Instead, set it in the caller, once p->fts_statp is
24003         sure to be defined, and corresponds to a top-level directory.
24004         This bug made du -x fail.  Here's the coreutils test case:
24005         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
24006         Reported by Mike Frysinger.
24007
24008 2006-12-01  Jim Meyering  <jim@meyering.net>
24009
24010         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
24011         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
24012         Reported by Simon Josefsson.
24013
24014 2006-11-30  Jim Meyering  <jim@meyering.net>
24015
24016         * m4/warning.m4: Use the all-permissive copyright notice
24017         recommended by RMS (rather than LGPL).
24018         * m4/vararrays.m4: Likewise.
24019         * m4/flexmember.m4: Likewise.
24020
24021 2006-11-29  Bruno Haible  <bruno@clisp.org>
24022
24023         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
24024         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
24025         using +=.
24026         Reported by Simon Josefsson <simon@josefsson.org>.
24027
24028 2006-11-28  James Youngman <jay@gnu.org>
24029
24030         * README: Advise users that they might find the bug-gnulib@gnu.org
24031         and autotools-announce@gnu.org mailing lists useful.
24032
24033 2006-11-28  Bruno Haible  <bruno@clisp.org>
24034
24035         * m4/ptrdiff_max.m4: Remove file.
24036
24037 2006-11-21  Bruno Haible  <bruno@clisp.org>
24038
24039         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
24040         _AC_COMPUTE_INT.
24041         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24042         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
24043         _AC_COMPUTE_INT.
24044         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24045         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
24046         _AC_COMPUTE_INT.
24047         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24048
24049 2006-11-28  Jim Meyering  <jim@meyering.net>
24050
24051         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
24052         warning from "gcc -Wshadow" about shadowing the builtin.
24053
24054 2006-11-27  Bruno Haible  <bruno@clisp.org>
24055
24056         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
24057         _AC_COMPUTE_INT.
24058         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24059
24060 2006-11-27  Bruno Haible  <bruno@clisp.org>
24061             Paul Eggert  <eggert@cs.ucla.edu>
24062
24063         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
24064
24065 2006-11-26  Bruno Haible  <bruno@clisp.org>
24066
24067         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
24068         noinst_LTLIBRARIES.
24069
24070 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
24071             Bruno Haible  <bruno@clisp.org>
24072
24073         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
24074         if compiling with "gcc -ansi".
24075
24076 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
24077
24078         Fix some incompatibilities with gcc -ansi -pedantic.
24079         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
24080         if compiling pedantically with GCC, unless it's C99 or later.
24081         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
24082         it mishandles gcc -ansi -pedantic as well.
24083         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
24084         if gcc -pedantic.
24085         * lib/regexec.c (check_node_accept_bytes): Don't use auto
24086         initializers for struct if -pedantic, unless it's C99 or later.
24087
24088 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
24089
24090         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
24091         Don't close an fd more than once. Identical atimes indicate
24092         success, not failure.
24093
24094 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
24095
24096         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
24097
24098 2006-11-23  Jim Meyering  <jim@meyering.net>
24099
24100         * build-aux/announce-gen: New file.  From coreutils.
24101
24102 2006-11-22  Jim Meyering  <jim@meyering.net>
24103
24104         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
24105         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
24106         (fts_read): Use a temporary to narrow the overused st_size member
24107         before using it in a switch statement.  Reported by Matthew Woehlke.
24108
24109         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
24110         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
24111
24112 2006-11-20  Bruno Haible  <bruno@clisp.org>
24113
24114         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
24115         changequote instead of pairs of brackets.
24116         Reported by Andreas Schwab <schwab@suse.de>.
24117
24118 2006-11-21  Jim Meyering  <jim@meyering.net>
24119
24120         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
24121         so as to remain compatible with older compilers.
24122         Patch from Michael Deutschmann.
24123
24124 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24125
24126         * MODULES.html.sh (File system functions): Add openat.
24127
24128         * lib/openat.h (rpl_fstatat): New macro, if
24129         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
24130         (fstatat): Define to rpl_fstatat under the same conditions,
24131         unless COMPILING_FSTATAT.
24132         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
24133         seems to have the bug.
24134         * lib/fstatat.c: New file.
24135         * modules/openat (Files): Add it.
24136
24137 2006-11-20  Bruno Haible  <bruno@clisp.org>
24138
24139         * Makefile: New file.
24140
24141 2006-11-20  Jim Meyering  <jim@meyering.net>
24142
24143         The beginnings of syntax-related checks for gnulib.
24144         * lib/Makefile: New file.
24145         * lib/t-idcache: New script.  Ensure that the two halves of
24146         idcache.c stay in sync.
24147
24148         * lib/idcache.c: Adjust comments in user- and group- portions to
24149         be more accurate, and to be consistent with one another.
24150
24151 2006-11-20  Jim Meyering  <jim@meyering.net>
24152
24153         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
24154         continue using the flexible array member (thus, this module performs
24155         half as many malloc calls), with the addition that...
24156         (getgroup, getuser): Consistently record a non-match via an empty
24157         "name" string, and map an empty string match to a NULL return value.
24158         * modules/idcache (Depends-on): Re-add flexmember.
24159
24160         * lib/idcache.c (getuser): Remove all uses of the register keyword.
24161         (getuidbyname, getgroup, getgidbyname): Likewise.
24162
24163         Use cleaner syntax: NULL rather than 0.
24164         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
24165
24166 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24167
24168         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
24169         It mishandled the case where the group was missing.
24170         Problem reported by Greg Schafer.
24171         * modules/idcache: Likewise.
24172
24173 2006-11-18  Jim Meyering  <jim@meyering.net>
24174
24175         * check-module (%exempt_header): Add exception for some
24176         conditionally-included headers.
24177
24178         * modules/i-ring (Depends-on): Add verify.
24179         (License): Change to LGPL.
24180
24181 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24182
24183         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
24184         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
24185         and inttostr.h.  Use snprintf rather than uinttostr, so that
24186         LGPLed code doesn't depend on GPLed.
24187
24188 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
24189
24190         * modules/inline (License): Change from GPL to LGPL.
24191
24192 2006-11-17  Jim Meyering  <jim@meyering.net>
24193
24194         * modules/d-type (License): Switch to LGPL.
24195
24196 2006-11-15  Bruno Haible  <bruno@clisp.org>
24197
24198         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
24199
24200 2006-11-15  Eric Blake  <ebb9@byu.net>
24201
24202         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
24203         the module dependency.
24204
24205 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24206             Bruno Haible  <bruno@clisp.org>
24207
24208         * gnulib-tool (func_create_testdir): Add license consistency check.
24209
24210 2006-11-15  Eric Blake  <ebb9@byu.net>
24211
24212         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
24213         random "(cached)" in configure output.
24214
24215 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24216
24217         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
24218         test for conforming inttypes.h is both announced and cached.
24219
24220         * MODULES.html.sh (seen_modules, seen_files): New variables.
24221         (func_module): Rewrite to use a few less gnulib-tool and sed
24222         invocations.  Avoid a couple of quadratic algorithms for ...
24223         (missed_modules, missed_files): ... these, with ...
24224         (func_append, func_tmpdir): ... these new functions, from
24225         gnulib-tool.  Analogously, install traps for cleanup.
24226
24227         * tests/test-gc.c (main): Remove unused variables.
24228         * tests/test-read-file.c: Include stdlib.h, for 'free'.
24229
24230 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
24231
24232         * modules/inttostr (License): Change to LGPL.
24233
24234 2006-11-14  Eric Blake  <ebb9@byu.net>
24235
24236         * modules/tempname (License): Change to LGPL.
24237
24238 2006-11-14  Eric Blake  <ebb9@byu.net>
24239
24240         * doc/functions.texi (Function Portability): *printf functions on
24241         Cygwin now understand all POSIX size specifiers.
24242
24243 2006-11-14  Bruno Haible  <bruno@clisp.org>
24244
24245         * modules/c-ctype (License): Change to LGPL.
24246
24247 2006-11-12  Bruno Haible  <bruno@clisp.org>
24248
24249         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
24250         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
24251         for GNOME libraries, for which the include files are installed in
24252         subdirectories of $prefix/include.
24253
24254 2006-11-12  Bruno Haible  <bruno@clisp.org>
24255
24256         * m4/lib-link.m4: Require at least autoconf-2.54.
24257         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
24258         name to underscores for the --with option.
24259
24260 2006-11-13  Bruno Haible  <bruno@clisp.org>
24261
24262         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
24263         the tests directory.
24264         Reported by Ralf Wildenhues.
24265
24266 2006-11-13  Bruno Haible  <bruno@clisp.org>
24267
24268         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
24269         (func_emit_initmacro_end): Undo the override here.
24270         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
24271         Works around the famous automake error in coreutils.
24272
24273 2006-11-13  Eric Blake  <ebb9@byu.net>
24274
24275         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
24276         element, not its node.
24277
24278 2006-11-12  Bruno Haible  <bruno@clisp.org>
24279
24280         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
24281         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
24282
24283 2006-11-12  Bruno Haible  <bruno@clisp.org>
24284
24285         * gnulib-tool: New option --local-symlink.
24286         (func_usage): Document it.
24287         (lsymbolic): New variable.
24288         (func_import, func_create_testdir): If --symlink was not specified,
24289         test whether --local-symlink was specified and the file comes from
24290         the local_gnulib_dir.
24291
24292 2006-11-12  Bruno Haible  <bruno@clisp.org>
24293
24294         * gnulib-tool (func_ln): New function.
24295         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
24296
24297 2006-11-12  Bruno Haible  <bruno@clisp.org>
24298
24299         Finish support for source files in subdirectories.
24300         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
24301         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
24302         AUTOMAKE_OPTIONS.
24303         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
24304
24305 2006-11-12  Bruno Haible  <bruno@clisp.org>
24306
24307         * gnulib-tool (func_get_automake_snippet): Synthesize also an
24308         EXTRA_lib_SOURCES augmentation.
24309         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
24310
24311 2006-11-12  Jim Meyering  <jim@meyering.net>
24312
24313         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
24314         file descriptors.  This also averts a failure on systems with
24315         native openat support when a traversed directory lacks "x" access.
24316         * lib/fts_.h: Include "i-ring.h"
24317         (struct FTS) [fts_fd_ring]: New member.
24318         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
24319         (FCHDIR): Add parentheses.
24320         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
24321         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
24322         When descending, rather than simply closing the previous
24323         fts_cwd_fd value, push that file descriptor onto the ring.
24324         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
24325         (fts_open): Initialize the new fd_ring member.
24326         (fts_close): Clear the ring.
24327         (fts_safe_changedir): When possible, use our new fd_ring to skip
24328         the diropen and fstat and dev/ino comparison that would normally
24329         accompany a virtual `chdir ("..")'.
24330
24331         * modules/fts (Depends-on): Add i-ring.
24332         * modules/i-ring: New module.
24333         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
24334         * m4/i-ring.m4: New file.
24335
24336 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24337
24338         * gnulib-tool (func_create_testdir): Fix replacement of
24339         `build-aux' in configure.ac.  Run autotools in gltests
24340         subdirectory.
24341         (func_create_testdir, func_create_megatestdir, test): There is
24342         no need for '--force' in most autotool invocations in a new
24343         tree.  Actually fail the whole test if any of the tools, or the
24344         configure or make stages fail.
24345
24346         Sync from Automake.
24347         * build-aux/gnupload: Revert last change.  Add pointer to upload
24348         instructions of the GNU Maintenance Instructions.
24349         Suggestion by Karl Berry.
24350
24351 2006-11-10  Jim Meyering  <jim@meyering.net>
24352
24353         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
24354
24355 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24356
24357         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
24358         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
24359         (bind_textdomain_codeset) [! ENABLE_NLS]:
24360         Evaluate all the arguments.  That way, callers get compatible behavior
24361         if the arguments have side effects.  Also, it avoids some GCC
24362         diagnostics in some cases; Joel E. Denny reported problems when Bison
24363         was configured with --enable-gcc-warnigs.
24364
24365 2006-11-10  Jim Meyering  <jim@meyering.net>
24366
24367         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
24368         relevant options in CFLAGS (like -O, -fno-inline) are taken into
24369         account.
24370
24371 2006-11-10  Jim Meyering  <jim@meyering.net>
24372
24373         * modules/inline: New file/module.
24374         * modules/xalloc (Files): Remove m4/inline.m4.
24375         (Depends-on): Add inline, instead.
24376         * modules/oset: Likewise.
24377         * modules/list: Likewise.
24378
24379 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24380
24381         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
24382         Problem reported by Matthew Woehlke.
24383
24384 2006-11-09  Bruno Haible  <bruno@clisp.org>
24385
24386         * lib/tempname.c (gen_tempname): Remove variant that invokes
24387         __gen_tempname.
24388         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
24389         __gen_tempname.
24390
24391 2006-11-08  Bruno Haible  <bruno@clisp.org>
24392
24393         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
24394         to 'yes' instead of 'cross-compiling'.
24395
24396 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
24397
24398         * lib/quotearg.h (quotearg_free): New decl.
24399         * lib/quotearg.c (quotearg_free): New function.
24400         (slot0, nslots, slotvec0, slotvec):
24401         Now file-scope so that quotearg_free can get at them.
24402
24403 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24404
24405         Sync from Automake.
24406         * build-aux/gnupload: Add missing 'gnu' to example URL.
24407         Report by Karl Berry.
24408
24409 2006-11-08  Bruno Haible  <bruno@clisp.org>
24410
24411         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
24412         Suggested by Paul Eggert.
24413
24414 2006-11-08  Jim Meyering  <jim@meyering.net>
24415
24416         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
24417         It's already included if !_LIBC.
24418         (fts_safe_changedir): Add a comment.
24419
24420 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
24421
24422         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
24423         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
24424         Matthew Woehlke.
24425
24426         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
24427         definitions up, to avoid colliding with change below.
24428         (static_inline) [HAVE_INLINE]: New macro.
24429         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
24430         Provide extern decls when !HAVE_INLINE.  Do not define unless
24431         static_inline is defined, either by us or by xmalloc.c.  Use
24432         static_inline rather than static inline.
24433         (XCALLOC): Optimize sizeof(T) = 1 case.
24434         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
24435
24436 2006-11-07  Bruno Haible  <bruno@clisp.org>
24437
24438         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
24439         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
24440         AC_C_INLINE.
24441         * modules/xalloc (Files): Add m4/inline.m4.
24442
24443 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24444
24445         * README: Fix typo.
24446         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
24447         (Miscellanous Notes): ...from this.
24448
24449 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
24450
24451         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
24452         Mention that offsetof should be used instead of sizeof.
24453         From Bruno Haible.
24454
24455 2006-11-07  Bruno Haible  <bruno@clisp.org>
24456
24457         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
24458
24459 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
24460
24461         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
24462         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
24463         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
24464         (gl_tree_add_before, gl_tree_add_after):
24465         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
24466         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
24467         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
24468         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
24469         (gl_linked_add_after, gl_linked_add_at): Likewise.
24470         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
24471         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
24472         (gl_tree_add_before, gl_tree_add_after): Likewise.
24473         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
24474         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
24475         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
24476
24477 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24478
24479         * lib/gl_oset.h: Use C comment style, not C++ comment style.
24480
24481 2006-11-06  Bruno Haible  <bruno@clisp.org>
24482
24483         * m4/inline.m4: New file.
24484         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
24485         * modules/list (Files): Add m4/inline.m4.
24486         * modules/oset (Files): Likewise.
24487
24488 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
24489
24490         * lib/idcache.c: Include <stddef.h>, for offsetof.
24491         (struct userid.name): Change from char * to a flexible array member.
24492         All uses changed.
24493         * modules/idcache (Depends-on): Add flexmember.
24494
24495         * MODULES.html.sh (Core language properties): New module flexmember.
24496         * modules/flexmember, m4/flexmember.m4: New files.
24497
24498         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
24499         inline functions that are identical with the old xnmalloc_inline,
24500         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
24501         that we can avoid some unnecessary integer multiplications and
24502         divisions in the common case where the element size is known at
24503         compile time.
24504         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
24505         needed.
24506         (xnboundedmalloc): Remove.
24507         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
24508         arguments, for consistency with rest of this header.
24509         (xcharalloc): Rewrite using XNMALLOC.
24510         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
24511         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
24512         versions have been moved to lib/xalloc.h and renamed to be the
24513         non-*_inline versions.
24514         (xmalloc, xrealloc): Implement without reference to the xnmalloc
24515         and xnrealloc functions, since those functions are now inline and
24516         now call us.
24517         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
24518         renaming described above.
24519         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
24520         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
24521         captures the dependency in AC_C_INLINE.
24522
24523         New module canonicalize-lgpl, proposed by Charles Wilson in
24524         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
24525         with a few small changes afterwards.
24526         * MODULES.html.sh (File system functions): New module
24527         canonicalize-lgpl.
24528         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
24529         and canonicalize_file_name.
24530         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
24531         * modules/canonicalize-lgpl: New files.
24532
24533 2006-11-05  Bruno Haible  <bruno@clisp.org>
24534
24535         * gnulib-tool (func_import, func_create_testdir): Create directories
24536         also for files in subdirectories of lib/.
24537
24538 2006-11-05  Bruno Haible  <bruno@clisp.org>
24539
24540         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
24541         ANSI C compliant.
24542
24543 2006-11-03  Bruno Haible  <bruno@clisp.org>
24544
24545         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
24546         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
24547         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
24548         (xnboundedmalloc): New inline function.
24549         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
24550         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
24551         xmalloc.
24552         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
24553         xmalloc.
24554         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
24555         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
24556         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
24557         xmalloc.
24558         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
24559         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
24560         xmalloc.
24561         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
24562         gl_tree_add_after): Use XMALLOC instead of xmalloc.
24563         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
24564         xmalloc.
24565         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
24566         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
24567         gl_tree_add_after): Use XMALLOC instead of xmalloc.
24568         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
24569         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
24570         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
24571         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
24572
24573 2006-11-03  Bruno Haible  <bruno@clisp.org>
24574
24575         * lib/c-ctype.h [C++]: Define functions without name mangling.
24576         * lib/fwriteerror.h [C++]: Likewise.
24577         * lib/gcd.h [C++]: Likewise.
24578         * lib/linebreak.h [C++]: Likewise.
24579
24580 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
24581
24582         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
24583         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
24584         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
24585         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
24586         Check for functions and headers just once.
24587         Check for declaration of canonicalize_file_name.
24588         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
24589
24590 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
24591
24592         * gnulib-tool (func_import): Fix typo in actioncmd.
24593
24594 2006-11-02  Bruno Haible  <bruno@clisp.org>
24595
24596         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
24597         newline sequence in the Makefile.am snippet as a space, like "make"
24598         does.
24599         Reported by Roger Persson <perrog@gmail.com>.
24600
24601 2006-11-01  Bruno Haible  <bruno@clisp.org>
24602
24603         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
24604         already declared in <string.h>.
24605         * lib/strcase.h (strncasecmp): Don't declare it if yes.
24606
24607 2006-11-01  Bruno Haible  <bruno@clisp.org>
24608
24609         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
24610         * lib/strcase.h: Include <string.h>.
24611         (strcasecmp): Define to rpl_strcasecmp here.
24612
24613 2006-11-01  Bruno Haible  <bruno@clisp.org>
24614
24615         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
24616
24617 2006-11-01  Eric Blake  <ebb9@byu.net>
24618
24619         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
24620
24621         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
24622
24623 2006-10-29  Bruno Haible  <bruno@clisp.org>
24624
24625         Make it compile in C++ mode.
24626         * lib/full-write.c (full_rw): Add a cast.
24627
24628 2006-11-01  Bruno Haible  <bruno@clisp.org>
24629
24630         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
24631         be POSIX compliant.
24632         Reported by Roger Persson <perrog@gmail.com>.
24633
24634 2006-11-01  Eric Blake  <ebb9@byu.net>
24635
24636         * lib/getopt_.h: Fix comments.
24637
24638 2006-10-31  Eric Blake  <ebb9@byu.net>
24639
24640         * modules/tmpdir (Depends-on): Add sys_stat.
24641         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
24642         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
24643         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
24644         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
24645         tempname.
24646
24647 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
24648
24649         Avoid some C++ diagnostics reported by Bruno Haible.
24650         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
24651         xmalloc.
24652         (quotearg_alloc): Use xcharalloc rather than xmalloc.
24653         (struct slotvec): Move to top level.
24654         (quotearg_n_options): Rewrite to avoid xmalloc.
24655         * lib/xalloc.h (xcharalloc): New function.
24656         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
24657         [defined __cplusplus]: Add function template that provides result
24658         type propagation.  This part of the change is from Bruno Haible.
24659
24660 2006-10-29  Bruno Haible  <bruno@clisp.org>
24661
24662         Make it compile in C++ mode.
24663         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
24664         * lib/strnlen1.c (strnlen1): Cast memchr result.
24665         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
24666         * lib/clean-temp.c (string_equals, string_hash): Add casts.
24667         (create_temp_dir): Rename local variable 'template'.
24668         (compile_csharp_using_sscli): Add cast.
24669         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
24670         * lib/findprog.c (find_in_path): Likewise.
24671         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
24672         * lib/wait-process.c (register_slave_subprocess): Likewise.
24673
24674 2006-10-22  Bruno Haible  <bruno@clisp.org>
24675
24676         * modules/tsearch: New file.
24677         * lib/tsearch.h: New file.
24678         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
24679         * m4/tsearch.m4: New file.
24680         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
24681
24682 2006-10-29  Eric Blake  <ebb9@byu.net>
24683
24684         * lib/arcfour.c: Assume config.h.
24685         * lib/arctwo.c: Likewise.
24686         * lib/base64.c: Likewise.
24687         * lib/check-version.c: Likewise.
24688         * lib/crc.c: Likewise.
24689         * lib/des.c: Likewise.
24690         * lib/gc-gnulib.c: Likewise.
24691         * lib/gc-libgcrypt.c: Likewise.
24692         * lib/gc-pbkdf2-sha1.c: Likewise.
24693         * lib/getaddrinfo.c: Likewise.
24694         * lib/getdelim.c: Likewise.
24695         * lib/getline.c: Likewise.
24696         * lib/hmac-md5.c: Likewise.
24697         * lib/hmac-sha1.c: Likewise.
24698         * lib/iconvme.c: Likewise.
24699         * lib/md2.c: Likewise.
24700         * lib/md4.c: Likewise.
24701         * lib/memxor.c: Likewise.
24702         * lib/read-file.c: Likewise.
24703         * lib/readline.c: Likewise.
24704         * lib/rijndael-alg-fst.c: Likewise.
24705         * lib/rijndael-api-fst.c: Likewise.
24706         * lib/xgetdomainname.c: Likewise.
24707
24708 2006-10-28  Eric Blake  <ebb9@byu.net>
24709
24710         * lib/xstrndup.c: Assume config.h.
24711
24712 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
24713
24714         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
24715         stat-macros.h is now for our own macros, whereas stat_h is for
24716         macros in the <sys/stat.h> name space.
24717         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
24718         (STAT_MACROS_H): Remove.
24719         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
24720         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
24721         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
24722         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
24723         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
24724         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
24725         Move these macros to ...
24726         * lib/stat_.h: here.  Don't include stat-macros.h.
24727         * lib/canonicalize.c: Don't include stat-macros.h.
24728         * lib/chown.c: Likewise.
24729         * lib/euidaccess.c: Likewise.
24730         * lib/file-type.c: Likewise.
24731         * lib/filemode.c: Likewise.
24732         * lib/glob.c: Likewise.
24733         * lib/isapipe.c: Likewise.
24734         * lib/lchown.c: Likewise.
24735         * lib/lstat.c: Likewise.
24736         * lib/mkdir-p.c: Likewise.
24737         * lib/rmdir.c: Likewise.
24738         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
24739         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
24740         unless mkdir isn't declared, to speed up 'configure'.
24741         Always create sys/stat.h, since it's unlikely any real sys/stat.h
24742         would define all the S_* symbols.
24743         * modules/canonicalize (Depends-on):
24744         Depend on sys_stat, not stat-macros.
24745         * modules/chown: Likewise.
24746         * modules/euidaccess: Likewise.
24747         * modules/filemode: Likewise.
24748         * modules/file-type: Likewise.
24749         * modules/glob: Likewise.
24750         * modules/isapipe: Likewise.
24751         * modules/lchown: Likewise.
24752         * modules/lstat: Likewise.
24753         * modules/mkancesdirs: Likewise.
24754         * modules/rmdir: Likewise.
24755         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
24756         * modules/modechange: Likewise.
24757         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
24758         (configure.ac): Remove gl_STAT_MACROS.
24759         * modules/sys_stat (Depends-on): Remove stat-macros.
24760
24761 2006-10-27  Bruno Haible  <bruno@clisp.org>
24762
24763         * m4/signed.m4: Remove file.
24764         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
24765         invocation.
24766         * modules/vasnprintf (Files): Remove m4/signed.m4.
24767
24768 2006-10-27  Bruno Haible  <bruno@clisp.org>
24769
24770         Update to GNU gettext 0.16.
24771         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
24772         m4/inttypes-h.m4, m4/signed.m4.
24773         * m4/gettext.m4: Update to GNU gettext 0.16.
24774         * m4/intl.m4: New file, from GNU gettext.
24775         * m4/intldir.m4: New file, from GNU gettext.
24776         * config/srclist.txt: Update
24777
24778 2006-10-27  Eric Blake  <ebb9@byu.net>
24779
24780         * MODULES.html.sh: Document tempname.
24781         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
24782         dependencies.
24783         (Files): Move lib/tempname.c...
24784         * modules/tempname: ...to this new module.
24785         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
24786         (gl_PREREQ_TEMPNAME): Move...
24787         * m4/tempname.m4: ...to this new file.
24788         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
24789         * modules/sys_stat (Depends-on): Add stat-macros.
24790         * lib/stat_.h (includes): Pick up stat macros.
24791         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
24792         if stat macros are broken.
24793         * lib/tempname.c (includes): No need to include "stat-macros.h".
24794         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
24795         (direxists, __path_search) [!_LIBC]: Don't compile these in
24796         gnulib; the tmpdir module covers that.
24797         * lib/tempname.h: New file.
24798
24799 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
24800
24801         * COPYING: Explain how gnulib-tool converts licence headers.
24802         Almost all wording by Eric Blake.
24803
24804 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
24805
24806         * lib/mbchar.h (is_basic_table): Make read-only.
24807         * lib/mbchar.c (is_basic_table): Likewise.
24808         Reported by John Darrington.
24809
24810 2006-10-25  Bruno Haible  <bruno@clisp.org>
24811
24812         * lib/progname.h (set_program_name): Undefine before defining.
24813
24814 2006-10-25  Bruno Haible  <bruno@clisp.org>
24815
24816         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
24817         false for non-gcc C++ compilers.
24818         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
24819
24820 2006-10-24  Bruno Haible  <bruno@clisp.org>
24821
24822         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
24823         iconv implementations like Irix iconv.
24824
24825 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24826
24827         * modules/vararrays: New file.
24828         * m4/vararrays.m4: New file, taken from diffutils.
24829         * MODULES.html.sh: New module vararrays.
24830
24831 2006-10-24  Karl Berry  <karl@gnu.org>
24832
24833         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
24834         Don't call GNU Unix.
24835
24836 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24837
24838         * users.txt: Add Libtool.
24839
24840         Sync from Libtool:
24841
24842         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24843
24844         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
24845         to gnulib's policy of including config.h unconditionally.
24846
24847 2006-10-24  Bruno Haible  <bruno@clisp.org>
24848
24849         * modules/wcwidth (Files): Add m4/wint_t.m4.
24850         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
24851         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
24852
24853 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24854
24855         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
24856         to pacify GCC with some -W flags enabled.  Problem reported by
24857         Bruno Haible.
24858
24859 2006-10-24  Jim Meyering  <jim@meyering.net>
24860
24861         * MODULES.html.sh: Remove uinttostr.  It's not a module.
24862         Reported by Karl Berry.
24863
24864 2006-10-23  Bruno Haible  <bruno@clisp.org>
24865
24866         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
24867
24868 2006-10-24  Bruno Haible  <bruno@clisp.org>
24869
24870         * lib/gl_list.h: Use C comment style, not C++ comment style.
24871
24872 2006-10-23  Eric Blake  <ebb9@byu.net>
24873
24874         * lib/getaddrinfo.c (includes): Add missing include.
24875
24876 2006-10-23  Bruno Haible  <bruno@clisp.org>
24877             Paul Eggert  <eggert@cs.ucla.edu>
24878
24879         Ability to rename obstack_free.
24880         * lib/obstack.h (__obstack_free): New macro. Declare instead of
24881         obstack_free.
24882         (obstack_free): Invoke the __obstack_free macro.
24883         * lib/obstack.c (obstack_free): Use __obstack_free macro.
24884
24885 2006-10-23  Bruno Haible  <bruno@clisp.org>
24886             Paul Eggert  <eggert@cs.ucla.edu>
24887
24888         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
24889         __argc, __argv from the declaration. (They are defined as macros on
24890         mingw.)
24891
24892 2006-10-22  Bruno Haible  <bruno@clisp.org>
24893
24894         * doc/gnulib-intro.texi: New file.
24895         * doc/gnulib.texi: Include it.
24896
24897 2006-10-21  Bruno Haible  <bruno@clisp.org>
24898
24899         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
24900         "Introduction", "Miscellanous Notes", "Particular Modules".
24901
24902 2006-10-21  Bruno Haible  <bruno@clisp.org>
24903
24904         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24905         Change mostlyclean-local rule to avoid sh syntax error from bash
24906         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
24907
24908 2006-10-23  Jim Meyering  <jim@meyering.net>
24909
24910         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
24911         in place of snprintf.
24912
24913         * modules/inttostr (Files): Add lib/uinttostr.c.
24914         * lib/uinttostr.c (inttostr): New file/function.
24915         * lib/inttostr.h (uinttostr): Declare.
24916         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
24917         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
24918         Add uinttostr.
24919         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
24920
24921 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
24922
24923         * lib/canonicalize.c (ELOOP): Define if not already defined.
24924         Problem reported by Bruno Haible in
24925         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
24926
24927 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
24928
24929         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
24930         Problem reported by Perry Smith and Ville Laurikari.
24931
24932         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
24933         uses.
24934
24935 2006-10-19  Bruno Haible  <bruno@clisp.org>
24936
24937         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
24938         for mingw.
24939
24940 2006-10-19  Bruno Haible  <bruno@clisp.org>
24941
24942         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
24943         Needed for mingw.
24944
24945 2006-10-19  Bruno Haible  <bruno@clisp.org>
24946
24947         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
24948
24949 2006-10-19  Bruno Haible  <bruno@clisp.org>
24950
24951         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
24952         it.
24953
24954 2006-10-19  Bruno Haible  <bruno@clisp.org>
24955
24956         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
24957         invocation.
24958
24959 2006-10-19  Bruno Haible  <bruno@clisp.org>
24960
24961         * gnulib-tool (func_create_testdir): Don't include ftruncate and
24962         mountlist by default.
24963
24964 2006-10-16  Bruno Haible  <bruno@clisp.org>
24965
24966         * lib/c-strstr.c: Include c-strstr.h.
24967
24968 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
24969
24970         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
24971         in a slash.
24972
24973 2006-10-18  Bruno Haible  <bruno@clisp.org>
24974
24975         * lib/lock.h [C++]: Wrap definitions in extern "C".
24976
24977 2006-10-18  Bruno Haible  <bruno@clisp.org>
24978
24979         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
24980         gl_LIBOBJS list.
24981
24982 2006-10-18  Bruno Haible  <bruno@clisp.org>
24983
24984         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
24985
24986 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
24987
24988         * lib/xstrtol.h: Include gettext.h.
24989         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
24990         Problem reported by Eric Blake.
24991         * modules/xstrtol (Depends-on): Add gettext-h.
24992
24993 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
24994
24995         * lib/strftime.c (advance): New macro.
24996         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
24997         incomplete type, so you can't add 0 to it.  Problem and patch
24998         reported by Eelco Dolstra for dietlibc.
24999
25000 2006-10-18  Jim Meyering  <jim@meyering.net>
25001
25002         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
25003         type for a local, and rename it: s/up/user_proc/.
25004
25005 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
25006
25007         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
25008         READ_UTMP_USER_PROCESS.
25009         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
25010
25011 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
25012
25013         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
25014         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
25015
25016 2006-10-17  Eric Blake  <ebb9@byu.net>
25017
25018         * lib/sigprocmask.c (sigprocmask): Fix typo.
25019
25020         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
25021
25022         * modules/clean-temp (Makefile.am): Don't add to make output...
25023         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
25024         config.h.
25025
25026 2006-10-17  Bruno Haible  <bruno@clisp.org>
25027
25028         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
25029         differently if DEFAULT_TEXT_DOMAIN is set.
25030
25031 2006-10-16  Bruno Haible  <bruno@clisp.org>
25032
25033         * lib/clean-temp.c: Include fwriteerror.h.
25034
25035 2006-10-16  Bruno Haible  <bruno@clisp.org>
25036
25037         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
25038
25039 2006-10-16  Bruno Haible  <bruno@clisp.org>
25040
25041         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
25042         * lib/sigprocmask.h: Include <sys/types.h>.
25043         (sigset_t): Use the system's definition if present.
25044
25045 2006-10-17  Eric Blake  <ebb9@byu.net>
25046
25047         * lib/xvasprintf.c (includes): Assume config.h.
25048         * lib/xasprintf.c (includes): Likewise.
25049
25050 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
25051
25052         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
25053         at least as wide as intmax_t.
25054
25055 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
25056
25057         (Imported from Automake.)
25058         * build-aux/gnupload: Update to version 1.1 of directive file.
25059
25060 2006-10-16  Eric Blake  <ebb9@byu.net>
25061
25062         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
25063         match Automake 1.10a.
25064
25065 2006-10-14  Bruno Haible  <bruno@clisp.org>
25066
25067         * modules/sigprocmask: New file.
25068         * lib/sigprocmask.h: New file.
25069         * lib/sigprocmask.c: New file.
25070         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
25071         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
25072         request sigprocmask.o.
25073         (gl_PREREQ_SIGPROCMASK): New macro.
25074         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
25075         (Depends-on): Add sigprocmask.
25076         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
25077         gt_SIGNALBLOCKING. Test for 'raise' only once.
25078         * lib/fatal-signal.c: Include sigprocmask.h.
25079         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
25080         unblock_fatal_signals): Define always.
25081         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
25082         sigprocmask.
25083
25084 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25085
25086         Sync from Automake.
25087         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
25088         which incorrectly sets the mode of an existing destination
25089         directory.  In some cases the unpatched install-sh could do the
25090         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
25091         system.  We hope this is rare in practice, but it's clearly worth
25092         fixing.  Problem reported by Alex Unleashed in
25093         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
25094         Also, don't bother to check for -m bugs unless we're using -m;
25095         suggested by Stepan Kasal.
25096
25097 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25098
25099         Sync from Automake.
25100         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
25101         `-c' flag, so they appear at the same position as in %FASTDEP%
25102         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
25103         which ignores unknown options only after the first non-option.
25104         Bug report against M4 by Nelson H. F. Beebe.
25105
25106 2006-10-13  Jim Meyering  <jim@meyering.net>
25107
25108         Fix a bug in yesterday's change.
25109         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
25110         p->fts_statp->st_dev would be used uninitialized.
25111         Ensures that we always call fts_stat on the very first entry.
25112         Miklos Szeredi reported that find -xdev stopped working.
25113
25114 2006-10-12  Bruno Haible  <bruno@clisp.org>
25115
25116         * gnulib-tool (func_get_automake_snippet): Append an automatically
25117         computed EXTRA_DIST augmentation.
25118         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
25119         * modules/alloca-opt (Makefile.am): Likewise.
25120         * modules/allocsa (Makefile.am): Likewise.
25121         * modules/arcfour (Makefile.am): Likewise.
25122         * modules/arctwo (Makefile.am): Likewise.
25123         * modules/argmatch (Makefile.am): Likewise.
25124         * modules/argz (Makefile.am): Likewise.
25125         * modules/atexit (Makefile.am): Likewise.
25126         * modules/backupfile (Makefile.am): Likewise.
25127         * modules/byteswap (Makefile.am): Likewise.
25128         * modules/c-strtod (Makefile.am): Likewise.
25129         * modules/c-strtold (Makefile.am): Likewise.
25130         * modules/calloc (Makefile.am): Likewise.
25131         * modules/canon-host (Makefile.am): Likewise.
25132         * modules/canonicalize (Makefile.am): Likewise.
25133         * modules/chdir-long (Makefile.am): Likewise.
25134         * modules/chdir-safer (Makefile.am): Likewise.
25135         * modules/check-version (Makefile.am): Likewise.
25136         * modules/chown (Makefile.am): Likewise.
25137         * modules/cloexec (Makefile.am): Likewise.
25138         * modules/close-stream (Makefile.am): Likewise.
25139         * modules/closeout (Makefile.am): Likewise.
25140         * modules/crc (Makefile.am): Likewise.
25141         * modules/csharpexec (Makefile.am): Likewise.
25142         * modules/cycle-check (Makefile.am): Likewise.
25143         * modules/des (Makefile.am): Likewise.
25144         * modules/dev-ino (Makefile.am): Likewise.
25145         * modules/dirfd (Makefile.am): Likewise.
25146         * modules/dirname (Makefile.am): Likewise.
25147         * modules/dup2 (Makefile.am): Likewise.
25148         * modules/eealloc (Makefile.am): Likewise.
25149         * modules/error (Makefile.am): Likewise.
25150         * modules/euidaccess (Makefile.am): Likewise.
25151         * modules/exclude (Makefile.am): Likewise.
25152         * modules/exitfail (Makefile.am): Likewise.
25153         * modules/fcntl-safer (Makefile.am): Likewise.
25154         * modules/fcntl (Makefile.am): Likewise.
25155         * modules/file-type (Makefile.am): Likewise.
25156         * modules/fileblocks (Makefile.am): Likewise.
25157         * modules/filemode (Makefile.am): Likewise.
25158         * modules/filenamecat (Makefile.am): Likewise.
25159         * modules/fnmatch (Makefile.am): Likewise.
25160         * modules/fopen-safer (Makefile.am): Likewise.
25161         * modules/fpending (Makefile.am): Likewise.
25162         * modules/fprintftime (Makefile.am): Likewise.
25163         * modules/free (Makefile.am): Likewise.
25164         * modules/fsusage (Makefile.am): Likewise.
25165         * modules/ftruncate (Makefile.am): Likewise.
25166         * modules/fts (Makefile.am): Likewise.
25167         * modules/gc-arcfour (Makefile.am): Likewise.
25168         * modules/gc-des (Makefile.am): Likewise.
25169         * modules/gc-hmac-md5 (Makefile.am): Likewise.
25170         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
25171         * modules/gc-md4 (Makefile.am): Likewise.
25172         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
25173         * modules/gc-sha1 (Makefile.am): Likewise.
25174         * modules/gc (Makefile.am): Likewise.
25175         * modules/getaddrinfo (Makefile.am): Likewise.
25176         * modules/getcwd (Makefile.am): Likewise.
25177         * modules/getdelim (Makefile.am): Likewise.
25178         * modules/getdomainname (Makefile.am): Likewise.
25179         * modules/getgroups (Makefile.am): Likewise.
25180         * modules/gethostname (Makefile.am): Likewise.
25181         * modules/gethrxtime (Makefile.am): Likewise.
25182         * modules/getline (Makefile.am): Likewise.
25183         * modules/getloadavg (Makefile.am): Likewise.
25184         * modules/getlogin_r (Makefile.am): Likewise.
25185         * modules/getndelim2 (Makefile.am): Likewise.
25186         * modules/getopt (Makefile.am): Likewise.
25187         * modules/getpagesize (Makefile.am): Likewise.
25188         * modules/getpass-gnu (Makefile.am): Likewise.
25189         * modules/getpass (Makefile.am): Likewise.
25190         * modules/getsubopt (Makefile.am): Likewise.
25191         * modules/gettime (Makefile.am): Likewise.
25192         * modules/gettimeofday (Makefile.am): Likewise.
25193         * modules/getugroups (Makefile.am): Likewise.
25194         * modules/getusershell (Makefile.am): Likewise.
25195         * modules/glob (Makefile.am): Likewise.
25196         * modules/group-member (Makefile.am): Likewise.
25197         * modules/hard-locale (Makefile.am): Likewise.
25198         * modules/hash (Makefile.am): Likewise.
25199         * modules/hmac-md5 (Makefile.am): Likewise.
25200         * modules/hmac-sha1 (Makefile.am): Likewise.
25201         * modules/human (Makefile.am): Likewise.
25202         * modules/idcache (Makefile.am): Likewise.
25203         * modules/imaxabs (Makefile.am): Likewise.
25204         * modules/imaxdiv (Makefile.am): Likewise.
25205         * modules/inet_ntop (Makefile.am): Likewise.
25206         * modules/inet_pton (Makefile.am): Likewise.
25207         * modules/intprops (Makefile.am): Likewise.
25208         * modules/inttostr (Makefile.am): Likewise.
25209         * modules/inttypes (Makefile.am): Likewise.
25210         * modules/isapipe (Makefile.am): Likewise.
25211         * modules/javaversion (Makefile.am): Likewise.
25212         * modules/lchmod (Makefile.am): Likewise.
25213         * modules/lchown (Makefile.am): Likewise.
25214         * modules/localcharset (Makefile.am): Likewise.
25215         * modules/long-options (Makefile.am): Likewise.
25216         * modules/lstat (Makefile.am): Likewise.
25217         * modules/malloc (Makefile.am): Likewise.
25218         * modules/mathl (Makefile.am): Likewise.
25219         * modules/mbchar (Makefile.am): Likewise.
25220         * modules/md2 (Makefile.am): Likewise.
25221         * modules/md4 (Makefile.am): Likewise.
25222         * modules/md5 (Makefile.am): Likewise.
25223         * modules/memcasecmp (Makefile.am): Likewise.
25224         * modules/memchr (Makefile.am): Likewise.
25225         * modules/memcmp (Makefile.am): Likewise.
25226         * modules/memcoll (Makefile.am): Likewise.
25227         * modules/memcpy (Makefile.am): Likewise.
25228         * modules/memmem (Makefile.am): Likewise.
25229         * modules/memmove (Makefile.am): Likewise.
25230         * modules/mempcpy (Makefile.am): Likewise.
25231         * modules/memrchr (Makefile.am): Likewise.
25232         * modules/memset (Makefile.am): Likewise.
25233         * modules/memxor (Makefile.am): Likewise.
25234         * modules/mkancesdirs (Makefile.am): Likewise.
25235         * modules/mkdir-p (Makefile.am): Likewise.
25236         * modules/mkdir (Makefile.am): Likewise.
25237         * modules/mkdtemp (Makefile.am): Likewise.
25238         * modules/mkstemp (Makefile.am): Likewise.
25239         * modules/mktime (Makefile.am): Likewise.
25240         * modules/modechange (Makefile.am): Likewise.
25241         * modules/mountlist (Makefile.am): Likewise.
25242         * modules/nanosleep (Makefile.am): Likewise.
25243         * modules/obstack (Makefile.am): Likewise.
25244         * modules/openat (Makefile.am): Likewise.
25245         * modules/pagealign_alloc (Makefile.am): Likewise.
25246         * modules/pathmax (Makefile.am): Likewise.
25247         * modules/physmem (Makefile.am): Likewise.
25248         * modules/poll (Makefile.am): Likewise.
25249         * modules/posixtm (Makefile.am): Likewise.
25250         * modules/posixver (Makefile.am): Likewise.
25251         * modules/putenv (Makefile.am): Likewise.
25252         * modules/quote (Makefile.am): Likewise.
25253         * modules/quotearg (Makefile.am): Likewise.
25254         * modules/raise (Makefile.am): Likewise.
25255         * modules/read-file (Makefile.am): Likewise.
25256         * modules/readline (Makefile.am): Likewise.
25257         * modules/readlink (Makefile.am): Likewise.
25258         * modules/readtokens (Makefile.am): Likewise.
25259         * modules/readutmp (Makefile.am): Likewise.
25260         * modules/realloc (Makefile.am): Likewise.
25261         * modules/regex (Makefile.am): Likewise.
25262         * modules/rename-dest-slash (Makefile.am): Likewise.
25263         * modules/rename (Makefile.am): Likewise.
25264         * modules/rijndael (Makefile.am): Likewise.
25265         * modules/rmdir (Makefile.am): Likewise.
25266         * modules/rpmatch (Makefile.am): Likewise.
25267         * modules/safe-read (Makefile.am): Likewise.
25268         * modules/safe-write (Makefile.am): Likewise.
25269         * modules/same-inode (Makefile.am): Likewise.
25270         * modules/same (Makefile.am): Likewise.
25271         * modules/save-cwd (Makefile.am): Likewise.
25272         * modules/savedir (Makefile.am): Likewise.
25273         * modules/setenv (Makefile.am): Likewise.
25274         * modules/settime (Makefile.am): Likewise.
25275         * modules/sha1 (Makefile.am): Likewise.
25276         * modules/sig2str (Makefile.am): Likewise.
25277         * modules/snprintf (Makefile.am): Likewise.
25278         * modules/stat-macros (Makefile.am): Likewise.
25279         * modules/stat-time (Makefile.am): Likewise.
25280         * modules/stdbool (Makefile.am): Likewise.
25281         * modules/stdint (Makefile.am): Likewise.
25282         * modules/stdlib-safer (Makefile.am): Likewise.
25283         * modules/stpcpy (Makefile.am): Likewise.
25284         * modules/stpncpy (Makefile.am): Likewise.
25285         * modules/strcase (Makefile.am): Likewise.
25286         * modules/strcasestr (Makefile.am): Likewise.
25287         * modules/strchrnul (Makefile.am): Likewise.
25288         * modules/strcspn (Makefile.am): Likewise.
25289         * modules/strdup (Makefile.am): Likewise.
25290         * modules/strerror (Makefile.am): Likewise.
25291         * modules/strftime (Makefile.am): Likewise.
25292         * modules/strndup (Makefile.am): Likewise.
25293         * modules/strnlen (Makefile.am): Likewise.
25294         * modules/strpbrk (Makefile.am): Likewise.
25295         * modules/strsep (Makefile.am): Likewise.
25296         * modules/strstr (Makefile.am): Likewise.
25297         * modules/strtod (Makefile.am): Likewise.
25298         * modules/strtoimax (Makefile.am): Likewise.
25299         * modules/strtok_r (Makefile.am): Likewise.
25300         * modules/strtol (Makefile.am): Likewise.
25301         * modules/strtoll (Makefile.am): Likewise.
25302         * modules/strtoul (Makefile.am): Likewise.
25303         * modules/strtoull (Makefile.am): Likewise.
25304         * modules/strtoumax (Makefile.am): Likewise.
25305         * modules/strverscmp (Makefile.am): Likewise.
25306         * modules/sys_socket (Makefile.am): Likewise.
25307         * modules/sys_stat (Makefile.am): Likewise.
25308         * modules/sysexits (Makefile.am): Likewise.
25309         * modules/time_r (Makefile.am): Likewise.
25310         * modules/timegm (Makefile.am): Likewise.
25311         * modules/timespec (Makefile.am): Likewise.
25312         * modules/tmpfile-safer (Makefile.am): Likewise.
25313         * modules/trim (Makefile.am): Likewise.
25314         * modules/unistd-safer (Makefile.am): Likewise.
25315         * modules/unlinkdir (Makefile.am): Likewise.
25316         * modules/unlocked-io (Makefile.am): Likewise.
25317         * modules/userspec (Makefile.am): Likewise.
25318         * modules/utime (Makefile.am): Likewise.
25319         * modules/utimecmp (Makefile.am): Likewise.
25320         * modules/utimens (Makefile.am): Likewise.
25321         * modules/vasnprintf (Makefile.am): Likewise.
25322         * modules/vasprintf (Makefile.am): Likewise.
25323         * modules/vsnprintf (Makefile.am): Likewise.
25324         * modules/xalloc (Makefile.am): Likewise.
25325         * modules/xgetcwd (Makefile.am): Likewise.
25326         * modules/xnanosleep (Makefile.am): Likewise.
25327         * modules/xreadlink (Makefile.am): Likewise.
25328         * modules/xstrtod (Makefile.am): Likewise.
25329         * modules/xstrtol (Makefile.am): Likewise.
25330         * modules/xstrtold (Makefile.am): Likewise.
25331         * modules/yesno (Makefile.am): Likewise.
25332         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
25333
25334 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
25335
25336         * modules/error (Makefile.am): Distribute files through
25337         EXTRA_DIST, not lib_SOURCES.
25338
25339 2006-10-12  Eric Blake  <ebb9@byu.net>
25340
25341         * modules/error (Makefile.am): Distribute files in /lib.
25342         * modules/obstack (Makefile.am): Likewise.
25343
25344 2006-10-12  Bruno Haible  <bruno@clisp.org>
25345
25346         * modules/acl (Makefile.am): Distribute all files in lib/ through
25347         EXTRA_DIST.
25348         * modules/arcfour (Makefile.am): Likewise.
25349         * modules/arctwo (Makefile.am): Likewise.
25350         * modules/argmatch (Makefile.am): Likewise.
25351         * modules/argz (Makefile.am): Likewise.
25352         * modules/atexit (Makefile.am): Likewise.
25353         * modules/backupfile (Makefile.am): Likewise.
25354         * modules/c-strtod (Makefile.am): Likewise.
25355         * modules/c-strtold (Makefile.am): Likewise.
25356         * modules/calloc (Makefile.am): Likewise.
25357         * modules/canon-host (Makefile.am): Likewise.
25358         * modules/canonicalize (Makefile.am): Likewise.
25359         * modules/chdir-long (Makefile.am): Likewise.
25360         * modules/chdir-safer (Makefile.am): Likewise.
25361         * modules/check-version (Makefile.am): Likewise.
25362         * modules/chown (Makefile.am): Likewise.
25363         * modules/cloexec (Makefile.am): Likewise.
25364         * modules/close-stream (Makefile.am): Likewise.
25365         * modules/closeout (Makefile.am): Likewise.
25366         * modules/crc (Makefile.am): Likewise.
25367         * modules/cycle-check (Makefile.am): Likewise.
25368         * modules/des (Makefile.am): Likewise.
25369         * modules/dirfd (Makefile.am): Likewise.
25370         * modules/dirname (Makefile.am): Likewise.
25371         * modules/dup2 (Makefile.am): Likewise.
25372         * modules/euidaccess (Makefile.am): Likewise.
25373         * modules/exclude (Makefile.am): Likewise.
25374         * modules/exitfail (Makefile.am): Likewise.
25375         * modules/fcntl-safer (Makefile.am): Likewise.
25376         * modules/file-type (Makefile.am): Likewise.
25377         * modules/fileblocks (Makefile.am): Likewise.
25378         * modules/filemode (Makefile.am): Likewise.
25379         * modules/filenamecat (Makefile.am): Likewise.
25380         * modules/fnmatch (Makefile.am): Likewise.
25381         * modules/fopen-safer (Makefile.am): Likewise.
25382         * modules/fpending (Makefile.am): Likewise.
25383         * modules/fprintftime (Makefile.am): Likewise.
25384         * modules/free (Makefile.am): Likewise.
25385         * modules/fsusage (Makefile.am): Likewise.
25386         * modules/ftruncate (Makefile.am): Likewise.
25387         * modules/fts (Makefile.am): Likewise.
25388         * modules/gc (Makefile.am): Likewise.
25389         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
25390         * modules/getaddrinfo (Makefile.am): Likewise.
25391         * modules/getcwd (Makefile.am): Likewise.
25392         * modules/getdelim (Makefile.am): Likewise.
25393         * modules/getdomainname (Makefile.am): Likewise.
25394         * modules/getgroups (Makefile.am): Likewise.
25395         * modules/gethostname (Makefile.am): Likewise.
25396         * modules/gethrxtime (Makefile.am): Likewise.
25397         * modules/getline (Makefile.am): Likewise.
25398         * modules/getloadavg (Makefile.am): Likewise.
25399         * modules/getlogin_r (Makefile.am): Likewise.
25400         * modules/getopt (Makefile.am): Likewise.
25401         * modules/getpass (Makefile.am): Likewise.
25402         * modules/getpass-gnu (Makefile.am): Likewise.
25403         * modules/getsubopt (Makefile.am): Likewise.
25404         * modules/gettime (Makefile.am): Likewise.
25405         * modules/gettimeofday (Makefile.am): Likewise.
25406         * modules/getugroups (Makefile.am): Likewise.
25407         * modules/getusershell (Makefile.am): Likewise.
25408         * modules/glob (Makefile.am): Likewise.
25409         * modules/group-member (Makefile.am): Likewise.
25410         * modules/hard-locale (Makefile.am): Likewise.
25411         * modules/hash (Makefile.am): Likewise.
25412         * modules/hmac-md5 (Makefile.am): Likewise.
25413         * modules/hmac-sha1 (Makefile.am): Likewise.
25414         * modules/human (Makefile.am): Likewise.
25415         * modules/idcache (Makefile.am): Likewise.
25416         * modules/imaxabs (Makefile.am): Likewise.
25417         * modules/imaxdiv (Makefile.am): Likewise.
25418         * modules/inet_ntop (Makefile.am): Likewise.
25419         * modules/inet_pton (Makefile.am): Likewise.
25420         * modules/inttostr (Makefile.am): Likewise.
25421         * modules/isapipe (Makefile.am): Likewise.
25422         * modules/lchown (Makefile.am): Likewise.
25423         * modules/long-options (Makefile.am): Likewise.
25424         * modules/lstat (Makefile.am): Likewise.
25425         * modules/malloc (Makefile.am): Likewise.
25426         * modules/mathl (Makefile.am): Likewise.
25427         * modules/mbchar (Makefile.am): Likewise.
25428         * modules/md2 (Makefile.am): Likewise.
25429         * modules/md4 (Makefile.am): Likewise.
25430         * modules/md5 (Makefile.am): Likewise.
25431         * modules/memcasecmp (Makefile.am): Likewise.
25432         * modules/memchr (Makefile.am): Likewise.
25433         * modules/memcmp (Makefile.am): Likewise.
25434         * modules/memcoll (Makefile.am): Likewise.
25435         * modules/memcpy (Makefile.am): Likewise.
25436         * modules/memmem (Makefile.am): Likewise.
25437         * modules/memmove (Makefile.am): Likewise.
25438         * modules/mempcpy (Makefile.am): Likewise.
25439         * modules/memrchr (Makefile.am): Likewise.
25440         * modules/memset (Makefile.am): Likewise.
25441         * modules/memxor (Makefile.am): Likewise.
25442         * modules/mkancesdirs (Makefile.am): Likewise.
25443         * modules/mkdir (Makefile.am): Likewise.
25444         * modules/mkdir-p (Makefile.am): Likewise.
25445         * modules/mkdtemp (Makefile.am): Likewise.
25446         * modules/mkstemp (Makefile.am): Likewise.
25447         * modules/mktime (Makefile.am): Likewise.
25448         * modules/modechange (Makefile.am): Likewise.
25449         * modules/mountlist (Makefile.am): Likewise.
25450         * modules/nanosleep (Makefile.am): Likewise.
25451         * modules/openat (Makefile.am): Likewise.
25452         * modules/pagealign_alloc (Makefile.am): Likewise.
25453         * modules/physmem (Makefile.am): Likewise.
25454         * modules/poll (Makefile.am): Likewise.
25455         * modules/posixtm (Makefile.am): Likewise.
25456         * modules/posixver (Makefile.am): Likewise.
25457         * modules/putenv (Makefile.am): Likewise.
25458         * modules/quote (Makefile.am): Likewise.
25459         * modules/quotearg (Makefile.am): Likewise.
25460         * modules/raise (Makefile.am): Likewise.
25461         * modules/read-file (Makefile.am): Likewise.
25462         * modules/readline (Makefile.am): Likewise.
25463         * modules/readlink (Makefile.am): Likewise.
25464         * modules/readtokens (Makefile.am): Likewise.
25465         * modules/readutmp (Makefile.am): Likewise.
25466         * modules/realloc (Makefile.am): Likewise.
25467         * modules/regex (Makefile.am): Likewise.
25468         * modules/rename (Makefile.am): Likewise.
25469         * modules/rename-dest-slash (Makefile.am): Likewise.
25470         * modules/rijndael (Makefile.am): Likewise.
25471         * modules/rmdir (Makefile.am): Likewise.
25472         * modules/rpmatch (Makefile.am): Likewise.
25473         * modules/safe-read (Makefile.am): Likewise.
25474         * modules/safe-write (Makefile.am): Likewise.
25475         * modules/same (Makefile.am): Likewise.
25476         * modules/save-cwd (Makefile.am): Likewise.
25477         * modules/savedir (Makefile.am): Likewise.
25478         * modules/setenv (Makefile.am): Likewise.
25479         * modules/settime (Makefile.am): Likewise.
25480         * modules/sha1 (Makefile.am): Likewise.
25481         * modules/sig2str (Makefile.am): Likewise.
25482         * modules/snprintf (Makefile.am): Likewise.
25483         * modules/stdlib-safer (Makefile.am): Likewise.
25484         * modules/stpcpy (Makefile.am): Likewise.
25485         * modules/stpncpy (Makefile.am): Likewise.
25486         * modules/strcase (Makefile.am): Likewise.
25487         * modules/strcasestr (Makefile.am): Likewise.
25488         * modules/strchrnul (Makefile.am): Likewise.
25489         * modules/strcspn (Makefile.am): Likewise.
25490         * modules/strdup (Makefile.am): Likewise.
25491         * modules/strerror (Makefile.am): Likewise.
25492         * modules/strftime (Makefile.am): Likewise.
25493         * modules/strndup (Makefile.am): Likewise.
25494         * modules/strnlen (Makefile.am): Likewise.
25495         * modules/strpbrk (Makefile.am): Likewise.
25496         * modules/strsep (Makefile.am): Likewise.
25497         * modules/strstr (Makefile.am): Likewise.
25498         * modules/strtod (Makefile.am): Likewise.
25499         * modules/strtoimax (Makefile.am): Likewise.
25500         * modules/strtok_r (Makefile.am): Likewise.
25501         * modules/strtol (Makefile.am): Likewise.
25502         * modules/strtoll (Makefile.am): Likewise.
25503         * modules/strtoul (Makefile.am): Likewise.
25504         * modules/strtoull (Makefile.am): Likewise.
25505         * modules/strtoumax (Makefile.am): Likewise.
25506         * modules/strverscmp (Makefile.am): Likewise.
25507         * modules/time_r (Makefile.am): Likewise.
25508         * modules/timegm (Makefile.am): Likewise.
25509         * modules/tmpfile-safer (Makefile.am): Likewise.
25510         * modules/unistd-safer (Makefile.am): Likewise.
25511         * modules/unlinkdir (Makefile.am): Likewise.
25512         * modules/userspec (Makefile.am): Likewise.
25513         * modules/utime (Makefile.am): Likewise.
25514         * modules/utimecmp (Makefile.am): Likewise.
25515         * modules/utimens (Makefile.am): Likewise.
25516         * modules/vasnprintf (Makefile.am): Likewise.
25517         * modules/vasprintf (Makefile.am): Likewise.
25518         * modules/vsnprintf (Makefile.am): Likewise.
25519         * modules/xalloc (Makefile.am): Likewise.
25520         * modules/xgetcwd (Makefile.am): Likewise.
25521         * modules/xnanosleep (Makefile.am): Likewise.
25522         * modules/xreadlink (Makefile.am): Likewise.
25523         * modules/xstrtod (Makefile.am): Likewise.
25524         * modules/xstrtol (Makefile.am): Likewise.
25525         * modules/xstrtold (Makefile.am): Likewise.
25526         * modules/yesno (Makefile.am): Likewise.
25527
25528 2006-10-12  Jim Meyering  <jim@meyering.net>
25529
25530         * m4/getloadavg.m4: Revert the change below.
25531
25532         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
25533         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
25534         fail with a symlink, which is what coreutils' ./bootstrap now
25535         creates by default.
25536
25537 2006-10-12  Bruno Haible  <bruno@clisp.org>
25538
25539         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
25540         mingw.
25541         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
25542         MSVC and mingw explicitly.
25543
25544 2006-10-11  Simon Josefsson  <jas@extundo.com>
25545             Bruno Haible  <bruno@clisp.org>
25546
25547         Add support for multiple gnulib-tool invocations in the scope of a
25548         single configure.ac file.
25549         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
25550         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
25551         with the same contents as the _LIBADD variable.
25552         (func_emit_initmacro_start, func_emit_initmacro_end,
25553         func_emit_initmacro_done): New functions.
25554         (func_import, func_create_testdir): Invoke them. Allow the identifiers
25555         gl_LIBOBJS and gl_LTLIBOBJS.
25556
25557 2006-10-11  Bruno Haible  <bruno@clisp.org>
25558
25559         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
25560         (func_create_testdir): Don't create po/Makefile.am, don't invoke
25561         autoreconf. Instead, invoke autopoint explicitly but move back the
25562         *.m4 files from gnulib.
25563
25564 2006-10-11  Bruno Haible  <bruno@clisp.org>
25565
25566         * gnulib-tool (func_usage): Make module names after --create-testdir
25567         optional.
25568         (func_create_testdir): If no module was specified, use nearly all
25569         modules.
25570
25571 2006-10-12  Jim Meyering  <jim@meyering.net>
25572
25573         Big performance improvement for fts-based tools that use FTS_NOSTAT.
25574         Avoid spurious inode-mismatch problems on non-POSIX file systems.
25575         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
25576         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
25577         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
25578         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
25579         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
25580         (fts_set_stat_required): New function.
25581         (fts_open): Defer the calls to fts_stat, if possible or requested.
25582         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
25583         into fts_stat itself.
25584         (fts_read): Perform any required (deferred) fts_stat call.
25585         (fts_build): Likewise, for the directory we're about to open and read.
25586         In the readdir loop, carefully decide whether each entry will require
25587         an eventual call to fts_stat, using dirent.d_type info if available.
25588         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
25589         a command line argument into this function.  Update all callers.
25590         Map a return value of FTS_DOT to FTS_D for a command line argument.
25591         * modules/fts (Depends-on): Add d-type.  Alphabetize.
25592         Thanks to Miklos Szeredi for his tenacity and for the initial
25593         bug report about "find" failing on a FUSE-based file system.
25594
25595         * lib/fts.c (fts_open): Use consistent indentation.
25596
25597 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
25598
25599         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
25600         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
25601         reported by Jim Meyering.  All uses of cache variables renamed
25602         to match Autoconf's.
25603         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
25604         the other one.
25605
25606         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
25607         Fix misspelling in diagnostic.
25608
25609 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
25610
25611         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
25612         defined.  Problem reported by Matthew Woehlke.
25613
25614         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
25615         Add support for Tandem NonStop R series.
25616         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
25617         Use new macro.
25618
25619         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
25620         (has_trailing_slash): Omit size arg; all callers changed.
25621         Omit 'inline', since it doesn't help performance and we'd
25622         need to configure it.
25623         Don't count //, ///, etc. as having a trailing slash.
25624         As a side effect, this removes a C99ism reported by Matthew Woehlke.
25625         (rpl_rename_dest_slash): On failure, use rename's errno rather
25626         than (in some cases) an incorrect or junk errno.
25627         Simplify code by removing need to compute length; this does
25628         cause it to make two passes instead of one over the file name,
25629         but it's worth it.
25630
25631         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
25632         change, since Autoconf's version may no longer be appropriate now
25633         that we are using CVS Autoconf's version.  Add support for Tandem.
25634
25635 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
25636             Bruno Haible  <bruno@clisp.org>
25637
25638         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
25639         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
25640         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
25641         gl_AC_TYPE_LONG_LONG.
25642
25643         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
25644         instead of HAVE_LONG_LONG.
25645         * lib/printf-args.c (printf_fetchargs): Likewise.
25646         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
25647         * lib/vasnprintf.c (VASNPRINTF): Likewise.
25648         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
25649         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
25650         gl_AC_TYPE_LONG_LONG.
25651
25652 2006-10-11  Bruno Haible  <bruno@clisp.org>
25653
25654         * m4/longlong.m4: Add comments.
25655         * m4/ulonglong.m4: Likewise.
25656
25657 2006-10-10  Bruno Haible  <bruno@clisp.org>
25658
25659         Make it possible to #define stpcpy, strdup to aliases.
25660         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
25661         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
25662
25663 2006-10-10  Bruno Haible  <bruno@clisp.org>
25664
25665         Make it possible to #define gcd to an alias.
25666         * lib/gcd.c: Include config.h.
25667
25668 2006-10-10  Bruno Haible  <bruno@clisp.org>
25669
25670         Make it possible to #define c_isascii to an alias.
25671         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
25672         defined. Undefine the macros before defining them, to avoid gcc
25673         warnings.
25674         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
25675         define NO_C_CTYPE_MACROS early.
25676
25677 2006-10-10  Bruno Haible  <bruno@clisp.org>
25678
25679         Make it possible to #define set_program_name to an alias.
25680         * lib/progname.c: Don't undefine set_program_name; instead, undefine
25681         ENABLE_RELOCATABLE early.
25682
25683 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
25684
25685         Port to Tandem NSK OSS, which has 64-bit signed int but at most
25686         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
25687         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
25688         More generally, don't assume that 64-bit signed int is available
25689         if unsigned int is, and vice versa.
25690         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
25691         unsigned symbols, not on their signed counterparts.
25692         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
25693         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
25694         (UINT64_C, UINTMAX_C):
25695         Likewise.
25696         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
25697         unsigned counterparts.
25698         (Have_long_long, Unsigned): New macros.
25699         (Int): Renamed from INT.
25700         (strtoimax): Use the new macros.
25701         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
25702         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
25703         * modules/inttypes (inttypes.h): Substitute
25704         HAVE_UNSIGNED_LONG_LONG_INT.
25705         * modules/stdint (stdint.h): Likewise.
25706         (Files): Add m4/ulonglong.m4.
25707
25708 2006-10-10  Bruno Haible  <bruno@clisp.org>
25709
25710         Fix a gcc -Wshadow warning.
25711         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
25712         to 'bucket'.
25713         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
25714         gl_linked_indexof_from_to): Likewise.
25715         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
25716         Likewise.
25717         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
25718         Likewise.
25719         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
25720         Reported by Eric Blake.
25721
25722 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
25723
25724         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
25725         for NetBSD.  Problem reported by Bruno Haible.
25726
25727 2006-10-09  Jim Meyering  <jim@meyering.net>
25728
25729         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
25730         Patch from Bruno Haible.
25731
25732 2006-10-09  Jim Meyering  <jim@meyering.net>
25733
25734         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
25735         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
25736         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
25737
25738 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
25739
25740         Don't include <config.h> twice; this doesn't work in some cases,
25741         e.g., when config.h has "#define intmax_t long long int" and
25742         we include <config.h>, <inttypes.h>, <config.h> in that order.
25743         Problem reported by Matthew Woehlke in:
25744         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
25745         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
25746         * lib/fts-cycle.c: Don't include config.h.
25747         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
25748         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
25749         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
25750         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
25751         inttypes.h.
25752         * lib/xstrtoumax.c: Likewise.
25753         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
25754         __strtol and the like, so that this module is more like its siblings.
25755         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
25756         Remove; no longer needed now that we assume gnulib inttypes.h.
25757
25758 2006-10-08  Bruno Haible  <bruno@clisp.org>
25759
25760         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
25761         option.
25762
25763 2006-10-07  Jim Meyering  <jim@meyering.net>
25764
25765         * modules/inttypes (inttypes.h): Revert what seems to have been
25766         an inadvertent part of today's change: use "|", not "/" in the
25767         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
25768
25769 2006-10-07  Bruno Haible  <bruno@clisp.org>
25770
25771         * modules/sublist: New file.
25772
25773 2006-10-07  Bruno Haible  <bruno@clisp.org>
25774
25775         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
25776         * modules/argz (argz.h): Likewise.
25777         * modules/arpa_inet (arpa/inet.h): Likewise.
25778         * modules/byteswap (byteswap.h): Likewise.
25779         * modules/configmake (configmake.h): Likewise.
25780         * modules/fcntl (fcntl.h): Likewise.
25781         * modules/fnmatch (fnmatch.h): Likewise.
25782         * modules/getopt (getopt.h): Likewise.
25783         * modules/glob (glob.h): Likewise.
25784         * modules/inttypes (inttypes.h): Likewise.
25785         * modules/netinet_in (netinet/in.h): Likewise.
25786         * modules/poll (poll.h): Likewise.
25787         * modules/stdbool (stdbool.h): Likewise.
25788         * modules/stdint (stdint.h): Likewise.
25789         * modules/sys_select (sys/select.h): Likewise.
25790         * modules/sys_socket (sys/socket.h): Likewise.
25791         * modules/sys_stat (sys/stat.h): Likewise.
25792         * modules/sysexits (sysexits.h): Likewise.
25793         * modules/unistd (unistd.h): Likewise.
25794         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
25795         Add a "DO NOT EDIT" comment to the generated file.
25796         (func_import): Likewise for gnulib-comp.m4.
25797
25798 2006-10-07  Bruno Haible  <bruno@clisp.org>
25799
25800         * lib/gl_sublist.h: New file.
25801         * lib/gl_sublist.c: New file.
25802
25803 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
25804
25805         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
25806         name (relative to the original working directory) and the file
25807         name component (relative to the temporary working directory).  All
25808         callers changed.
25809         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
25810         * lib/mkdir-p.c (make_dir_parents): Likewise.
25811         * lib/mkdir-p.h (make_dir_parents): Likewise.
25812
25813 2006-10-06  Eric Blake  <ebb9@byu.net>
25814
25815         Define several macros for use by the clean-temp module.
25816         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
25817         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
25818         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
25819
25820         * lib/clean-temp.h (close_stream_temp): New declaration.
25821         * lib/clean-temp.c (includes): Pull in headers according to what
25822         other modules are in use.
25823         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
25824
25825 2006-10-06  Bruno Haible  <bruno@clisp.org>
25826
25827         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
25828         instead of fopen, fwriteerror.
25829
25830 2006-10-06  Bruno Haible  <bruno@clisp.org>
25831
25832         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
25833         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
25834         int.
25835         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
25836         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
25837         Return an error indicator.
25838         Suggested by Eric Blake.
25839
25840 2006-10-06  Bruno Haible  <bruno@clisp.org>
25841
25842         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
25843         Reported by Eric Blake.
25844
25845 2006-10-06  Bruno Haible  <bruno@clisp.org>
25846
25847         * modules/closeout (Description): Mention stderr too.
25848
25849 2006-10-06  Bruno Haible  <bruno@clisp.org>
25850         and Paul Eggert  <eggert@cs.ucla.edu>
25851
25852         * lib/closeout.c (close_stdout): Also close stderr.
25853         * lib/closeout.h: Update comment.
25854
25855 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
25856
25857         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
25858         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
25859         * lib/dirchownmod.c: Include lchown.h.
25860         * lib/lchown.c: Don't include files that lchown.h now includes.
25861         Don't declare chown, since lchown.h now does that.
25862         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
25863         (lchown): Define to rpl_chown if lchown is declared but
25864         does not exist.  Declare using a prototype if lchown is not
25865         declared.  Add a copyright notice.
25866         * lib/mkstemp.h: Include <unistd.h>.
25867         * lib/openat.c: Include lchown.h.
25868
25869         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
25870         we now test for that separately.
25871         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
25872         rather than O_NOFOLLOW, when testing whether it's possible to
25873         avoid a race condition reliably.
25874         * lib/savewd.c (savewd_chdir): Likewise.
25875
25876         Remove macros that are no longer needed now that stdint.h is
25877         reliable.
25878         * lib/fsusage.c (UINTMAX_MAX): Remove.
25879         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
25880         * lib/utimecmp.c (SIZE_MAX): Remove.
25881
25882         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
25883
25884         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
25885         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
25886         O_NOATIME works.
25887
25888 2006-10-05  Bruno Haible  <bruno@clisp.org>
25889
25890         * lib/gl_list.h (gl_sortedlist_search_from_to,
25891         gl_sortedlist_indexof_from_to): New declarations.
25892         (gl_list_implementation): New fields sortedlist_search_from_to,
25893         sortedlist_indexof_from_to.
25894         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
25895         inline functions.
25896         * lib/gl_list.c (gl_sortedlist_search_from_to,
25897         gl_sortedlist_indexof_from_to): New functions.
25898         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
25899         function.
25900         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
25901         (gl_array_sortedlist_search_from_to): New function.
25902         (gl_array_list_implementation): Update.
25903         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
25904         function.
25905         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
25906         (gl_carray_sortedlist_search_from_to): New function.
25907         (gl_carray_list_implementation): Update.
25908         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
25909         gl_linked_sortedlist_indexof_from_to): New functions.
25910         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
25911         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
25912         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
25913         gl_tree_sortedlist_indexof_from_to): New functions.
25914         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
25915         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
25916         Update.
25917         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
25918         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
25919         Update.
25920
25921 2006-10-05  Bruno Haible  <bruno@clisp.org>
25922
25923         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
25924         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
25925         (struct gl_list_implementation): Add fields search_from_to,
25926         indexof_from_to. Remove fields search, indexof.
25927         (gl_list_search): Use the search_from_to method.
25928         (gl_list_search_from, gl_list_search_from_to): New functions.
25929         (gl_list_indexof): Use the indexof_from_to method.
25930         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
25931         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
25932         (gl_list_search_from, gl_list_search_from_to): New functions.
25933         (gl_list_indexof): Use the indexof_from_to method.
25934         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
25935         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
25936         gl_array_indexof. Add start_index, end_index arguments.
25937         (gl_array_search_from_to): Renamed from gl_array_search. Add
25938         start_index, end_index arguments.
25939         (gl_array_remove, gl_array_list_implementation): Update.
25940         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
25941         gl_carray_indexof. Add start_index, end_index arguments.
25942         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
25943         start_index, end_index arguments.
25944         (gl_carray_remove, gl_carray_list_implementation): Update.
25945         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
25946         gl_linked_search. Add start_index, end_index arguments.
25947         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
25948         start_index, end_index arguments.
25949         (gl_linked_remove): Update.
25950         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
25951         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
25952         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
25953         field to 'size_t'.
25954         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
25955         gl_tree_search. Add start_index, end_index arguments.
25956         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
25957         start_index, end_index arguments.
25958         (gl_tree_remove): Update.
25959         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
25960         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
25961         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
25962         function.
25963         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
25964         gl_tree_search. Add start_index, end_index arguments.
25965         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
25966         start_index, end_index arguments.
25967         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
25968         Update.
25969         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
25970
25971 2006-10-05  Bruno Haible  <bruno@clisp.org>
25972
25973         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
25974
25975         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
25976         fwriteerror_temp): New declarations.
25977         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
25978         (descriptors): New variable.
25979         (cleanup): First, close the descriptors.
25980         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
25981         fclose_temp, fwriteerror_temp): New functions.
25982
25983 2006-10-04  Jim Meyering  <jim@meyering.net>
25984
25985         * lib/fts.c (fts_open): Tiny comment change.
25986
25987 2006-10-04  Bruno Haible  <bruno@clisp.org>
25988
25989         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
25990         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
25991         gl_LOCK_BODY.
25992         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
25993         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
25994         gl_LOCK_EARLY_BODY.
25995         (gl_LOCK): Require gl_LOCK_BODY.
25996
25997 2006-10-04  Bruno Haible  <bruno@clisp.org>
25998
25999         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
26000         (gl_oset_search_atleast): New declaration.
26001         (struct gl_oset_implementation): Add field 'search_atleast'.
26002         (gl_oset_search_atleast): New inline function.
26003         * lib/gl_oset.c (gl_oset_search_atleast): New function.
26004         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
26005         (gl_array_oset_implementation): Update.
26006         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
26007         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
26008         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
26009
26010 2006-10-04  Bruno Haible  <bruno@clisp.org>
26011
26012         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
26013
26014 2006-10-03  Bruno Haible  <bruno@clisp.org>
26015
26016         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
26017         from gl_avltreehash_list_implementation.
26018
26019 2006-10-03  Bruno Haible  <bruno@clisp.org>
26020
26021         * lib/gl_oset.c (gl_oset_add): Fix return type.
26022
26023 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
26024
26025         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
26026
26027 2006-10-02  Eric Blake  <ebb9@byu.net>
26028
26029         * modules/strnlen (Depends-on): Add extensions.
26030
26031 2006-10-02  Eric Blake  <ebb9@byu.net>
26032
26033         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
26034         definition in 2.60+.
26035
26036 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
26037
26038         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
26039         checks.
26040
26041 2006-10-02  Bruno Haible  <bruno@clisp.org>
26042
26043         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
26044         to the AUTOMAKE_OPTIONS.
26045         Reported by Jim Meyering.
26046
26047 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
26048
26049         Work around bug in Solaris 10 /proc file system:
26050         /proc/self/fd/NNN/.. isn't the parent directory of
26051         the directory whose file descriptor is NNN.  This needs to
26052         be worked around at run time, not compile time, since a
26053         program might be built on Solaris 8, where things work, and
26054         run on Solaris 10.
26055         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
26056         to use the following interface instead:
26057         (OPENAT_BUFFER_SIZE): New macro.
26058         (openat_proc_name): New function.
26059         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
26060         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
26061         Likewise.
26062         * lib/openat-proc.c: New file.
26063         * modules/openat (Files): Add lib/openat-proc.c.
26064         (Depends-on): Add same-inode, stdbool.
26065         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
26066
26067 2006-09-29  Bruno Haible  <bruno@clisp.org>
26068
26069         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
26070         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
26071         argument. Set stdout_closed before testing for ferror, not after.
26072         (fwriteerror, fwriteerror_no_ebadf): New functions.
26073
26074 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26075
26076         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
26077
26078 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
26079
26080         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
26081         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
26082
26083 2006-09-28  Jim Meyering  <jim@meyering.net>
26084
26085         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
26086         Include <unistd.h>.
26087
26088 2006-09-28  Bruno Haible  <bruno@clisp.org>
26089
26090         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
26091         * modules/linkedhash-list (Depends-on): Likewise.
26092         * modules/rbtreehash-list (Depends-on): Likewise.
26093
26094 2006-09-28  Bruno Haible  <bruno@clisp.org>
26095
26096         * lib/strndup.h: Simplify the redefinition of strndup.
26097         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
26098         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
26099
26100 2006-09-28  Bruno Haible  <bruno@clisp.org>
26101
26102         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
26103         * lib/gl_linkedhash_list.c: Likewise.
26104         * lib/gl_rbtreehash_list.c: Likewise.
26105
26106 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
26107
26108         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
26109         getaddrinfo.
26110
26111         * lib/__fpending.h: Don't include <stdio_ext.h> unless
26112         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
26113         it causes <stdio_ext.h> to cause a compile-time error.
26114         Problem reported by Nelson H. F. Beebe.
26115         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
26116         of HAVE_DECL___PENDING.
26117
26118         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
26119         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
26120         declaration.
26121
26122 2006-09-27  Jim Meyering  <jim@meyering.net>
26123
26124         This file could end up with a definition for a function
26125         named __strndup, rather than rpl_strndup on a system with
26126         incomplete weak_alias support.
26127         * lib/strndup.c (strndup): Rename from __strndup.
26128         Remove #defines that used to map __strndup to strndup.
26129         Don't use K&R prototypes.
26130         Remove LIBC-related code, since this file is not sync'd with glibc.
26131         * lib/strndup.h: Revamp, accordingly.
26132         * m4/strndup.m4: Modernize.
26133
26134 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
26135
26136         * modules/savewd (Depends-on): Add 'raise'.
26137         * lib/savewd.c: Include <signal.h>, for 'raise'.
26138
26139 2006-09-26  Jim Meyering  <jim@meyering.net>
26140
26141         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
26142         when we detect Darwin 8.7.0's acl_get_file bug.
26143         Rearrange to perform the new (below) run-test while $LIBS
26144         contains any acl-related library.  Set USE_ACL at the end.
26145         (gl_ACL_GET_FILE): New function.
26146
26147 2006-09-26  Eric Blake  <ebb9@byu.net>
26148
26149         * lib/verror.c: Include <config.h> unconditionally.
26150
26151 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
26152
26153         * modules/clock-time (Maintainer): Add self.
26154         * modules/getlogin_r (Depends-on): Add extensions.
26155
26156 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26157
26158         * modules/clock-time: New module.
26159         * modules/nanosleep (Depends-on): Add clock-time.
26160         * modules/gethrxtime (Depends-on): Likewise.
26161         * modules/gettime (Depends-on): Likewise.
26162         * modules/settime (Depends-on): Likewise.
26163
26164         * modules/fts-lgpl: Depend on openat.
26165         * modules/mkancesdirs: Depend on savewd.
26166         * modules/mkdir-p: Likewise.
26167
26168 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26169
26170         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
26171
26172         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
26173         `gl_have_arbitrary_file_name_length_limit' to
26174         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
26175         actually works between configure runs.
26176
26177 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26178             Bruno Haible  <bruno@clisp.org>
26179
26180         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
26181
26182 2006-09-25  Jim Meyering  <jim@meyering.net>
26183
26184         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
26185         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
26186
26187 2006-09-25  Eric Blake  <ebb9@byu.net>
26188
26189         * gnulib-tool (func_import, func_create_testdir): Fix typos in
26190         exec's in 2006-09-18 patch when shuffling fds.
26191
26192 2006-09-25  Bruno Haible  <bruno@clisp.org>
26193
26194         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
26195         Reported by Jim Meyering.
26196
26197 2006-09-24  Jim Meyering  <jim@meyering.net>
26198
26199         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
26200         compare a pointer against a literal "0".  That caused failures with
26201         at least HP-UX's hpcc.
26202
26203 2006-09-22  Simon Josefsson  <jas@extundo.com>
26204
26205         * modules/gc-sha1:
26206         * modules/gc-md4:
26207         * modules/gc-hmac-sha1:
26208         * modules/gc-hmac-md5:
26209         * modules/gc-des:
26210         * modules/gc-arcfour: Distribute more files.
26211
26212 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26213
26214         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
26215         (gl_linked_iterator_from_to): Initialize struct completely.
26216         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
26217         (gl_tree_iterator_from_to): Likewise
26218         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
26219         * lib/gl_array_list.c [lint] (gl_array_iterator)
26220         (gl_array_iterator_from_to): Likewise.
26221         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
26222         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
26223         (gl_carray_iterator_from_to): Likewise.
26224
26225         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
26226         * lib/md4.c (md4_process_block): Remove unused variable.
26227         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
26228         parentheses for clarity.
26229
26230 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26231
26232         * modules/bison-i18n (Depends-on): Add gettext.
26233
26234 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26235
26236         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
26237         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
26238         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
26239         also add missing comma that caused broken test.
26240         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
26241         stdlib.h, for `abort'.
26242         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
26243         variables.
26244         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
26245         include unistd.h if present, for `rmdir'.
26246         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
26247         variables.
26248         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
26249         in the process include standard headers for prototypes.
26250         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
26251         gets declared on GNU/Linux.
26252         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
26253         unistd.h, for `rmdir'.
26254         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
26255
26256         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
26257         always true.
26258         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
26259
26260         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
26261
26262 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26263
26264         * gnulib-tool (func_version): Create output all at once.  This
26265         may help avoid triggering unnecessary SIGPIPEs, and at any
26266         rate it doesn't hurt.
26267
26268 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26269             Bruno Haible  <bruno@clisp.org>
26270
26271         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
26272         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
26273         * m4/signed.m4 (bh_C_SIGNED): Likewise.
26274
26275         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
26276         (gl_FUNC_VASPRINTF): Invoke it.
26277
26278 2006-09-22  Bruno Haible  <bruno@clisp.org>
26279
26280         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
26281         getloadavg.c as first argument.
26282
26283 2006-09-22  Bruno Haible  <bruno@clisp.org>
26284
26285         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
26286         at the beginning of the gl_INIT macro.
26287         * modules/getloadavg (configure.ac): Pass $gl_source_base to
26288         gl_GETLOADAVG.
26289
26290 2006-09-22  Bruno Haible  <bruno@clisp.org>
26291
26292         * gnulib-tool (func_create_megatestdir): Don't include the config-h
26293         module.
26294         Suggested by Ralf Wildenhues.
26295
26296 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
26297
26298         Import this patch from libc:
26299
26300         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
26301
26302         * lib/regex_internal.c (re_string_reconstruct): Handle
26303         offset < pstr->valid_raw_len && pstr->offsets_needed case.
26304         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
26305         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
26306         re_string_context_at.
26307
26308         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
26309         now requires it.
26310         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
26311         gl_REGEX now does it for us.
26312         (gl_REGEX): Add test taken from
26313         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
26314
26315         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
26316         Check that large offsets work.  Modernize Autoconf usages.
26317         Prefer "yes" to mean a good thing rather than a bad.
26318         Don't put "#define mkstemp" in config.h, as this might interfere
26319         with standard system headers that "#define mkstemp mkstemp64".
26320
26321         * modules/mkstemp (Depends-on): Add extensions, so that
26322         mkstemp is visible on some platforms.
26323         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
26324         (Include): Change to "mkstemp.h" from <stdlib.h>.
26325         (Files): Add mkstemp.h.
26326
26327         * lib/mkstemp.h: New file, since some standard headers
26328         #define mkstemp.
26329         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
26330         Include "mkstemp.h".
26331         Make the _LIBC code resemble glibc original more,
26332         e.g., use K&R style.
26333         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
26334         (mkstemp): Remove, since mkstemp.h does this for us.
26335         * lib/stdlib--.h: Include mkstemp.h.
26336
26337         Import this patch from libc:
26338
26339         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
26340
26341         * lib/tempname.c (__gen_tempname): Change attempts_min
26342         into a macro.  Use preprocessor to decide how to initialize
26343         attempts [Coverity CID 67].
26344
26345 2006-09-20  Bruno Haible  <bruno@clisp.org>
26346
26347         * lib/mkdtemp.c: Import from libc.
26348         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
26349                 * sysdeps/posix/tempname.c (__gen_tempname): Change
26350                 attempts_min into a macro.  Use preprocessor to decide how to
26351                 initialize attempts [Coverity CID 67].
26352         2001-11-27  Paul Eggert  <eggert@twinsun.com>
26353                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
26354                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
26355
26356 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26357
26358         * gnulib-tool (func_exit): New function, to allow to pass the
26359         exit status portably through the trap.  Use everywhere.
26360         (--help, --version): Signal a write error.
26361         (trap): catch SIGPIPE, for write errors.
26362         Exit at the end of the trap, with the correct exit status.
26363
26364 2006-09-19  Karl Berry  <karl@gnu.org>
26365
26366         * doc/gnulib.texi: note about the license texinfo files.
26367
26368 2006-09-19  Eric Blake  <ebb9@byu.net>
26369
26370         * gnulib-tool: Avoid space-tab.
26371
26372 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
26373
26374         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
26375         that prevented coreutils 6.1 from building.  Problem reported
26376         by Petter Reinholdtsen.
26377
26378 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
26379
26380         * gnulib-tool (avoidlist): Fix typo that broke options like
26381         --avoid=lock that are used by coreutils bootstrap.
26382
26383 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
26384
26385         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
26386         more systematically.
26387
26388 2006-09-18  Jim Meyering  <jim@meyering.net>
26389
26390         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
26391
26392 2006-09-18  Bruno Haible  <bruno@clisp.org>
26393
26394         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
26395
26396 2006-09-18  Bruno Haible  <bruno@clisp.org>
26397
26398         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
26399         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
26400         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
26401         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
26402         * m4/gettext.m4: Require autoconf >= 2.52.
26403         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
26404         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
26405         of gl_cv_header_inttypes_h.
26406
26407 2006-09-18  Bruno Haible  <bruno@clisp.org>
26408
26409         * lib/javaversion.c: Include configmake.h.
26410
26411 2006-09-18  Bruno Haible  <bruno@clisp.org>
26412
26413         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
26414         avoid that the while loops be executed in a subshell.
26415
26416 2006-09-18  Bruno Haible  <bruno@clisp.org>
26417
26418         * MODULES.html.sh (func_module): Break long lines.
26419         Suggested by Bruce Korb <bkorb@gnu.org>.
26420
26421 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26422
26423         Speed up by a factor of 1.12.
26424         * gnulib-tool (nl): New variable.
26425         (func_import): Rewrite include directive extraction to only read each
26426         directive once.
26427
26428 2006-09-17  Bruno Haible  <bruno@clisp.org>
26429
26430         * modules/javaversion (Makefile.am): Remove DEFS setting.
26431         (Depends-on): Add configmake, for PKGDATADIR definition.
26432
26433 2006-09-17  Bruno Haible  <bruno@clisp.org>
26434
26435         * gnulib-tool (func_create_testdir): Rewrite all files at once.
26436
26437 2006-09-17  Bruno Haible  <bruno@clisp.org>
26438
26439         * gnulib-tool (func_append): New function, stolen from libtool.m4.
26440         (func_modules_transitive_closure, func_modules_add_dummy,
26441         func_modules_to_filelist, func_import, func_create_testdir,
26442         func_create_megatestdir, ...): Use it wherever possible.
26443         Suggested by Ralf Wildenhues.
26444
26445 2006-09-16  Karl Berry  <karl@gnu.org>
26446
26447         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
26448         to avoid sectioning errors.
26449         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
26450         [ifinfo]: blank line after @center-ed titles.
26451         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
26452         Spell FSF address consistently with others.
26453         (These changes approved by rms.)
26454
26455 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26456
26457         Speed up by a factor of 1.61.
26458         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
26459         already checked module names again.
26460
26461 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26462
26463         Speed up by a factor of 1.13.
26464         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
26465         for new_files, and the input to func_add_or_update.
26466
26467 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26468
26469         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
26470         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
26471
26472 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26473
26474         * modules/mkancesdirs (Depends-on): Add fcntl.
26475         * modules/savewd: New file.
26476         * MODULES.html.sh (File system functions): Add savewd.
26477
26478         * modules/configmake (Makefile.am): Add support for the
26479         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
26480
26481 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26482
26483         * m4/savewd.m4: New file.
26484
26485 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26486
26487         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
26488         (dirchownmod): New arg FD.  All callers changed.
26489         Use FD rather than opening the directory ourself, as opening is
26490         now the caller's responsibility.
26491         * lib/dirchownmod.h: Likewise.
26492         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
26493         hosts that require <sys/types.h> before <sys/stat.h>.  Include
26494         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
26495         (test_dir): Remove.
26496         (mkancesdirs): Return length of prefix of FILE that has already
26497         been made, or -2 if there is a child doing the work.  Redo
26498         algorithm so that it is O(N) rather than O(N**2).  Optimize away
26499         ".", and treat ".." specially since it might stray back into
26500         already-created areas.  Use a subprocess if necessary.  New arg
26501         WD; all users changed.  MAKE_DIR function should now return 1
26502         if it creates a directory that is not readable.  Return -2 if
26503         a child process is spun off.
26504         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
26505         Adjust signature to match code.
26506         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
26507         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
26508         all users changed.
26509         * lib/savewd.c, lib/savewd.h: New files.
26510
26511 2006-09-15  Jim Meyering  <jim@meyering.net>
26512
26513         * modules/rename-dest-slash: New module.
26514         * MODULES.html.sh (posix_compat): Add it here.
26515
26516         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
26517
26518 2006-09-15  Jim Meyering  <jim@meyering.net>
26519
26520         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
26521         file.
26522
26523         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
26524
26525 2006-09-15  Jim Meyering  <jim@meyering.net>
26526
26527         * lib/rename-dest-slash.c (has_trailing_slash): Use
26528         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
26529         (rpl_rename_dest_slash): Perform the cheaper trailing slash
26530         test before testing whether SRC is a directory.
26531         Suggestions from Bruno Haible.
26532
26533         Avoid a warning about an unused variable.
26534         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
26535         into the #ifdef block where it's used.
26536
26537         * lib/rename-dest-slash.c: New file.
26538
26539 2006-09-14  Bruno Haible  <bruno@clisp.org>
26540
26541         * lib/allocsa.c: Include <config.h> unconditionally.
26542         * lib/asnprintf.c: Likewise.
26543         * lib/asprintf.c: Likewise.
26544         * lib/c-strcasecmp.c: Likewise.
26545         * lib/c-strcasestr.c: Likewise.
26546         * lib/c-strncasecmp.c: Likewise.
26547         * lib/c-strstr.c: Likewise.
26548         * lib/classpath.c: Likewise.
26549         * lib/clean-temp.c: Likewise.
26550         * lib/concatpath.c: Likewise.
26551         * lib/copy-file.c: Likewise.
26552         * lib/csharpcomp.c: Likewise.
26553         * lib/csharpexec.c: Likewise.
26554         * lib/execute.c: Likewise.
26555         * lib/fatal-signal.c: Likewise.
26556         * lib/findprog.c: Likewise.
26557         * lib/fwriteerror.c: Likewise.
26558         * lib/gl_array_list.c: Likewise.
26559         * lib/gl_array_oset.c: Likewise.
26560         * lib/gl_avltree_list.c: Likewise.
26561         * lib/gl_avltree_oset.c: Likewise.
26562         * lib/gl_avltreehash_list.c: Likewise.
26563         * lib/gl_carray_list.c: Likewise.
26564         * lib/gl_linked_list.c: Likewise.
26565         * lib/gl_linkedhash_list.c: Likewise.
26566         * lib/gl_list.c: Likewise.
26567         * lib/gl_oset.c: Likewise.
26568         * lib/gl_rbtree_list.c: Likewise.
26569         * lib/gl_rbtree_oset.c: Likewise.
26570         * lib/gl_rbtreehash_list.c: Likewise.
26571         * lib/imaxabs.c: Likewise.
26572         * lib/imaxdiv.c: Likewise.
26573         * lib/javacomp.c: Likewise.
26574         * lib/javaexec.c: Likewise.
26575         * lib/javaversion.c: Likewise.
26576         * lib/linebreak.c: Likewise.
26577         * lib/localcharset.c: Likewise.
26578         * lib/lock.c: Likewise.
26579         * lib/mbchar.c: Likewise.
26580         * lib/mbswidth.c: Likewise.
26581         * lib/mkdtemp.c: Likewise.
26582         * lib/pipe.c: Likewise.
26583         * lib/printf-args.c: Likewise.
26584         * lib/printf-parse.c: Likewise.
26585         * lib/progname.c: Likewise.
26586         * lib/progreloc.c: Likewise.
26587         * lib/readlink.c: Likewise.
26588         * lib/sh-quote.c: Likewise.
26589         * lib/stpcpy.c: Likewise.
26590         * lib/stpncpy.c: Likewise.
26591         * lib/strcasecmp.c: Likewise.
26592         * lib/strcasestr.c: Likewise.
26593         * lib/strcspn.c: Likewise.
26594         * lib/striconv.c: Likewise.
26595         * lib/strncasecmp.c: Likewise.
26596         * lib/strnlen1.c: Likewise.
26597         * lib/strstr.c: Likewise.
26598         * lib/strtok_r.c: Likewise.
26599         * lib/tls.c: Likewise.
26600         * lib/tmpdir.c: Likewise.
26601         * lib/unicodeio.c: Likewise.
26602         * lib/unsetenv.c: Likewise.
26603         * lib/vasnprintf.c: Likewise.
26604         * lib/vasprintf.c: Likewise.
26605         * lib/wait-process.c: Likewise.
26606         * lib/xallocsa.c: Likewise.
26607         * lib/xsetenv.c: Likewise.
26608         * lib/xstriconv.c: Likewise.
26609
26610 2006-09-13  Simon Josefsson  <jas@extundo.com>
26611
26612         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
26613         that internally, suggested by Ralf Wildenhues
26614         <Ralf.Wildenhues@gmx.de>.
26615
26616 2006-09-13  Simon Josefsson  <jas@extundo.com>
26617
26618         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
26619         @LIBOBJS@.
26620         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
26621
26622 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26623
26624         * lib/_fpending.c: Include <config.h> unconditionally, since we no
26625         longer worry about uses that don't define HAVE_CONFIG_H.
26626         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
26627         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
26628         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
26629         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
26630         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
26631         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
26632         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
26633         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
26634         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
26635         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
26636         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
26637         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
26638         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
26639         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
26640         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
26641         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
26642         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
26643         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
26644         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
26645         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
26646         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
26647         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
26648         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
26649         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
26650         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
26651         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
26652         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
26653         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
26654         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
26655         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
26656         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
26657         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
26658         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
26659         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
26660         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
26661         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
26662         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
26663         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
26664         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
26665         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
26666         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
26667         Likewise.
26668
26669 2006-09-13  Eric Blake  <ebb9@byu.net>
26670
26671         * lib/getopt.c: Fix typo in last commit.
26672
26673 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
26674
26675         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
26676         dgettext.
26677
26678 2006-09-12  Jim Meyering  <jim@meyering.net>
26679
26680         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
26681         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
26682         Reported by Nelson H. F. Beebe.
26683
26684 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
26685
26686         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
26687         program_invocation_name and program_invocation_short_name are
26688         initialized.
26689         * lib/argp-namefrob.h: Move declarations of program_invocation_name
26690         and program_invocation_short_name to argp.h, so they are visible
26691         to user programs.
26692         * lib/argp.h: Likewise
26693
26694 2006-09-10  Bruno Haible  <bruno@clisp.org>
26695
26696         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
26697         m4/inttypes_h.m4, m4/uintmax_t.m4.
26698
26699 2006-09-10  Bruno Haible  <bruno@clisp.org>
26700
26701         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
26702         gl_AC_TYPE_UINTMAX_T.
26703
26704 2006-09-10  Bruno Haible  <bruno@clisp.org>
26705
26706         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
26707
26708 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
26709
26710         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
26711         convention.  Text proposed by Bruno Haible.
26712         (struct argp_option): Document the use of N_() wrappers.
26713
26714         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
26715         '\v', and translate the two parts separately, instead of feeding
26716         the whole string to gettext.  This allows to exclude
26717         '\v' from the strings visible to the translator by writing doc
26718         strings as N_("..") "\v" N_("..").
26719
26720 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
26721
26722         * config/srclist.txt: Undo latest change; the bug was fixed.
26723
26724 2006-09-09  Bruno Haible  <bruno@clisp.org>
26725
26726         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
26727         assignments if building a library without libtool.
26728         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
26729         in func_emit_lib_Makefile_am.
26730         (func_import): When building a static library libfoo.a, arrange to
26731         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
26732         (func_create_testdir): Likewise.
26733         * modules/gc (configure.ac, Makefile.am): If building statically,
26734         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
26735         * modules/iconvme (configure.ac, Makefile.am): Likewise.
26736         * modules/striconv (configure.ac, Makefile.am): Likewise.
26737         Based on a suggestion by Ralf Wildenhues.
26738
26739 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26740
26741         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
26742         Check for unistd.h too, since Autoconf doesn't assume POSIX.
26743         Also:
26744
26745         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26746         Add year_2050_test to catch glibc bug 2821
26747         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
26748
26749         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26750         Prefer #ifdef to #if.
26751
26752         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
26753         Return from 'main' instead of calling 'exit'.
26754
26755 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26756
26757         * lib/mktime.c (guess_time_tm): Fix bug where mktime
26758         returned the maximum time_t value rather than (time_t) -1.
26759         Problem originally reported by William Bardwell
26760         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
26761
26762         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
26763         Moved to here ...
26764         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
26765         ... from here.
26766
26767 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
26768
26769         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
26770         2821 is fixed.
26771
26772 2006-09-08  Jim Meyering  <jim@meyering.net>
26773
26774         Don't make generated files read-only.  That would bother too many
26775         people.  However, do retain the ability to work when targets are
26776         read-only: remove the destination and temporary files before writing
26777         them (when generated via sed or echo), or by using the -f option for
26778         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
26779         * modules/alloca-opt, modules/argz, modules/arpa_inet:
26780         * modules/byteswap, modules/configmake, modules/fcntl:
26781         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
26782         * modules/localcharset, modules/netinet_in, modules/poll:
26783         * modules/stdbool, modules/stdint, modules/sys_select:
26784         * modules/sys_socket, modules/sys_stat, modules/sysexits:
26785
26786 2006-09-08  Jim Meyering  <jim@meyering.net>
26787
26788         Avoid new build failure on FreeBSD 6.0.
26789         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
26790         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
26791         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
26792
26793 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26794
26795         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
26796
26797 2006-09-07  Jim Meyering  <jim@meyering.net>
26798
26799         Fix global typo in last change: use chmod u-w, not chmod u-x.
26800         Spotted by Paul Eggert and Bruce Korb.
26801         * modules/alloca-opt, modules/argz, modules/arpa_inet:
26802         * modules/byteswap, modules/configmake, modules/fcntl:
26803         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
26804         * modules/localcharset, modules/netinet_in, modules/poll:
26805         * modules/stdbool, modules/stdint, modules/sys_select:
26806         * modules/sys_socket, modules/sys_stat, modules/sysexits:
26807
26808 2006-09-06  Jim Meyering  <jim@meyering.net>
26809
26810         Make generated files be read-only.
26811         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
26812         Ensure that each generated file is now read-only.
26813         * modules/argz: Likewise.
26814         * modules/arpa_inet: Likewise.
26815         * modules/byteswap: Likewise.
26816         * modules/configmake: Likewise.
26817         * modules/fcntl: Likewise.
26818         * modules/fnmatch: Likewise.
26819         * modules/getopt: Likewise.
26820         * modules/glob: Likewise.
26821         * modules/inttypes: Likewise.
26822         * modules/netinet_in: Likewise.
26823         * modules/poll: Likewise.
26824         * modules/stdbool: Likewise.
26825         * modules/stdint: Likewise.
26826         * modules/sys_select: Likewise.
26827         * modules/sys_socket: Likewise.
26828         * modules/sys_stat: Likewise.
26829         * modules/sysexits: Likewise.
26830         * modules/localcharset: Same as above, but continue using temporary
26831         file named "t-$@" (why different?) rather than the "$@-t" used
26832         everywhere else.
26833
26834         * modules/sysexits (Makefile.am): Replace literal occurrences
26835         of "sysexit.h" more readable, and more consistent, "$@".
26836
26837 2006-09-06  Bruno Haible  <bruno@clisp.org>
26838
26839         * modules/striconv: New file.
26840         * modules/xstriconv: New file.
26841         * MODULES.html.sh (Internationalization functions): Add striconv,
26842         xstriconv.
26843
26844 2006-09-06  Bruno Haible  <bruno@clisp.org>
26845
26846         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
26847         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
26848         not using libtool correctly.
26849
26850 2006-09-06  Bruno Haible  <bruno@clisp.org>
26851
26852         * lib/striconv.h: New file.
26853         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
26854         iconvstring.c.
26855         * lib/xstriconv.h: New file.
26856         * lib/xstriconv.c: New file.
26857
26858 2006-09-06  Bruno Haible  <bruno@clisp.org>
26859
26860         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
26861         lib_..._LDFLAGS.
26862
26863 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26864
26865         * lib/argz_.h: Sync from Libtool.
26866
26867         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
26868                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
26869
26870         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
26871
26872 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
26873
26874         * modules/trim: New file.
26875
26876 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
26877
26878         * lib/trim.h: New file.
26879         * lib/trim.c: New file.
26880
26881 2006-09-05  Bruno Haible  <bruno@clisp.org>
26882
26883         * MODULES.html.sh (String handling): Add trim.
26884
26885 2006-09-04  Karl Berry  <karl@gnu.org>
26886
26887         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
26888         until next release.
26889
26890 2006-09-03  Bruno Haible  <bruno@clisp.org>
26891
26892         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
26893         correctly.
26894
26895 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26896
26897         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
26898         not gl_GETLOADAVG.  Omit unneeded semicolons.
26899         Problems reported by Ralf Wildenhues in
26900         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
26901         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
26902         at the end, which is the usual gnulib style.
26903
26904         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
26905         of doing all the work ourselves.
26906         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
26907         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
26908
26909 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26910
26911         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
26912         Problem reported by Ralf Wildenhues in
26913         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
26914
26915         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
26916         HAVE_STRUCT_STATFS_F_FSTYPENAME.
26917
26918 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
26919
26920         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
26921         yesterday's patch by changing test -n to test -z.
26922
26923 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26924
26925         * modules/getloadavg (Files): Add m4/getloadavg.m4.
26926         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
26927         the former is now obsolescent.
26928
26929         * modules/chdir-long (Depends-on): Add fcntl.
26930
26931 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26932
26933         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
26934         obsolescent, and programs should use gnulib instead.
26935         * m4/getloadavg.m4: New file, with contents taken from Autoconf
26936         but with prefixes changed.
26937
26938 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
26939
26940         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
26941         or stdbool.h, because they might not exist while configuring.
26942
26943         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
26944         Don't include unistd.h or limits.h; not needed, since chdir-long.h
26945         does that for us.
26946         (O_DIRECTORY): Remove.
26947
26948 2006-08-31  Eric Blake  <ebb9@byu.net>
26949
26950         * gnulib-tool: Don't let emacs change spaces to TAB.
26951
26952 2006-08-31  Bruno Haible  <bruno@clisp.org>
26953
26954         * gnulib-tool: When calling func_import more than once, do it in a
26955         subshell.
26956         Reported by Eric Blake <ebb9@byu.net>.
26957
26958 2006-08-31  Bruno Haible  <bruno@clisp.org>
26959
26960         * gnulib-tool (nl): Remove variable.
26961         (sed_transform_lib_file): Use more robust test for config-h module.
26962         (func_import): Fix typo in 2006-08-25 patch.
26963
26964 2006-08-31  Bruno Haible  <bruno@clisp.org>
26965
26966         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
26967         specified, augment Makefile.am variables instead of assigning them.
26968
26969 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26970
26971         Work around a bug in both the Linux and SunOS 64-bit kernels:
26972         nanosleep mishandles sleeps for longer than 2**31 seconds.
26973         Problem reported by Frank v Waveren in
26974         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
26975         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
26976         Check for nanosleep bug.
26977         (LIB_NANOSLEEP): Append clock_gettime library if needed.
26978
26979 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26980
26981         Work around a bug in both the Linux and SunOS 64-bit kernels:
26982         nanosleep mishandles sleeps for longer than 2**31 seconds.
26983         Problem reported by Frank v Waveren in
26984         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
26985         * lib/nanosleep.c (BILLION): New constant.
26986         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
26987         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
26988         implementation.
26989
26990 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26991
26992         * modules/nanosleep (Depends-on): Add gettime.
26993
26994 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
26995         and Simon Josefsson  <jas@extundo.com>
26996         and Oskar Liljeblad  <oskar@osk.mine.nu>
26997
26998         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
26999         * gnulib-tool (func_import): New license type 'unmodifiable license
27000         text'.
27001         * modules/fdl: Use it.  Longer description.
27002         * module/gpl, module/lgpl: New files.
27003
27004 2006-08-30  Jim Meyering  <jim@meyering.net>
27005
27006         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
27007         shadowing the parameter.
27008
27009 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27010
27011         Sync from Libtool:
27012
27013         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27014
27015         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
27016         sharing with gnulib.  Report by Eric Blake.
27017
27018 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27019
27020         * modules/isapipe: New file.
27021         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
27022
27023 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27024
27025         * modules/configmake (Makefile.am): Add a comment, and omit
27026         the CONFIGMAKE_ prefix from generated macro names.  Suggested
27027         by Bruno Haible.
27028
27029 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27030
27031         * m4/isapipe.m4: New file.
27032
27033 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27034
27035         * lib/isapipe.c, lib/isapipe.h: New files.
27036
27037 2006-08-29  Jim Meyering  <jim@meyering.net>
27038
27039         * modules/configmake (Makefile.am): Make configmake.h depend on
27040         Makefile.  Otherwise, a stale configmake.h could hang around.
27041
27042 2006-08-29  Eric Blake  <ebb9@byu.net>
27043
27044         * lib/error.c (error_at_line, print_errno_message): Match libc, after
27045         resolution of upstream bug 3044.
27046
27047 2006-08-29  Bruno Haible  <bruno@clisp.org>
27048
27049         * modules/localcharset (Depends-on): Add configmake.
27050         (Makefile.am): Remove setting of LIBDIR through DEFS.
27051
27052 2006-08-29  Bruno Haible  <bruno@clisp.org>
27053
27054         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
27055         defined.
27056
27057 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27058
27059         * modules/fcntl: New file.
27060         * modules/chdir-safer (Depends-on): Add fcntl.
27061         * modules/fts: Likewise.
27062         * modules/mkdir-p: Likewise.
27063
27064         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
27065         This undoes the most recent change, since we're now addressing the
27066         problem in a different way.
27067
27068         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
27069         into output, since the output might be called Makefile.am even
27070         if $makefile_name is something different.
27071         (func_import): Use $makefile_am rather than
27072         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
27073         empty.
27074
27075         * modules/inttypes (Files): Add m4/inttypes-h.m4.
27076
27077 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27078
27079         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
27080         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
27081         recent change to stdint.m4, since we're now addressing the problem in a
27082         different way.
27083
27084 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27085
27086         * m4/fcntl_h.m4: New file.
27087
27088 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27089
27090         * lib/fcntl_.h: New file.
27091         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
27092         the fcntl module.
27093         * lib/dirchownmod.c: Likewise.
27094         * lib/fts.c: Likewise.
27095
27096         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
27097         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
27098         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
27099         just before including <inttypes.h>, to avoid circular inclusion.
27100
27101 2006-08-28  Jim Meyering  <jim@meyering.net>
27102
27103         * doc/visibility.texi: Actually read and correct the grammar of the
27104         sentence affected by yesterday's change.
27105
27106 2006-08-28  Eric Blake  <ebb9@byu.net>
27107
27108         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
27109         needs wrapper.
27110
27111 2006-08-28  Eric Blake  <ebb9@byu.net>
27112
27113         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
27114
27115 2006-08-28  Eric Blake  <ebb9@byu.net>
27116
27117         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
27118
27119 2006-08-28  Bruno Haible  <bruno@clisp.org>
27120
27121         * modules/c-strstr: New file, from GNU gettext.
27122         * MODULES.html.sh (String handling): Add c-strstr.
27123
27124 2006-08-28  Bruno Haible  <bruno@clisp.org>
27125
27126         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
27127         macros.
27128         Reported by Eric Blake.
27129
27130 2006-08-28  Bruno Haible  <bruno@clisp.org>
27131
27132         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
27133         (VASNPRINTF): Return a string of length > INT_MAX without failing.
27134         * lib/vasprintf.c: Include errno.h, limits.h.
27135         (EOVERFLOW): New fallback definition.
27136         (vasprintf): Test here whether the string length is > INT_MAX.
27137         * lib/vsnprintf.c: Include errno.h, limits.h.
27138         (EOVERFLOW): New fallback definition.
27139         (vsnprintf): Fix bug when generated string was too long for the buffer.
27140         Test here whether the string length is > INT_MAX.
27141
27142 2006-08-28  Bruno Haible  <bruno@clisp.org>
27143
27144         * lib/inttypes_.h (SCNX*): Remove definitions.
27145         Reported by Eric Blake.
27146
27147 2006-08-28  Bruno Haible  <bruno@clisp.org>
27148
27149         * lib/c-strstr.h: New file, from GNU gettext.
27150         * lib/c-strstr.c: New file, from GNU gettext.
27151
27152 2006-08-28  Bruno Haible  <bruno@clisp.org>
27153
27154         * gnulib-tool: Reorder some statements.
27155
27156 2006-08-28  Bruno Haible  <bruno@clisp.org>
27157
27158         * gnulib-tool: New option --makefile-name.
27159         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
27160         $makefile_name.
27161         (func_import): Write $makefile_name to the cache file, and read it from
27162         there unless explicitly specified. Use $makefile_name as file name
27163         instead of Makefile.am. Adjust the recommendations accordingly.
27164
27165 2006-08-28  Bruno Haible  <bruno@clisp.org>
27166
27167         * gnulib-tool (func_verify_module): Check against misapplying patch.
27168
27169 2006-08-28  Bruno Haible  <bruno@clisp.org>
27170
27171         * gnulib-tool (func_relativize, func_relconcat): New functions.
27172         Give an error if --local-dir is given with --update.
27173         Remove trailing slashes from $local_gnulib_dir.
27174         (func_import): Store the relativized $local_gnulib_dir in
27175         gnulib-cache.m4, and read it from there if not specified explicitly.
27176
27177 2006-08-28  Bruno Haible  <bruno@clisp.org>
27178
27179         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
27180         is the current directory. Respect also $local_gnulib_dir.
27181
27182 2006-08-28  Bruno Haible  <bruno@clisp.org>
27183             Simon Josefsson  <jas@extundo.com>
27184
27185         BeOS portability.
27186         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
27187
27188 2006-08-27  Jim Meyering  <jim@meyering.net>
27189
27190         * doc/visibility.texi: Remove duplicate word: "pointer".
27191
27192 2006-08-26  Bruno Haible  <bruno@clisp.org>
27193
27194         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
27195         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
27196         (Makefile.am): Create inttypes.h from inttypes_.h.
27197         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
27198
27199         * modules/imaxabs: New file.
27200
27201         * modules/imaxdiv: New file.
27202
27203 2006-08-26  Bruno Haible  <bruno@clisp.org>
27204
27205         * m4/inttypes.m4: New file.
27206         * m4/_inttypes_h.m4: Remove file.
27207         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
27208         PRI_MACROS_BROKEN.
27209         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
27210
27211         * m4/imaxabs.m4: New file.
27212
27213         * m4/imaxdiv.m4: New file.
27214
27215 2006-08-26  Bruno Haible  <bruno@clisp.org>
27216
27217         * lib/inttypes_.h: New file.
27218         * lib/inttypes.h: Remove file.
27219         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
27220
27221         * lib/imaxabs.c: New file.
27222
27223         * lib/imaxdiv.c: New file.
27224
27225 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27226
27227         New config-h module, so that "make" output needn't be cluttered
27228         by -DHAVE_CONFIG_H.
27229         * MODULES.html.sh (Support for building libraries and executables):
27230         Add config-h.
27231         * modules/config-h: New file.
27232         * gnulib-tool (nl, sed_transform_lib_file): New vars.
27233         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
27234         the config-h module is used.
27235
27236         New configmake module, so that "make" output needn't be cluttered
27237         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
27238         * MODULES.html.sh (Support for building libraries and executables):
27239         Add configmake.
27240         * modules/configmake: New file.
27241
27242 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27243
27244         * m4/config-h.m4: New file.
27245
27246 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27247
27248         * config/srclist.txt: Add elisp-comp.
27249
27250 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27251
27252         * MODULES.html.sh (Support for building libraries and executables):
27253         Add elisp-comp.
27254         * build-aux/elisp-comp: New file.
27255         * modules/elisp-comp: New file.
27256
27257 2006-08-24  Bruno Haible  <bruno@clisp.org>
27258
27259         * gnulib-tool (func_create_testdir): Use non-default values of
27260         sourcebase and m4base.
27261
27262 2006-08-24  Bruno Haible  <bruno@clisp.org>
27263
27264         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
27265         HTML structure.
27266
27267 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
27268
27269         * modules/openat (Depends-on): Add lchown.
27270
27271 2006-08-23  Bruno Haible  <bruno@clisp.org>
27272
27273         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
27274         of gl_LOCK_EARLY instead of gl_LOCK.
27275
27276 2006-08-23  Bruno Haible  <bruno@clisp.org>
27277
27278         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
27279         on OSF/1 to no.
27280         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
27281
27282 2006-08-23  Bruno Haible  <bruno@clisp.org>
27283
27284         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
27285         as unusable.
27286
27287         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
27288         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
27289         (gl_LOCK): New macro.
27290
27291 2006-08-22  Simon Josefsson  <jas@extundo.com>
27292
27293         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
27294         to md5 module.
27295
27296 2006-08-22  Simon Josefsson  <jas@extundo.com>
27297
27298         * MODULES.html.sh: Add "Support for maintaining and release
27299         projects".
27300
27301         * build-aux/gnupload: New file, from coreutils.
27302
27303 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
27304
27305         Avoid the need for AC_LIBSOURCES in m4 macros.
27306         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
27307         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
27308         * modules/check-version (EXTRA_DIST): Add check-version.h.
27309         * modules/crc (EXTRA_DIST): Add crc.h.
27310         * modules/des (EXTRA_DIST): Add des.h.
27311         * modules/gc (EXTRA_DIST): Add gc.h.
27312         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
27313         * modules/getline (EXTRA_DIST): Add getline.h.
27314         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
27315         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
27316         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
27317         * modules/md2 (EXTRA_DIST): Add md2.h.
27318         * modules/md4 (EXTRA_DIST): Add md4.h.
27319         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
27320         * modules/read-file (EXTRA_DIST): Add read-file.h.
27321         * modules/readline (EXTRA_DIST): Add readline.h.
27322         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
27323         rijndael-api-fst.h.
27324
27325 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
27326
27327         * m4/rijndael.m4 (gl_ARCFOUR):
27328         * m4/arctwo.m4 (gl_ARCTWO):
27329         * m4/check-version.m4 (gl_CHECK_VERSION):
27330         * m4/crc.m4 (gl_CRC):
27331         * m4/des.m4 (gl_DES):
27332         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
27333         * m4/gc.m4 (gl_GC):
27334         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
27335         * m4/getline.m4 (gl_FUNC_GETLINE):
27336         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
27337         * m4/hmac-md5.m4 (gl_HMAC_MD5):
27338         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
27339         * m4/md2.m4 (gl_MD2):
27340         * m4/md4.m4 (gl_MD4):
27341         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
27342         * m4/read-file.m4 (gl_FUNC_READ_FILE):
27343         * m4/readline.m4 (gl_FUNC_READLINE):
27344         * m4/rijndael.m4 (gl_RIJNDAEL):
27345         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
27346         to get the necessary .h files and whatnot.
27347
27348 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
27349
27350         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
27351         gnulib rather than the other way around.
27352         * config/srclistvars.sh (COREUTILS): Remove.
27353
27354 2006-08-22  Jim Meyering  <jim@meyering.net>
27355
27356         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
27357
27358         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
27359
27360 2006-08-22  Eric Blake  <ebb9@byu.net>
27361
27362         * modules/regexprops-generic: New file.
27363         * MODULES.html.sh (Support for building documentation): List it.
27364
27365 2006-08-22  Eric Blake  <ebb9@byu.net>
27366
27367         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
27368         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
27369         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
27370         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
27371
27372 2006-08-22  Bruno Haible  <bruno@clisp.org>
27373
27374         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
27375         and lib_LTLIBRARIES like the other lib_* variables.
27376
27377 2006-08-22  Bruno Haible  <bruno@clisp.org>
27378
27379         * build-aux/x-to-1.in: New file, from GNU gettext.
27380
27381 2006-08-22  Bruno Haible  <bruno@clisp.org>
27382
27383         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
27384         <utmpx.h> exists.
27385
27386 2006-08-22  Bruno Haible  <bruno@clisp.org>
27387
27388         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
27389         <utmpx.h> exists.
27390
27391 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27392
27393         BeOS portability.
27394         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
27395         exist.
27396         Problem reported by Bruno Haible.
27397
27398 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27399
27400         Avoid the need for AC_LIBSOURCES in m4 macros.
27401         * modules/acl (EXTRA_DIST): Add acl.h.
27402         * modules/argmatch (Files): Add m4/argmatch.m4.
27403         (configure.ac): Add gl_ARGMATCH.
27404         (EXTRA_DIST): Renamed from lib_SOURCES, for
27405         consistency with the other modules.  Remove argmatch.c.
27406         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
27407         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
27408         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
27409         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
27410         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
27411         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
27412         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
27413         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
27414         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
27415         * modules/closeout (EXTRA_DIST): Add closeout.h.
27416         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
27417         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
27418         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
27419         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
27420         dirname.h; remove basename.c and stripslash.c.
27421         * modules/exclude (EXTRA_DIST): Add exclude.h.
27422         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
27423         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
27424         * modules/file-type (EXTRA_DIST): Add file-type.h.
27425         * modules/filemode (EXTRA_DIST): Add filemode.h.
27426         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
27427         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
27428         * modules/fpending (EXTRA_DIST): Add __fpending.h.
27429         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
27430         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
27431         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
27432         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
27433         * modules/getdate (EXTRA_DIST): Add getdate.c.
27434         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
27435         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
27436         * modules/getpass (EXTRA_DIST): Add getpass.h.
27437         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
27438         * modules/group-member (EXTRA_DIST): Add group-member.h.
27439         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
27440         * modules/hash (EXTRA_DIST): Add hash.h.
27441         * modules/human (EXTRA_DIST): Add human.h.
27442         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
27443         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
27444         * modules/lchown (EXTRA_DIST): Add lchown.h.
27445         * modules/long-options (EXTRA_DIST): Add long-options.h.
27446         * modules/lstat (EXTRA_DIST): Add lstat.h.
27447         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
27448         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
27449         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
27450         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
27451         * modules/memxor (EXTRA_DIST): Add memxor.h.
27452         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
27453         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
27454         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
27455         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
27456         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
27457         * modules/physmem (EXTRA_DIST): Add physmem.h.
27458         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
27459         * modules/posixver (EXTRA_DIST): Add posixver.h.
27460         * modules/quote (EXTRA_DIST): Add quote.h.
27461         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
27462         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
27463         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
27464         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
27465         regex_internal.h regexec.c.
27466         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
27467         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
27468         * modules/same (EXTRA_DIST): Add same.h.
27469         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
27470         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
27471         * modules/savedir (EXTRA_DIST): Add savedir.h.
27472         * modules/sha1 (EXTRA_DIST): Add sha1.h.
27473         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
27474         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
27475         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
27476         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
27477         * modules/strdup (EXTRA_DIST): Add strdup.h.
27478         * modules/strftime (EXTRA_DIST): Add strftime.h.
27479         * modules/strndup (EXTRA_DIST): Add strndup.h.
27480         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
27481         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
27482         * modules/time_r (EXTRA_DIST): Add time_r.h.
27483         * modules/timespec (EXTRA_DIST): Add timespec.h.
27484         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
27485         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
27486         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
27487         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
27488         * modules/userspec (EXTRA_DIST): Add userspec.h.
27489         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
27490         * modules/utimens (EXTRA_DIST): Add utimens.h.
27491         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
27492         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
27493         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
27494         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
27495         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
27496         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
27497         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
27498         * modules/yesno (EXTRA_DIST): Add yesno.h.
27499
27500 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
27501
27502         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
27503
27504         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
27505         * m4/dev-ino.m4, same-inode.m4: Remove.
27506
27507         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
27508         * m4/acl.m4 (AC_FUNC_ACL):
27509         * m4/backupfile.m4 (gl_BACKUPFILE):
27510         * m4/c-strtod.m4 (gl_C99_STRTOLD):
27511         * m4/canon-host.m4 (gl_CANON_HOST):
27512         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
27513         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
27514         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
27515         * m4/cloexec.m4 (gl_CLOEXEC):
27516         * m4/close-stream.m4 (gl_CLOSE_STREAM):
27517         * m4/closeout.m4 (gl_CLOSEOUT):
27518         * m4/dirfd.m4 (gl_FUNC_DIRFD):
27519         * m4/dirname.m4 (gl_DIRNAME):
27520         * m4/exclude.m4 (gl_EXCLUDE):
27521         * m4/exitfail.m4 (gl_EXITFAIL):
27522         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
27523         * m4/file-type.m4 (gl_FILE_TYPE):
27524         * m4/filemode.m4 (gl_FILEMODE):
27525         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
27526         * m4/fpending.m4 (gl_FUNC_FPENDING):
27527         * m4/fprintftime.m4 (gl_FPRINTFTIME):
27528         * m4/fts.m4 (gl_FUNC_FTS):
27529         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
27530         * m4/getdate.m4 (gl_GETDATE):
27531         * m4/gethrxtime.m4 (gl_GETHRXTIME):
27532         * m4/getpagesize.m4 (gl_GETPAGESIZE):
27533         * m4/getpass.m4 (gl_FUNC_GETPASS):
27534         * m4/gettime.m4 (gl_GETTIME):
27535         * m4/getugroups.m4 (gl_GETUGROUPS):
27536         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
27537         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
27538         * m4/hard-locale.m4 (gl_HARD_LOCALE):
27539         * m4/hash.m4 (gl_HASH):
27540         * m4/idcache.m4 (gl_IDCACHE):
27541         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
27542         * m4/lchown.m4 (gl_FUNC_LCHOWN):
27543         * m4/long-options.m4 (gl_LONG_OPTIONS):
27544         * m4/lstat.m4 (gl_FUNC_LSTAT):
27545         * m4/md5.m4 (gl_MD5):
27546         * m4/memcasecmp.m4 (gl_MEMCASECMP):
27547         * m4/memcoll.m4 (gl_MEMCOLL):
27548         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
27549         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
27550         * m4/memxor.m4 (gl_MEMXOR):
27551         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
27552         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
27553         * m4/modechange.m4 (gl_MODECHANGE):
27554         * m4/mountlist.m4 (gl_MOUNTLIST):
27555         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
27556         * m4/openat.m4 (gl_FUNC_OPENAT):
27557         * m4/pathmax.m4 (gl_PATHMAX):
27558         * m4/physmem.m4 (gl_PHYSMEM):
27559         * m4/posixtm.m4 (gl_POSIXTM):
27560         * m4/posixver.m4 (gl_POSIXVER):
27561         * m4/quote.m4 (gl_QUOTE):
27562         * m4/quotearg.m4 (gl_QUOTEARG):
27563         * m4/readtokens.m4 (gl_READTOKENS):
27564         * m4/readutmp.m4 (gl_READUTMP):
27565         * m4/regex.m4 (gl_REGEX):
27566         * m4/safe-read.m4 (gl_SAFE_READ):
27567         * m4/safe-write.m4 (gl_SAFE_WRITE):
27568         * m4/same.m4 (gl_SAME):
27569         * m4/save-cwd.m4 (gl_SAVE_CWD):
27570         * m4/savedir.m4 (gl_SAVEDIR):
27571         * m4/settime.m4 (gl_SETTIME):
27572         * m4/sha1.m4 (gl_SHA1):
27573         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
27574         * m4/stat-macros.m4 (gl_STAT_MACROS):
27575         * m4/stat-time.m4 (gl_STAT_TIME):
27576         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
27577         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
27578         * m4/strdup.m4 (gl_FUNC_STRDUP):
27579         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
27580         * m4/strndup.m4 (gl_FUNC_STRNDUP):
27581         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
27582         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
27583         * m4/time_r.m4 (gl_TIME_R):
27584         * m4/timespec.m4 (gl_TIMESPEC):
27585         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
27586         * m4/unlinkdir.m4 (gl_UNLINKDIR):
27587         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
27588         * m4/userspec.m4 (gl_USERSPEC):
27589         * m4/utimecmp.m4 (gl_UTIMECMP):
27590         * m4/utimens.m4 (gl_UTIMENS):
27591         * m4/xalloc.m4 (gl_XALLOC):
27592         * m4/xgetcwd.m4 (gl_XGETCWD):
27593         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
27594         * m4/xreadlink.m4 (gl_XREADLINK):
27595         * m4/xstrtod.m4 (gl_XSTRTOD):
27596         * m4/yesno.m4 (gl_YESNO):
27597         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
27598         to get the necessary .h files and whatnot.
27599
27600 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
27601             Bruno Haible  <bruno@clisp.org>
27602
27603         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
27604         /bin/sh understanding of '!' conditional negation.
27605
27606 2006-08-21  Jim Meyering  <jim@meyering.net>
27607
27608         * modules/openat (Depends-on): Really alphabetize.
27609
27610         * modules/acl (Depends-on): Add error and quote.
27611
27612         * check-module (find_included_lib_files): Add at-func.c to the
27613         ok-to-include-more-than-once white list.
27614
27615         * modules/openat (Depends-on): Add lstat.  Alphabetize.
27616
27617 2006-08-21  Bruno Haible  <bruno@clisp.org>
27618
27619         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27620         Emit a pkgdata_DATA variable only if some snippets add contents to it.
27621         Reported by Martin Lambers <marlam@marlam.de>.
27622
27623 2006-08-21  Bruno Haible  <bruno@clisp.org>
27624
27625         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
27626         specify an installation location, don't emit a noinst_LIBRARIES or
27627         noinst_LTLIBRARIES assignment.
27628
27629 2006-08-21  Bruno Haible  <bruno@clisp.org>
27630
27631         BeOS portability.
27632         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
27633         BeOS has mbrtowc() but no <wctype.h>.
27634
27635 2006-08-21  Bruno Haible  <bruno@clisp.org>
27636
27637         BeOS portability.
27638         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
27639         exist.
27640
27641 2006-08-21  Bruno Haible  <bruno@clisp.org>
27642
27643         BeOS portability.
27644         * lib/mbchar.h: Include <wctype.h> only if it exists.
27645
27646 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27647
27648         Remove files that are no longer needed by their respective modules.
27649         * m4/obstack.m4: Remove.
27650         * m4/strerror_r.m4: Remove.
27651         * m4/uint32_t.m4: Remove.
27652         * m4/uintptr_t.m4: Remove.
27653         * m4/ullong_max.m4: Remove.
27654         * m4/xstrtoimax.m4: Remove.
27655         * m4/xstrtoumax.m4: Remove.
27656
27657         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
27658         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
27659         dependencies now capture this.
27660
27661         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
27662         Do not use AC_LIBSOURCES, since gnulib modules now do this.
27663         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
27664         * m4/human.m4 (gl_HUMAN): Likewise.
27665         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
27666         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
27667
27668         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
27669
27670         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
27671         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
27672         stdint.
27673         * m4/human.m4 (gl_HUMAN): Likewise.
27674         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
27675         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
27676         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
27677         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
27678         * m4/xstrtol (gl_XSTRTOL): Likewise.
27679
27680         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
27681         AC_TYPE_LONG_LONG_INT.
27682         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
27683         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
27684         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
27685         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
27686
27687         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
27688         on stdbool.
27689
27690         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
27691         (gl_PREREQ_XSTRTOUL): Remove.
27692
27693         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
27694
27695         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
27696         mode.
27697
27698 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27699
27700         Add and change modules to make it easier for coreutils to use
27701         gnulib-tool.
27702         * modules/backupfile (Files): Remove m4/d-ino.m4.
27703         (Depends-on): Add d-ino.
27704         * modules/cycle-check (Depends-on): Add stdint.
27705         (lib_SOURCES): Add cycle-check.h.
27706         * modules/d-ino: New module.
27707         * modules/d-type: New module.
27708         * modules/error (Files): Remove m4/strerror_r.m4.
27709         * modules/filemode (Files): Add m4/st_dm_mode.m4.
27710         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
27711         m4/inttypes_h.m4, m4/uintmax_t.m4.
27712         (Depends-on): Add stdint.
27713         (lib_SOURCES): Add fsusage.h.
27714         * modules/getcwd (Files): Remove d-ino.m4.
27715         (Depends-on): Add d-ino.
27716         * modules/getndelim2 (Depends-on): Add stdint.
27717         * modules/glob (Files): Remove m4/d-type.m4.
27718         (Depends-on): Add d-type.
27719         * modules/host-os: New module.
27720         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
27721         m4/inttypes_h.m4, m4/uintmax_t.m4.
27722         * Depends-on: Add stdint.
27723         (lib_SOURCES): Add human.h.
27724         * modules/inttostr (Files): Remove m4/intmax_t.m4,
27725         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
27726         m4/uintmax_t.m4, m4/ulonglong.m4.
27727         (Depends-on): Add stdint.
27728         (EXTRA_DIST): Add inttostr.h.
27729         * modules/lchmod: New module.
27730         * modules/link-follow: New module.
27731         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
27732         (Depends-on): Add lchmod.
27733         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
27734         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
27735         (Depends-on): Add stdint.
27736         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
27737         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
27738         (Depends-on): Add stdint.
27739         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
27740         * modules/perl: New module.
27741         * modules/regex (Depends-on): Add stdint.
27742         * modules/rmdir-errno: New module.
27743         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
27744         m4/intmax_t.m4.
27745         (Depends-on): Add stdint.
27746         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
27747         m4/uintmax_t.m4.
27748         (Depends-on): Add stdint.
27749         * modules/unlink-busy: New module.
27750         * modules/utimecmp (Depends-on): Add stdint.
27751         * modules/uptime: New module.
27752         * modules/winsz-ioctl: New module.
27753         * modules/winsz-termios: New module.
27754         * modules/xnanosleep (Depends-on): Add nanosleep.
27755         * modules/ullong_max: Remove.
27756         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
27757         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
27758         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
27759         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
27760         (Depends-on): Add inttypes.
27761         (lib_SOURCES): Add xstrtol.h.
27762         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
27763         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
27764         * MODULES.html.sh: Move 'assert' into the assert section.
27765         Move 'dummy' into the linking section.
27766         Remove ullong_max.
27767         Add section for compatibility checks for POSIX:2001 functions,
27768         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
27769         winsz-ioctl, and winsz-termios into it.
27770         Add lchmod.
27771         Add top-level Misc section and put host-os, perl, and uptime
27772         into it.
27773
27774 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
27775
27776         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
27777         now assume the stdint module.  Do not include inttypes.h.
27778         * lib/fsusage.h: Likewise.
27779         * lib/getndelim2.c: Likewise.
27780         * lib/human.h: Likewise.
27781         * lib/inttostr.h: Likewise.
27782         * lib/obstack.c: Likewise.
27783         * lib/regex_internal.h: Likewise.
27784         * lib/tempname.c: Likewise.
27785         * lib/utimecmp.c: Likewise.
27786         * lib/xstrtol.h: Likewise.
27787
27788         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
27789
27790         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
27791         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
27792         * lib/xtime.h: Likewise.
27793
27794 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27795
27796         * modules/openat (Files): Add lib/fchmodat.c.
27797         Fixes problem reported by Jay Youngman.
27798
27799 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
27800
27801         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
27802         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
27803
27804 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27805             Bruno Haible  <bruno@clisp.org>
27806
27807         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
27808         and is a script that invokes bison. Tighten the code. Add comments.
27809
27810 2006-08-18  Jim Meyering  <jim@meyering.net>
27811
27812         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
27813         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
27814         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
27815         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
27816
27817 2006-08-18  Bruno Haible  <bruno@clisp.org>
27818
27819         * modules/bison-i18n: New file.
27820         * MODULES.html.sh (Internationalization functions): Add it.
27821
27822 2006-08-18  Bruno Haible  <bruno@clisp.org>
27823
27824         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
27825         sys/statvfs.h. When getmntinfo was found, check its declaration and
27826         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
27827
27828 2006-08-18  Bruno Haible  <bruno@clisp.org>
27829
27830         * m4/bison-i18n.m4: New file, from bison.
27831
27832 2006-08-18  Bruno Haible  <bruno@clisp.org>
27833
27834         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
27835         (ME_DUMMY): Treat "kernfs" as a dummy.
27836         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
27837
27838 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27839
27840         Update from coreutils.
27841
27842         2006-08-15  Jim Meyering  <jim@meyering.net>
27843
27844         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
27845
27846         2006-01-17  Jim Meyering  <jim@meyering.net>
27847
27848         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
27849
27850         2006-01-11  Jim Meyering  <jim@meyering.net>
27851
27852         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
27853         Check for the lchmod function.
27854
27855 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27856
27857         Update from coreutils.
27858
27859         * lib/__fpending.h: Add copyright notice.
27860         * lib/fprintftime.h: Likewise.
27861         * lib/savedir.c: Use (C) in copyright notice.
27862         * lib/savedir.h: Likewise.
27863
27864         2006-08-15  Jim Meyering  <jim@meyering.net>
27865
27866         * lib/at-func.c: New file, with the logic of all emulated at-functions.
27867         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
27868         in support of the EXPECTED_ERRNO macro.
27869         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
27870         definitions.  Instead, define the appropriate symbols and include
27871         "at-func.c".
27872         * lib/mkdirat.c (mkdirat): Likewise.
27873         * lib/fchmodat.c (fchmodat): Likewise.
27874         (ENOSYS): Remove definition.
27875         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
27876         it.  Don't include "unistd--.h" -- it wasn't ever used.
27877
27878         2006-01-17  Jim Meyering  <jim@meyering.net>
27879
27880         Rewrite fts.c not to change the current working directory,
27881         by using openat, fstatat, fdopendir, etc..
27882
27883         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
27884         (HAVE_OPENAT_SUPPORT): Define.
27885         [_LIBC] (fchdir): Don't undef or define; no longer used.
27886         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
27887         Now, this `function' always succeeds, and consumes its file descriptor
27888         parameter -- so callers must not close such FDs.  Update callers.
27889         (diropen_fd, opendirat, cwd_advance_fd): New functions.
27890         (diropen): Add parameter, SP.  Adjust all callers.
27891         Implement using diropen_fd, rather than open.
27892         (fts_open): Initialize new member, fts_cwd_fd.
27893         Remove fts_rft-setting code.
27894         (fts_close): Close fts_cwd_fd, if necessary.
27895         (__opendir2): Define in terms of opendir or opendirat,
27896         depending on whether the FST_NOCHDIR flag is set.
27897         (fts_build): Since fts_safe_changedir consumes its FD, and since
27898         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
27899         and close the dup'd file descriptor upon failure.
27900         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
27901         (fts_safe_changedir): Tweak semantics to reflect that this function
27902         now calls cwd_advance_fd and hence consumes its FD argument.
27903         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
27904         [struct FTS] (fts_rft): Remove now-unused member.
27905         [struct FTS] (fts_cycle.state): Improve comment.
27906
27907         * lib/openat.c (openat_needs_fchdir): New function.
27908         * lib/openat.h (openat_needs_fchdir): Declare it.
27909
27910 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27911
27912         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
27913         Problem and fix reported by Pádraig Brady in
27914         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
27915
27916 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27917
27918         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
27919
27920 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27921
27922         * lib/memcoll.c (memcoll): Optimize for the common case where the
27923         arguments are bytewise equal.
27924
27925 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27926
27927         * doc/regexprops-generic.texi: Add a copyright notice.
27928
27929 2006-08-15  Bruno Haible  <bruno@clisp.org>
27930
27931         * modules/tmpdir (License): Change to LGPL.
27932
27933 2006-08-15  Bruno Haible  <bruno@clisp.org>
27934
27935         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
27936         module.
27937
27938 2006-08-14  Simon Josefsson  <jas@extundo.com>
27939
27940         * config/srclist.txt: Add gnupload.
27941
27942 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27943
27944         Change copyright notice from LGPL 2 to GPL 2, since that's the
27945         standard form used in the gnulib repository.
27946         * tests/test-lock.c: Likewise.
27947         * tests/test-stdint.c: Likewise.
27948         * tests/test-tls.c: Likewise.
27949
27950         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
27951         prelude-manager.  User shorter URLs for GNU projects, without '?'.
27952         Add copyright notice.
27953
27954         * check-module: Add copyright notice.  Output a copyright
27955         notice if "--version" is specified.
27956         * modules/COPYING: New file.
27957         * tests/test-getaddrinfo.c: Add copyright notice.
27958         * tests/test-verify.c: Likewise.
27959
27960 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27961
27962         Change copyright notice from LGPL 2 to GPL 2, since that's the
27963         standard form used in the gnulib repository.
27964         * lib/lock.c: LGPL -> GPL.
27965         * lib/lock.h: Likewise.
27966         * lib/strnlen1.c: Likewise.
27967         * lib/strnlen1.h: Likewise.
27968         * lib/tls.c: Likewise.
27969         * lib/tls.h: Likewise.
27970         * lib/tmpdir.c: Likewise.
27971
27972         * lib/TODO: Remove; this belongs only in coreutils.
27973
27974 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27975
27976         Add copyright notices to long-enough files that lack them, since
27977         otherwise the files aren't clearly free.  Use the same notice that
27978         getdate.texi already uses.
27979         * doc/alloca-opt.texi: Add copyright notice.
27980         * doc/alloca.texi: Likewise.
27981         * doc/ctime.texi: Likewise.
27982         * doc/functions.texi: Likewise.
27983         * doc/gcd.texi: Likewise.
27984         * doc/gnulib-tool.texi: Likewise.
27985         * doc/inet_ntoa.texi: Likewise.
27986         * doc/visibility.texi: Likewise.
27987
27988         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
27989         * doc/quote.texi: Add copyright notice.
27990
27991         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
27992         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
27993         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
27994         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
27995         is now obsolete, and give a pointer to the Sun list.
27996         Add copyright notice.
27997
27998 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27999
28000         * config/srclistvars.sh: Add copyright notice.
28001
28002 2006-08-14  Eric Blake  <ebb9@byu.net>
28003
28004         Import the following change from libc:
28005
28006         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
28007
28008         Upstream bug 2997.
28009         * lib/misc/error.c: Add space between program name and message if file
28010         name is missing.
28011
28012 2006-08-12  Karl Berry  <karl@gnu.org>
28013
28014         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
28015         remove, these originate in gnulib now.
28016
28017 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28018
28019         * doc/Makefile (standards.info standards.html standards.dvi):
28020         Also depend on make-stds.texi.
28021
28022 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
28023
28024         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
28025         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
28026
28027         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
28028         in wchar_t.  Problem reported by Eric Blake.
28029
28030         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
28031         LEN is smaller than SIZE.  Suggested by Bruno Haible.
28032         Also, help the compiler to keep LEN in a register.
28033
28034 2006-08-11  Eric Blake  <ebb9@byu.net>
28035
28036         * users.txt: Sort.  Add tar.
28037
28038 2006-08-11  Bruno Haible  <bruno@clisp.org>
28039
28040         * users.txt: New file.
28041
28042 2006-08-11  Bruno Haible  <bruno@clisp.org>
28043
28044         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
28045         before <wchar.h>. Needed for OSF/1 and BSD/OS.
28046
28047 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
28048
28049         * modules/snprintf (Depends-on): Remove minmax.
28050         (Maintainer): Add self and Bruno.
28051
28052 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
28053
28054         * lib/.cppi-disable: Add snprintf.h, socket_.h.
28055         * lib/snprintf.c: Include <errno.h> and <limits.h>.
28056         (EOVERFLOW): Define if the system does not.
28057         Do not include "minmax.h"; it wasn't used.
28058         (snprintf): Don't assume size_t promotes to an unsigned type.
28059         Fix bug when generated string was too long for the buffer: the
28060         buffer's contents are supposed to be the initial prefix of the
28061         output.  Don't assume vasnprintf returns EOVERFLOW if the size
28062         exceeds INT_MAX; do the check ourselves.
28063
28064         Import the following changes from libc:
28065
28066         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
28067
28068         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
28069         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
28070         set wc to the byte which couldn't be converted.
28071         (re_string_reconstruct): Don't clear valid_raw_len before calling
28072         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
28073         tip_context using re_string_context_at.
28074
28075         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
28076
28077         * lib/posix/regex.h: g++ still cannot handled [restrict].
28078
28079         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
28080
28081         * lib/posix/regex.h: Remove special handling for VMS.
28082
28083 2006-08-10  Jim Meyering  <jim@meyering.net>
28084
28085         * modules/same-inode: New module.
28086         * modules/dev-ino: New module.
28087         * modules/cycle-check: Depend on these modules, rather than simply
28088         including their .h files.
28089         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
28090         required via m4/cycle-check.m4.
28091         * modules/same: Depend on new same-inode module, rather than
28092         including same-inode.h.
28093         * modules/chdir-safer: New file.
28094
28095         * modules/chown (Depends-on): Add stat-macros.
28096
28097 2006-08-10  Jim Meyering  <jim@meyering.net>
28098
28099         * m4/cycle-check.m4: New file.
28100         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
28101         * m4/dev-ino.m4, m4/same-inode.m4: New files.
28102
28103 2006-08-10  Eric Blake  <ebb9@byu.net>
28104
28105         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
28106         in from original proposal.
28107
28108 2006-08-10  Eric Blake  <ebb9@byu.net>
28109         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
28110
28111         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
28112         namespace.
28113
28114 2006-08-10  Bruno Haible  <bruno@clisp.org>
28115
28116         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
28117         as well.
28118
28119 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28120
28121         Sync from coreutils.
28122
28123         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
28124
28125         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
28126         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
28127
28128 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28129
28130         * modules/restrict: Remove; no longer needed now that we assume
28131         Autoconf 2.59 or later.
28132         * MODULES.html.sh: Remove 'restrict'.
28133         * modules/argp (Depends-on): Remove 'restrict'.
28134         * modules/base64 (Depends-on): Likewise.
28135         * modules/gc (Depends-on): Likewise.
28136         * modules/getaddrinfo (Depends-on): Likewise.
28137         * modules/glob (Depends-on): Likewise.
28138         * modules/inet_ntop (Depends-on): Likewise.
28139         * modules/inet_pton (Depends-on): Likewise.
28140         * modules/memxor (Depends-on): Likewise.
28141         * modules/regex (Depends-on): Likewise.
28142         * modules/strtok_r (Depends-on): Likewise.
28143         * modules/time_r (Depends-on): Likewise.
28144
28145 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28146
28147         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
28148         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
28149         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
28150         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
28151         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
28152         * m4/memxor.m4 (gl_MEMXOR): Likewise.
28153         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
28154         gl_C_RESTRICT replaced by AC_C_RESTRICT.
28155
28156         Merge from coreutils.
28157         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
28158         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
28159         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
28160         * m4/time_r.m4 (gl_TIME_R): Likewise.
28161
28162 2006-08-09  Karl Berry  <karl@gnu.org>
28163
28164         * config/srclist.txt: no more gettext-tools, per Bruno.
28165
28166 2006-08-08  Eric Blake  <ebb9@byu.net>
28167
28168         * modules/verror: New module.
28169         * MODULES.html.sh: Document it.
28170
28171 2006-08-08  Eric Blake  <ebb9@byu.net>
28172
28173         * lib/verror.h, lib/verror.c: New files.
28174
28175 2006-08-08  Eric Blake  <ebb9@byu.net>
28176
28177         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
28178         verror_at_line output complies with GNU Coding Standards even when
28179         file is NULL.
28180
28181 2006-08-07  Bruno Haible  <bruno@clisp.org>
28182
28183         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
28184         versions of AIX.
28185         Reported by Ralf Wildenhues.
28186
28187 2006-08-07  Bruno Haible  <bruno@clisp.org>
28188
28189         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
28190         in an AC_DEFUN. Needed so that the autoconf snippets can use
28191         AC_REQUIRE.
28192
28193 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28194
28195         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28196         Initialize pkgdata_DATA.
28197         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
28198         overriding it.
28199
28200 2006-08-06  Eric Blake  <ebb9@byu.net>
28201
28202         * lib/error.h: Fold in some upstream changes from glibc.
28203         * lib/error.c: Likewise.
28204
28205 2006-08-04  Bruno Haible  <bruno@clisp.org>
28206
28207         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28208         Make the mostlyclean-local rule depend on mostlyclean-generic.
28209         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
28210
28211 2006-07-31  Bruno Haible  <bruno@clisp.org>
28212
28213         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
28214         <stdlib.h>, <string.h>.
28215
28216 2006-07-30  Bruno Haible  <bruno@clisp.org>
28217
28218         * modules/readlink (License): Change to LGPL.
28219
28220 2006-07-30  Bruno Haible  <bruno@clisp.org>
28221
28222         * modules/javaversion (Makefile.am): Distribute javaversion.java and
28223         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
28224         set PKGDATADIR to point to it.
28225
28226 2006-07-30  Bruno Haible  <bruno@clisp.org>
28227
28228         * modules/csharpexec (configure.ac): Comment out macro invocation.
28229         * modules/javaexec (configure.ac): Likewise.
28230         * modules/javacomp-script (configure.ac): Likewise.
28231
28232         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
28233
28234 2006-07-30  Bruno Haible  <bruno@clisp.org>
28235
28236         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
28237         linked-list.
28238
28239 2006-07-30  Bruno Haible  <bruno@clisp.org>
28240
28241         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
28242
28243 2006-07-30  Bruno Haible  <bruno@clisp.org>
28244
28245         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28246         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
28247         get removed.
28248
28249 2006-07-29  Bruno Haible  <bruno@clisp.org>
28250
28251         Make it possible for gnulib-tool to work with locally modified or
28252         augmented gnulib repositories.
28253         * gnulib-tool (func_usage): Document --local-dir option.
28254         (local_gnulib_dir): New variable.
28255         Handle --local-dir option.
28256         (func_lookup_file): New function.
28257         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
28258         (func_get_description, func_get_filelist, func_get_description,
28259         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
28260         func_get_automake_snippet, func_get_include_directive,
28261         func_get_license, func_get_maintainer): Use func_lookup_file.
28262         (func_import, func_create_testdir): Use func_lookup_file.
28263
28264 2006-07-29  Bruno Haible  <bruno@clisp.org>
28265
28266         * modules/setenv (Depends-on): Add unistd.
28267
28268 2006-07-29  Bruno Haible  <bruno@clisp.org>
28269
28270         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
28271
28272 2006-07-29  Bruno Haible  <bruno@clisp.org>
28273
28274         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
28275
28276 2006-07-29  Bruno Haible  <bruno@clisp.org>
28277
28278         * gnulib-tool (import, update): If there is no Makefile.am, look at
28279         aclocal.m4, instead of bailing out.
28280
28281 2006-07-29  Bruno Haible  <bruno@clisp.org>
28282
28283         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
28284         Categorize the options by when they are useful.
28285
28286 2006-07-29  Bruno Haible  <bruno@clisp.org>
28287
28288         * gnulib-tool (func_usage): Document option --no-libtool.
28289         Handle option --no-libtool.
28290         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
28291         for changed semantics of $libtool variable.
28292         (func_import): Likewise. If libtool is not used, show this through
28293         an option --no-libtool.
28294         (func_create_testdir): Update.
28295
28296 2006-07-29  Bruno Haible  <bruno@clisp.org>
28297
28298         * gnulib-tool (func_import): Extend error message about missing
28299         --doc-base.
28300
28301 2006-07-29  Bruno Haible  <bruno@clisp.org>
28302
28303         * gnulib-tool (func_import): Don't create the $docbase directory if
28304         there is no file to store there.
28305
28306 2006-07-29  Bruno Haible  <bruno@clisp.org>
28307
28308         * gnulib-tool (autoconf_minversion): If a --dir option is given and
28309         relevant, look for configure.ac there, not in the current directory.
28310         Also use a simple search for AC_PREREQ, not "autoconf --trace".
28311
28312 2006-07-29  Bruno Haible  <bruno@clisp.org>
28313
28314         * gnulib-tool (SORT): New variable.
28315         (func_usage): Undocument --assume-autoconf option.
28316         Remove --assume-autoconf option handling.
28317         (autoconf_minversion): Determine from the contents of configure.ac.
28318         (func_import): Remove autoconf_minversion handling.
28319         Suggested by Eric Blake.
28320
28321 2006-07-29  Bruno Haible  <bruno@clisp.org>
28322
28323         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
28324
28325 2006-07-29  Bruno Haible  <bruno@clisp.org>
28326
28327         * config/srclist.txt (*setenv.[ch]): Remove rules.
28328
28329 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28330
28331         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
28332
28333 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28334
28335         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
28336         arpa/inet.h.
28337
28338 2006-07-28  Simon Josefsson  <jas@extundo.com>
28339
28340         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
28341         * modules/inet_pton (Depends-on): Likewise.
28342
28343 2006-07-28  Simon Josefsson  <jas@extundo.com>
28344
28345         * m4/netinet_in_h.m4: New file.
28346
28347 2006-07-28  Simon Josefsson  <jas@extundo.com>
28348
28349         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
28350         #include's.
28351
28352 2006-07-28  Simon Josefsson  <jas@extundo.com>
28353
28354         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
28355         #include's.
28356
28357 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
28358
28359         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
28360         setgid on directories only if they set these bits.
28361         * lib/modechange.h: Remove obsolete comment about masks.
28362
28363 2006-07-28  Eric Blake  <ebb9@byu.net>
28364
28365         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
28366         macro expansion.
28367
28368 2006-07-28  Bruno Haible  <bruno@clisp.org>
28369
28370         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
28371
28372 2006-07-28  Bruno Haible  <bruno@clisp.org>
28373
28374         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
28375
28376 2006-07-28  Bruno Haible  <bruno@clisp.org>
28377
28378         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
28379         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
28380         Define fallbacks.
28381         Avoids link error on FreeBSD 4.x.
28382         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
28383
28384         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
28385         encoding.
28386         * lib/mbswidth.c (iswcntrl): Likewise.
28387
28388 2006-07-27  Bruno Haible  <bruno@clisp.org>
28389
28390         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
28391         test.
28392
28393 2006-07-27  Bruno Haible  <bruno@clisp.org>
28394
28395         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
28396         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
28397         defined.
28398
28399 2006-07-26  Eric Blake  <ebb9@byu.net>
28400
28401         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
28402
28403 2006-07-26  Eric Blake  <ebb9@byu.net>
28404
28405         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
28406         like mingw that lack mkstemp.
28407         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
28408         avoid compilation warning on mingw.
28409
28410 2006-07-26  Bruno Haible  <bruno@clisp.org>
28411
28412         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
28413         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
28414         INT_FAST*_MIN, INTPTR_MIN.
28415
28416 2006-07-25  Bruno Haible  <bruno@clisp.org>
28417
28418         * modules/version-etc (Depends-on): Add stdarg.
28419
28420 2006-07-25  Bruno Haible  <bruno@clisp.org>
28421
28422         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
28423         complex commands.
28424
28425 2006-07-25  Bruno Haible  <bruno@clisp.org>
28426
28427         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
28428         defined in <stdarg.h> or config.h.
28429
28430 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
28431
28432         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
28433         (gl_STDIO_SAFER): Remove.
28434
28435 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
28436
28437         * MODULES.html.sh (File stream based Input/Output):
28438         Add fopen-safer, tmpfile-safer; remove stdio-safer.
28439         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
28440         * modules/fopen-safer, modules/tmpfile-safer: New files.
28441         * modules/stdio-safer: Remove.
28442
28443 2006-07-24  Bruno Haible  <bruno@clisp.org>
28444
28445         * modules/tmpdir: New file.
28446         * MODULES.html.sh (File system functions): Add it.
28447
28448 2006-07-24  Bruno Haible  <bruno@clisp.org>
28449
28450         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
28451         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
28452
28453 2006-07-24  Bruno Haible  <bruno@clisp.org>
28454
28455         * modules/clean-temp: New file.
28456
28457 2006-07-24  Bruno Haible  <bruno@clisp.org>
28458
28459         * m4/tmpdir.m4: New file, from GNU gettext.
28460
28461 2006-07-24  Bruno Haible  <bruno@clisp.org>
28462
28463         * lib/tmpdir.h: New file, from GNU gettext.
28464         * lib/tmpdir.c: New file, from GNU gettext.
28465
28466 2006-07-24  Bruno Haible  <bruno@clisp.org>
28467
28468         * lib/clean-temp.h: New file, from GNU gettext.
28469         * lib/clean-temp.c: New file, from GNU gettext.
28470
28471 2006-07-23  Eric Blake  <ebb9@byu.net>
28472
28473         * modules/stdio-safer (Files): Add tmpfile-safer.c.
28474         (Depends-on): Add binary-io.
28475
28476 2006-07-23  Eric Blake  <ebb9@byu.net>
28477
28478         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
28479
28480 2006-07-23  Eric Blake  <ebb9@byu.net>
28481
28482         * lib/tmpfile-safer.c: New file.
28483         * lib/stdio-safer.h (fopen_safer): Add prototype.
28484         * lib/stdio--.h (tmpfile): Make safer.
28485
28486 2006-07-23  Bruno Haible  <bruno@clisp.org>
28487
28488         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
28489         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
28490         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
28491         gl_linked_remove_at): Use it.
28492
28493 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28494         and Simon Josefsson <jas@extundo.com>
28495
28496         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
28497
28498         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
28499
28500 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28501
28502         * modules/close-stream: New file.
28503         * modules/closeout (Description): Make it clear that it exits
28504         with a diagnostic on error.
28505         (Depends-on): Add close-stream.  Remove fpending, stdbool.
28506         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
28507
28508 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28509
28510         * m4/close-stream.m4: New file.
28511
28512 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
28513
28514         * lib/close-stream.c, lib/close-stream.h: New files.
28515
28516 2006-07-22  Bruno Haible  <bruno@clisp.org>
28517
28518         Merge from GNU gettext 0.15.
28519
28520         2006-05-01  Bruno Haible  <bruno@clisp.org>
28521
28522                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
28523
28524         2006-07-22  Bruno Haible  <bruno@clisp.org>
28525
28526                 * modules/javaversion: New file.
28527                 * MODULES.html.sh (Java): Add javaversion.
28528
28529         2006-03-12  Bruno Haible  <bruno@clisp.org>
28530
28531                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
28532
28533         2005-12-04  Bruno Haible  <bruno@clisp.org>
28534
28535                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
28536                 (untested).
28537
28538         2006-06-21  Bruno Haible  <bruno@clisp.org>
28539
28540                 Avoid warnings from recent versions of mcs.
28541                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
28542                 -o, -L, -r any more. Use options documented since mcs-1.0
28543                 instead. Similarly for -g.
28544
28545         2005-12-04  Bruno Haible  <bruno@clisp.org>
28546
28547                 * build-aux/csharpcomp.sh.in: Suffix for resources is
28548                 .resources, not .resource.
28549
28550         2005-07-09  Bruno Haible  <bruno@clisp.org>
28551
28552                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
28553                 add a .dll suffix.
28554                 Reported by Mark Junker <mjscod@gmx.de>.
28555
28556         2006-07-22  Bruno Haible  <bruno@clisp.org>
28557
28558                 * modules/gettext: Upgrade to gettext-0.15.
28559                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
28560                 m4/visibility.m4.
28561                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
28562
28563 2006-07-22  Bruno Haible  <bruno@clisp.org>
28564
28565         Merge from GNU gettext 0.15.
28566
28567         2006-03-25  Bruno Haible  <bruno@clisp.org>
28568
28569                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
28570
28571         2006-07-21  Bruno Haible  <bruno@clisp.org>
28572
28573                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
28574                 "1.1".
28575
28576         2006-05-09  Bruno Haible  <bruno@clisp.org>
28577
28578                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
28579                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
28580                 for the conftestver execution.
28581
28582         2006-05-01  Bruno Haible  <bruno@clisp.org>
28583
28584                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
28585                 optional target-version argument. Verify that the compiler
28586                 groks source of the specified source-version, or add -source
28587                 option as necessary. Verify that the compiler produces
28588                 bytecode in the specified target-version, or add -target and
28589                 -source options as necessary. Make the result of the test
28590                 available as variable CONF_JAVAC. Also log error output in
28591                 config.log.
28592
28593         2006-03-11  Bruno Haible  <bruno@clisp.org>
28594
28595                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
28596
28597         2006-05-09  Bruno Haible  <bruno@clisp.org>
28598
28599                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
28600                 CLASSPATH_SEPARATOR to a semicolon.
28601
28602         2006-03-12  Bruno Haible  <bruno@clisp.org>
28603
28604                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
28605                 available as variable CONF_JAVA, for subsequent autoconf
28606                 tests. Also log error output in config.log.
28607
28608         2006-07-19  Bruno Haible  <bruno@clisp.org>
28609
28610                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
28611                 that getline works on glibc2 systems. Needed to avoid trouble
28612                 in relocatable.c.
28613                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
28614
28615         2005-12-04  Bruno Haible  <bruno@clisp.org>
28616
28617                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
28618                 launcher (untested).
28619
28620         2005-12-04  Bruno Haible  <bruno@clisp.org>
28621
28622                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
28623
28624         2006-07-22  Bruno Haible  <bruno@clisp.org>
28625
28626                 * gettext.m4: Update from GNU gettext-0.15.
28627                 * nls.m4: Likewise.
28628                 * po.m4: Likewise.
28629                 * inttypes-pri.m4: Likewise.
28630                 * inttypes-h.m4: Renamed from inttypes.m4.
28631                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
28632
28633 2006-07-22  Bruno Haible  <bruno@clisp.org>
28634
28635         Merge from GNU gettext 0.15.
28636
28637         2005-07-05  Bruno Haible  <bruno@clisp.org>
28638
28639                 * printf-args.c (printf_fetchargs): Work around broken
28640                 definition of wint_t on mingw.
28641
28642         2005-02-12  Bruno Haible  <bruno@clisp.org>
28643
28644                 * xallocsa.h: Add extern "C" for C++.
28645
28646         2006-05-17  Bruno Haible  <bruno@clisp.org>
28647
28648                 Cygwin portability.
28649                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
28650
28651         2006-04-30  Bruno Haible  <bruno@clisp.org>
28652
28653                 * progreloc.c: Include <mach-o/dyld.h> if available.
28654                 (find_executable): Use _NSGetExecutablePath when possible.
28655
28656         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
28657
28658                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
28659                 function.
28660
28661         2005-12-29  Bruno Haible  <bruno@clisp.org>
28662
28663                 * progreloc.c (set_program_name_and_installdir): Fix
28664                 compilation error.
28665
28666         2005-12-04  Bruno Haible  <bruno@clisp.org>
28667
28668                 Cygwin portability.
28669                 * progreloc.c: Include <windows.h> also on Cygwin.
28670                 (find_executable): Add support for Cygwin.
28671                 (set_program_name_and_installdir): Handle also platforms with
28672                 nonempty EXEEXT.
28673
28674         2006-07-11  Bruno Haible  <bruno@clisp.org>
28675
28676                 * javacomp.c: Fix a comment.
28677                 Reported by Jim Meyering.
28678
28679         2006-04-30  Bruno Haible  <bruno@clisp.org>
28680
28681                 * javacomp.h (compile_java_class): Add source_version,
28682                 target_version arguments.
28683                 * javacomp.c: Rewritten to choose only a compiler that
28684                 respects the specified source_version and target_version.
28685
28686         2006-06-27  Bruno Haible  <bruno@clisp.org>
28687
28688                 Assume correct S_ISDIR macro.
28689                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
28690
28691         2006-07-22  Bruno Haible  <bruno@clisp.org>
28692
28693                 * javaversion.h: New file, from GNU gettext.
28694                 * javaversion.c: New file, from GNU gettext.
28695                 * javaversion.java: New file, from GNU gettext.
28696                 * javaversion.class: New file, from GNU gettext.
28697
28698         2006-05-17  Bruno Haible  <bruno@clisp.org>
28699
28700                 Cygwin portability.
28701                 * javaexec.c (execute_java_class): Test for jview program
28702                 also on Cygwin.
28703
28704         2006-04-09  Bruno Haible  <bruno@clisp.org>
28705
28706                 * fatal-signal.c: Don't include string.h.
28707                 (at_fatal_signal): Use a copying loop instead of memcpy.
28708
28709         2005-12-04  Bruno Haible  <bruno@clisp.org>
28710
28711                 * csharpexec.c: Add support for 'clix' launcher (untested).
28712                 (execute_csharp_using_sscli): New function.
28713                 (execute_csharp_program): Call it.
28714
28715         2006-06-21  Bruno Haible  <bruno@clisp.org>
28716
28717                 Avoid warnings from recent versions of mcs.
28718                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
28719                 -o, -L, -r any more. Use options documented since mcs-1.0
28720                 instead. Similarly for -g.
28721
28722         2005-07-09  Bruno Haible  <bruno@clisp.org>
28723
28724                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
28725                 add a .dll suffix.
28726                 Reported by Mark Junker <mjscod@gmx.de>.
28727
28728         2006-06-17  Bruno Haible  <bruno@clisp.org>
28729
28730                 * config.charset: Update for NetBSD 3.0.
28731
28732         2006-05-17  Bruno Haible  <bruno@clisp.org>
28733
28734                 Cygwin portability.
28735                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
28736
28737         2006-05-16  Bruno Haible  <bruno@clisp.org>
28738
28739                 * localcharset.c [CYGWIN]: Include <windows.h>.
28740                 (get_charset_aliases): For Cygwin, return the same CPxxx
28741                 aliases list as under WIN32.
28742                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
28743                 the environment variables. Fall back to GetACP().
28744
28745         2006-04-05  Bruno Haible  <bruno@clisp.org>
28746
28747                 * config.charset: Update Juan Manuel Guerrero's address.
28748
28749         2005-02-12  Bruno Haible  <bruno@clisp.org>
28750
28751                 * allocsa.h: Add extern "C" for C++.
28752
28753         2005-02-10  Bruno Haible  <bruno@clisp.org>
28754
28755                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
28756                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
28757
28758         2006-07-22  Bruno Haible  <bruno@clisp.org>
28759
28760                 * gettext.h: Update to GNU gettext-0.15.
28761
28762 2006-07-22  Bruno Haible  <bruno@clisp.org>
28763
28764         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
28765         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
28766         lib-prefix.m4, longdouble.m4, ssize_t.m4.
28767
28768 2006-07-21  Eric Blake  <ebb9@byu.net>
28769
28770         * modules/stdlib-safer: New file.
28771         * MODULES.html.sh (File stream based Input/Output): Add
28772         stdlib-safer.
28773
28774 2006-07-21  Eric Blake  <ebb9@byu.net>
28775
28776         * lib/stdlib-safer.h: New file from coreutils, required by
28777         stdlib--.h.
28778
28779 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
28780
28781         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
28782
28783 2006-07-20  Bruno Haible  <bruno@clisp.org>
28784
28785         * gnulib-tool: Recognize new option --assume-autoconf.
28786         (autoconf_minversion): New variable.
28787         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
28788
28789 2006-07-20  Bruno Haible  <bruno@clisp.org>
28790
28791         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
28792
28793 2006-07-19  Derek R. Price  <derek@ximbiot.com>
28794
28795         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
28796         Reindent and repaginate.
28797
28798 2006-07-19  Derek Price  <derek@ximbiot.com>
28799
28800         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
28801         Correct grammar.
28802
28803 2006-07-17  Bruno Haible  <bruno@clisp.org>
28804
28805         * modules/list: New file.
28806         * modules/array-list: New file.
28807         * modules/carray-list, modules/carray-list-tests: New files.
28808         * modules/linked-list, modules/linked-list-tests: New files.
28809         * modules/avltree-list, modules/avltree-list-tests: New files.
28810         * modules/rbtree-list, modules/rbtree-list-tests: New files.
28811         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
28812         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
28813         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
28814         * modules/oset: New file.
28815         * modules/array-oset: New file.
28816         * modules/avltree-oset, modules/avltree-oset-tests: New files.
28817         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
28818         * tests/test-carray_list.c: New file.
28819         * tests/test-linked_list.c: New file.
28820         * tests/test-avltree_list.c: New file.
28821         * tests/test-rbtree_list.c: New file.
28822         * tests/test-linkedhash_list.c: New file.
28823         * tests/test-avltreehash_list.c: New file.
28824         * tests/test-rbtreehash_list.c: New file.
28825         * tests/test-avltree_oset.c: New file.
28826         * tests/test-rbtree_oset.c: New file.
28827         * MODULES.html.sh (Container data structures): New section.
28828
28829 2006-07-17  Bruno Haible  <bruno@clisp.org>
28830
28831         * m4/gl_list.m4: New file.
28832
28833 2006-07-17  Bruno Haible  <bruno@clisp.org>
28834
28835         * lib/gl_list.h: New file.
28836         * lib/gl_list.c: New file.
28837         * lib/gl_array_list.h: New file.
28838         * lib/gl_array_list.c: New file.
28839         * lib/gl_carray_list.h: New file.
28840         * lib/gl_carray_list.c: New file.
28841         * lib/gl_linked_list.h: New file.
28842         * lib/gl_linked_list.c: New file.
28843         * lib/gl_anylinked_list1.h: New file.
28844         * lib/gl_anylinked_list2.h: New file.
28845         * lib/gl_avltree_list.h: New file.
28846         * lib/gl_avltree_list.c: New file.
28847         * lib/gl_anyavltree_list1.h: New file.
28848         * lib/gl_anyavltree_list2.h: New file.
28849         * lib/gl_rbtree_list.h: New file.
28850         * lib/gl_rbtree_list.c: New file.
28851         * lib/gl_anyrbtree_list1.h: New file.
28852         * lib/gl_anyrbtree_list2.h: New file.
28853         * lib/gl_anytree_list1.h: New file.
28854         * lib/gl_anytree_list2.h: New file.
28855         * lib/gl_linkedhash_list.h: New file.
28856         * lib/gl_linkedhash_list.c: New file.
28857         * lib/gl_anyhash_list1.h: New file.
28858         * lib/gl_anyhash_list2.h: New file.
28859         * lib/gl_avltreehash_list.h: New file.
28860         * lib/gl_avltreehash_list.c: New file.
28861         * lib/gl_rbtreehash_list.h: New file.
28862         * lib/gl_rbtreehash_list.c: New file.
28863         * lib/gl_anytreehash_list1.h: New file.
28864         * lib/gl_anytreehash_list2.h: New file.
28865
28866         * lib/gl_oset.h: New file.
28867         * lib/gl_oset.c: New file.
28868         * lib/gl_array_oset.h: New file.
28869         * lib/gl_array_oset.c: New file.
28870         * lib/gl_avltree_oset.h: New file.
28871         * lib/gl_avltree_oset.c: New file.
28872         * lib/gl_rbtree_oset.h: New file.
28873         * lib/gl_rbtree_oset.c: New file.
28874         * lib/gl_anytree_oset.h: New file.
28875
28876 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28877
28878         * m4/mkancesdirs.m4: New file.
28879         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
28880         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
28881         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
28882         it.
28883
28884 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28885
28886         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
28887         * lib/mkancesdirs.h: New files.
28888         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
28889         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
28890         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
28891         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
28892         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
28893         callers changed.  Revamp internals significantly, by not
28894         attempting to create directories that are temporarily more
28895         permissive than the final results.  Do not attempt to use
28896         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
28897         This removes some race conditions, fixes some bugs, and simplifies
28898         things.  Use new dirchownmod function to do owner and mode changes.
28899         * lib/mkdir-p.h: Likewise.
28900         * lib/modechange.c (octal_to_mode): New function.
28901         (struct mode_change): New member mentioned.
28902         (make_node_op_equals): New arg mentioned.  All callers changed.
28903         (mode_compile): Keep track of which mode bits the user has explicitly
28904         mentioned.
28905         (mode_adjust): New arg DIR, so that we implement the X op correctly.
28906         New arg PMODE_BITS, to keep track of which mode bits the user
28907         mentioned; it treats S_ISUID and S_ISGID speciall.
28908         All callers changed.
28909         * lib/modechange.h: Likewise.
28910
28911 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28912
28913         * MODULES.html.sh: Add mkancestors.
28914         * modules/mkancesdirs: New module.
28915         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
28916         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
28917         The chdir-safer and afs files are now orphans; I'll remove them
28918         unless someone speaks up.
28919         Add lib/dirchownmod.c, lib/dirchownmod.h.
28920         (Depends-on): Remove alloca, chown, save-cwd, dirname.
28921         Add lchown, mkancesdirs.
28922         (Maintainer): Add self.
28923
28924 2006-07-15  Karl Berry  <karl@gnu.org>
28925
28926         * gnulib-tool: help message wording/arrangement.
28927
28928 2006-07-14  Simon Josefsson  <jas@extundo.com>
28929
28930         * doc/gnulib.texi (Libtool and Windows): New section.
28931
28932 2006-07-12  Simon Josefsson  <jas@extundo.com>
28933
28934         * modules/gendocs (License): Fix license, approved by Karl.
28935
28936 2006-07-12  Eric Blake  <ebb9@byu.net>
28937
28938         * MODULES.html.sh: Add gendocs.
28939
28940 2006-07-11  Eric Blake  <ebb9@byu.net>
28941
28942         * modules/fdl: New module, to install doc/fdl.texi.
28943         * MODULES.html.sh: Add new section for documentation modules.
28944         * gnulib-tool: Avoid space-tab.
28945         (--doc-base): New option, to manage files from doc.
28946
28947 2006-07-11  Eric Blake  <ebb9@byu.net>
28948
28949         * m4/absolute-header.m4: Fix comments to match recent change.
28950
28951 2006-07-11  Eric Blake  <ebb9@byu.net>
28952
28953         * gnulib-tool: List --doc-base before --tests-base.
28954
28955 2006-07-11  Derek R. Price  <derek@ximbiot.com>
28956
28957         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
28958
28959 2006-07-11  Bruno Haible  <bruno@clisp.org>
28960
28961         * README: Mention where to put documentation.
28962
28963 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28964
28965         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
28966
28967 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
28968
28969         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
28970         to stdint.m4.
28971
28972 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
28973
28974         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
28975         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
28976         "no/such/file/stdint.h" when there is no such file, so that
28977         the resulting C code can be parsed by dodgy compilers.
28978         Problems reported by Bob Proulx.
28979
28980 2006-07-10  Derek R. Price  <derek@ximbiot.com>
28981
28982         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
28983         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
28984         macros into the GNU _D_EXACT_NAMLEN.
28985         * lib/savedir.c:  Likewise.
28986         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
28987
28988 2006-07-10  Derek R. Price  <derek@ximbiot.com>
28989         and Paul Eggert  <eggert@cs.ucla.edu>
28990
28991         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
28992         * m4/savedir.m4:
28993         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
28994         macros into the GNU _D_EXACT_NAMLEN.
28995
28996 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
28997
28998         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
28999         around the absolute name, to work around a problem with the HP-UX
29000         11.23 native C compiler, reported by Bob Proulx.
29001
29002 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29003
29004         * doc/maintain.texi, make-stds.texi: Sync from
29005         <http://savannah.gnu.org/projects/gnustandards>.
29006
29007 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29008
29009         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
29010
29011 2006-07-09  Jim Meyering  <jim@meyering.net>
29012
29013         * m4/glob.m4: Remove a doubled word in a comment.
29014
29015 2006-07-09  Jim Meyering  <jim@meyering.net>
29016
29017         * lib/argp-pv.c: Remove a doubled word in a comment.
29018         * lib/check-version.c (check_version): Likewise.
29019         * lib/javacomp.c (compile_java_class): Likewise.
29020
29021 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29022
29023         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
29024         for the benefit of people using Autoconf 2.60.  If you want to
29025         support older Autoconf versions you can copy m4/onceonly_2_57.m4
29026         (or m4/onceonly.m4, if pre-2.57) manually.
29027
29028 2006-07-08  Jim Meyering  <jim@meyering.net>
29029
29030         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
29031         comment.
29032         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
29033         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
29034         comment.
29035
29036 2006-07-08  Jim Meyering  <jim@meyering.net>
29037
29038         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
29039
29040 2006-07-07  Simon Josefsson  <jas@extundo.com>
29041
29042         * tests/test-crc.c: Change expected crc value, the test vector
29043         were probably computed using the old broken crc.c?
29044
29045 2006-07-06  Simon Josefsson  <jas@extundo.com>
29046
29047         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
29048         now the canonical place for the M4 file).
29049
29050         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
29051         from the sys_socket dependency now.
29052
29053         * modules/inet_pton (Files): Ditto.
29054
29055         * modules/inet_ntop (Files): Ditto.
29056
29057 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
29058
29059         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
29060         not gl_PREREQ_GETUSERSHELL.
29061
29062 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29063
29064         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
29065         with only one argument, for Autoconf 2.60.
29066         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
29067         expand to nothing, so add a shell command to avoid syntax error.
29068         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
29069
29070 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29071
29072         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
29073
29074 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29075
29076         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
29077         no longer needed.  Check for isblank decl.
29078         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
29079         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
29080         of existence.
29081
29082 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29083
29084         * lib/getloadavg.c: Use __VMS, not VMS.
29085         * lib/getopt.c: Likewise.
29086         * lib/getpagesize.h: Likewise.
29087         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
29088         and probably does not work.
29089
29090 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29091
29092         * lib/.cppi-disable: Add wcwidth.
29093         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
29094         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
29095         (ISGRAPH): Remove.  All uses changed to isgraph.
29096         (FOLD) [!defined _LIBC]: Remove special case.
29097         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
29098         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
29099         HAVE_ISBLANK.
29100         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
29101         case.
29102
29103 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
29104
29105         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
29106         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
29107         brackets.  Other minor changes to suppress some compiler
29108         warnings.
29109
29110 2006-07-06  Derek R. Price  <derek@ximbiot.com>
29111         and Paul Eggert  <eggert@cs.ucla.edu>
29112
29113         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
29114         of invoking obsolescent AC_HEADER_DIRENT macro.
29115         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
29116         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
29117         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
29118         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
29119         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
29120         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
29121         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
29122         * m4/readdir.m4: Remove; no longer needed.
29123
29124 2006-07-06  Derek R. Price  <derek@ximbiot.com>
29125         and Paul Eggert  <eggert@cs.ucla.edu>
29126
29127         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
29128         Don't worry about this obsolete case any more.
29129         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
29130         directories.
29131         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
29132         worry about this obsolete case any more.
29133         * lib/fts.c: Likewise.
29134         * lib/getcwd.c: Likewise.
29135         * lib/glob.h: Likewise.
29136         * lib/savedir.c: Likewise.
29137
29138 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29139
29140         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
29141         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
29142         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
29143         needed.
29144         All uses removed.
29145         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
29146         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
29147         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
29148         needed.
29149         * m4/getdate.m4 (gl_GETDATE): Likewise.
29150         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
29151         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
29152         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
29153         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
29154         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
29155         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29156         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
29157         needed.
29158
29159 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29160
29161         * lib/memcasecmp.c: Include <limits.h>.
29162         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
29163         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
29164         Don't assume isdigit succeeds only on '0' through '9'.
29165
29166 2006-07-05  Eric Blake  <ebb9@byu.net>
29167
29168         * modules/getaddrinfo (Depends-on): Add snprintf.
29169
29170 2006-07-05  Eric Blake  <ebb9@byu.net>
29171
29172         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
29173         to avoid 'header present but could not be compiled' on cygwin.
29174
29175 2006-07-05  Eric Blake  <ebb9@byu.net>
29176
29177         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
29178         missing from netdb.h.
29179         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
29180
29181 2006-07-05  Derek R. Price  <derek@ximbiot.com>
29182
29183         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
29184         no longer needed.
29185         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
29186         * m4/getdate.m4 (gl_GETDATE): Likewise.
29187         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
29188         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
29189         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
29190         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
29191         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29192
29193 2006-07-05  Derek R. Price  <derek@ximbiot.com>
29194
29195         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
29196         All uses of is_space replaced by isspace.
29197         * lib/exit.h: Don't talk about STDC_HEADERS.
29198         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
29199         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
29200         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
29201         replaced by isprint etc.
29202         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
29203         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
29204         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
29205         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
29206         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
29207         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
29208
29209 2006-07-05  Bruno Haible  <bruno@clisp.org>
29210
29211         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
29212         the function exists, before testing against AIX.
29213         Reported by Martin Lambers <marlam@marlam.de>.
29214
29215 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
29216
29217         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
29218         From Mark D. Baushke.
29219
29220 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
29221
29222         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
29223         to the absolute name, not just one, to bypass Sun C 5.8's
29224         "warning: #include of /usr/include/... may be non-portable".
29225
29226 2006-07-04  Eric Blake  <ebb9@byu.net>
29227
29228         * modules/dirname-tests: New test module.
29229         * tests/test-dirname.c: New file, replacing dirname.c
29230         TEST_DIRNAME section that was recently deleted.
29231
29232 2006-07-04  Bruno Haible  <bruno@clisp.org>
29233
29234         Assume ANSI C header files and <ctype.h> functions.
29235         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
29236         (mbsnwidth): Use isprint, iscntrl instead.
29237
29238 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29239
29240         Merge from coreutils.
29241         * MODULES.html.sh: Add xstrtold.
29242         * modules/xstrtold: New file.
29243         * modules/cycle-check (Files): Add lib/same-inode.h.
29244         * modules/dirname (Files): Add m4/double-slash-root.m4.
29245         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
29246         * modules/mkdir-p (Files): Add lib/same-inode.h.
29247         * modules/same (Files): Add lib/same-inode.h.
29248
29249 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29250
29251         * m4/absolute-header.m4: Renamed from full-header-path.m4.
29252         This is to keep the terminology clean; POSIX talks about
29253         "absolute pathnames", not "full pathnames", but the GNU
29254         Coding Standards say to use "path" for something else;
29255         so use "absolute" to keep both sides happy.
29256         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
29257         Set gl_absolute_header, not gl_full_header_path.
29258         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
29259         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
29260         All uses changed.
29261
29262         Merge from coreutils.
29263
29264         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
29265
29266         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
29267         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
29268         want to require the building of c-strtod.o.
29269         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
29270         needs -lm directly.
29271         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
29272
29273         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29274
29275         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
29276         --as-needed option if available.  Problem reported by Albert Chin in
29277         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
29278         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
29279         cc merely issues a bunch of annoying warnings for --as-needed
29280         (this problem was reported by Bob Proulx).  Also, try linking with
29281         -lm to detect a bug in binutils 2.16 (this problem was reported
29282         by Ralf Wildenhues).
29283
29284         2006-06-18  Jim Meyering  <jim@meyering.net>
29285
29286         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
29287         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
29288         macro.
29289         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
29290         also check for glibc-2.4's abort-inducing bug.
29291
29292         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
29293         Low-probability clean-up should be to use rmdir to get rid of
29294         the just-created directory, not unlink.
29295
29296         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
29297         configure fail, and request a bug report to inform us about it.
29298         Add a comment that, barring reports to the contrary, in 2007 we'll
29299         assume ftruncate is universally available.
29300
29301         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
29302
29303         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
29304
29305         2006-03-12  Jim Meyering  <jim@meyering.net>
29306
29307         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
29308         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
29309         * m4/same.m4 (gl_SAME): Likewise.
29310         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
29311
29312         2006-03-11  Eric Blake  <ebb9@byu.net>
29313
29314         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
29315         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
29316         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
29317         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
29318
29319 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
29320
29321         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
29322         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
29323         reported by Mark D. Baushke, one in
29324         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
29325
29326         Merge from coreutils.
29327
29328         * lib/.cppi-disable: Add stdint_.h.
29329         * lib/.cvsignore: Add stdint.h.
29330
29331         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
29332
29333         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
29334         both double and long double versions.
29335         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
29336         * lib/xstrtold.c: New file.
29337         * lib/xstrtod.h (xstrtold): New decl.
29338
29339         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
29340
29341         * lib/filemode.c (setst): Remove.
29342         (strmode): Rewrite to avoid setst.  This makes the code shorter,
29343         (arguably) clearer, and the generated code is a bit smaller on my
29344         Debian GNU/Linux stable x86 host.
29345
29346         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
29347
29348         * lib/filemode.c: Include "filemode.h" first, to test the interface.
29349         Assume that filemode.h includes sys/types.h and sys/stat.h.
29350         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
29351         (ftypelet): Reorder to put common cases first, for efficiency.
29352         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
29353         to do 'M'.
29354         (strmode): Renamed from mode_string, and now stores 12 bytes instead
29355         of 10, for compatibility with FreeBSD.  All callers changed.
29356         (filemodestring): Now stores 12 bytes instead of 10, and sets file
29357         types that can't be deduced solely from st_mode.  First arg is now a
29358         const pointer.
29359         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
29360         (strmode): Renamed from mode_string.
29361         (filemodestring): New decl.
29362         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
29363         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
29364         needed.
29365         (S_ISPORT, S_ISWHT): New macros, if not already defined.
29366
29367         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
29368
29369         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
29370         fsusage.h now does that.  Include fsusage.h first, to test interface.
29371         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
29372         at most one method (the old code could have generated decls that
29373         didn't conform to C89, not that this was ever exercised).
29374         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
29375
29376         2006-03-19  Jim Meyering  <jim@meyering.net>
29377
29378         Work even in a chroot where d_ino values for entries in "/"
29379         don't match the stat.st_ino values for the same names.
29380         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
29381         number, iterate through all entries again, using lstat instead.
29382         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
29383         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
29384
29385         * lib/getcwd.c (__getcwd): Clarify a comment.
29386         Use memcpy in place of a call to strcpy.
29387
29388         2006-03-12  Jim Meyering  <jim@meyering.net>
29389
29390         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
29391         matches that of the current directory (which we're about to chdir ".."
29392         out of), then save the dev-ino of the parent, instead.
29393
29394         * lib/same-inode.h (SAME_INODE): New file/macro.
29395         * lib/chdir-safer.c (SAME_INODE): Remove definition.
29396         Include "same-inode.h", instead.
29397         * lib/same.c: Likewise.
29398         * lib/cycle-check.h: Include "same-inode.h".
29399         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
29400         * lib/cycle-check.c (SAME_INODE): Remove definition.
29401         * lib/root-dev-ino.h: Include "same-inode.h".
29402
29403         2006-03-11  Eric Blake  <ebb9@byu.net>
29404
29405         * lib/same.c (same_name): s/base_name/last_component/
29406         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
29407         * lib/filenamecat.c (file_name_concat): Likewise.
29408
29409         2006-03-11  Eric Blake  <ebb9@byu.net>,
29410                     Paul Eggert  <eggert@cs.ucla.edu>
29411
29412         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
29413         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
29414         drive prefix.
29415         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
29416         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
29417         (last_component): New method.
29418         * lib/dirname.c (dir_len): Determine when drive letters need a
29419         subsequent slash.  Preserve // when it is special.
29420         (dir_name): Don't append dot when drive letter is absolute.
29421         [TEST_DIRNAME]: Move into a full-blown gnulib test.
29422         * lib/basename.c (base_name): New semantics - malloc the result.
29423         Preserve // when it is special.  Preserve relative files that look
29424         like drive letters.
29425         (base_len): Preserve // when it is special.
29426         (last_component): New method, similar to old base_name semantics.
29427         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
29428         base_name.  Strip redundant slashes from ///.
29429
29430 2006-07-03  Jim Meyering  <jim@meyering.net>
29431
29432         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
29433         macro is used before the first cycle_check call.
29434
29435 2006-07-03  Eric Blake  <ebb9@byu.net>
29436
29437         * modules/dirname (Depends-on): Add xstrndup.
29438
29439 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29440
29441         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
29442         test cases, so that config.log is a bit easier to follow.
29443
29444 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29445
29446         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
29447         both are 64 bits, since this seems to be the tradition, and this
29448         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
29449         we ever run into a host that prefers long long to long in this
29450         case, we'll need another configure-time test.  Problem reported by
29451         Jim Meyering.
29452
29453 2006-07-02  Eric Blake  <ebb9@byu.net>
29454
29455         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
29456
29457 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29458
29459         * modules/inttypes (Depends-on): No longer depends on stdint.
29460         * modules/stdint (Description): Say more about assumptions.
29461         Say that the fast types might differ.  Say macros are used.
29462         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
29463         (Makefile.am): Revise list of substituted symbols to match
29464         new stdint.m4.
29465         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
29466         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
29467         * tests/test-stdint.c (verify_same_types)
29468         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
29469         the code conforms to C99/C89.
29470         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
29471         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
29472
29473 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29474
29475         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
29476         but fix a bug, by requiring at least 64 bits.
29477         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
29478         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
29479         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
29480         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
29481
29482         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
29483         changes.  Make 2.59 a prerequisite.  Check and substitute for
29484         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
29485         inttypes.h.  Do not use special include files; just use the
29486         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
29487         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
29488         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
29489         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
29490         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
29491         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
29492         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
29493         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
29494         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
29495         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
29496         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
29497         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
29498         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
29499         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
29500         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
29501         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
29502         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
29503         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
29504         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
29505         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
29506         WINT_MAX.  Check for C99 conformance more strictly, by detecting
29507         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
29508         not check for things that C99 does not require, e.g., int8_t.  If
29509         a test isn't needed unless <stdint.h> isn't working, and is
29510         unlikely to be needed for any other reason, then don't do it
29511         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
29512         size_t, since we assume C89 freestanding at least.  Do not check
29513         for sig_atomic_t, wchar_t, or wint_t, since the code now does
29514         the right thing even if the types are not defined.  Instead use:
29515         (gl_STDINT_TYPE_PROPERTIES): New macro.
29516         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
29517         testing whether <sys/types.h> clashes, as Autoconf does this for
29518         us now.  All uses removed.
29519         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
29520         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
29521         (gl_CHECK_TYPE_SAME):
29522         Remove; no longer needed.
29523         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
29524         exists, since we'll return 0 anyway in that case.
29525         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
29526
29527 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
29528
29529         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
29530         possible collision with system files.
29531         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
29532         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
29533         WCHAR_MIN and WCHAR_MAX in this case.
29534         (<stddef.h>): Do not include; no longer needed.
29535         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
29536         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
29537         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
29538         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
29539         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
29540         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
29541         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
29542         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
29543         !defined(__c99))]: Include in this case too, since it's harmless
29544         now.
29545         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
29546         dangerous to do so.
29547         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
29548         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
29549         (_STDINT_MIN, _STDINT_MAX): New macros.
29550         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
29551         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
29552         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
29553         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
29554         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
29555         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
29556         macros, not typedefs; this simplifies things quite a bit.
29557         Use long int for all types narrower than int64_t.
29558         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
29559         Define in terms of long long int or int64_t or long int,
29560         not int64_t or int32_t.  This saves some compile-time testing.
29561         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
29562         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
29563         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
29564         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
29565         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
29566         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
29567         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
29568         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
29569         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
29570         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
29571         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
29572         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
29573         undef any previous version and define our own version, for
29574         simplicity and consistency with the new macros for types.
29575         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
29576         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
29577         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
29578         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
29579         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
29580         @WINT_T_SUFFIX@ to keep things simple here.
29581         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
29582         Simplify by assuming typical 8/16/32/64 host, since we're
29583         already doing that elsewhere anyway.
29584         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
29585         and assume long long int is 64 bits if available.  This
29586         speeds up 'configure'.
29587
29588 2006-07-01  Eric Blake  <ebb9@byu.net>
29589
29590         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
29591         Reported by Andreas Buening.
29592
29593 2006-07-01  Eric Blake  <ebb9@byu.net>
29594
29595         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
29596
29597 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
29598
29599         * lib/getaddrinfo.c: fixed typo
29600
29601 2006-06-29  Jim Meyering  <jim@meyering.net>
29602
29603         * modules/strftime (Maintainer): Add my name, since with the
29604         FPRINTFTIME changes strftime.c has forked from glibc.
29605
29606 2006-06-29  Eric Blake  <ebb9@byu.net>
29607
29608         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
29609
29610 2006-06-29  Eric Blake  <ebb9@byu.net>
29611
29612         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
29613
29614 2006-06-29  Eric Blake  <ebb9@byu.net>
29615
29616         * lib/stat_.h: New file.
29617
29618 2006-06-29  Eric Blake  <ebb9@byu.net>
29619
29620         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
29621         unused static function.
29622
29623 2006-06-29  Eric Blake  <ebb9@byu.net>
29624
29625         * doc/functions.texi (Function Portability): Document missing lstat
29626         on mingw.
29627
29628 2006-06-29  Eric Blake  <ebb9@byu.net>
29629
29630         * MODULES.html.sh: Add sys_stat.
29631         * modules/sys_stat: New module.
29632         * modules/mkstemp (Depends-on): Add sys_stat.
29633
29634 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29635
29636         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
29637
29638 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29639
29640         * m4/c-bs-a.m4: Removed.
29641
29642 2006-06-29  Derek R. Price  <derek@ximbiot.com>
29643
29644         * lib/strftime.c: Assume strftime() exists.
29645
29646 2006-06-29  Derek Price  <derek@ximbiot.com>
29647
29648         * modules/c-bs-a: Removed - \a is C89.
29649         * MODULES.html.sh: Remove c-bs-a.
29650
29651 2006-06-29  Bruno Haible  <bruno@clisp.org>
29652
29653         * modules/wcwidth (License): Change to LGPL.
29654
29655 2006-06-28  Simon Josefsson  <jas@extundo.com>
29656
29657         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
29658         on _WIN32.
29659
29660         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
29661         getnameinfo.
29662
29663 2006-06-28  Simon Josefsson  <jas@extundo.com>
29664
29665         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
29666
29667 2006-06-28  Simon Josefsson  <jas@extundo.com>
29668
29669         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
29670         functions there.  It will succeed on Windows XP, but on Windows
29671         2000 and (presumably) earlier, it will fail, and use the internal
29672         re-implementation.
29673         (use_win32_p): New function.
29674         (getaddrinfo): Use strtoul on servname, to support numeric ports.
29675         Support AI_NUMERICSERV to disable getservbyname.
29676         (getnameinfo): New function, only supports
29677         NI_NUMERICHOST|NI_NUMERICSERV for now.
29678
29679         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
29680         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
29681         getnameinfo.
29682
29683 2006-06-28  Eric Blake  <ebb9@byu.net>
29684
29685         * modules/wcwidth: New file.
29686         * modules/mbchar (Depends-on): Add wcwidth.
29687         * modules/mbswidth (Depends-on): Add wcwidth.
29688         * MODULES.html.sh: Add wcwidth.
29689
29690 2006-06-28  Eric Blake  <ebb9@byu.net>
29691
29692         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
29693         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
29694
29695 2006-06-28  Eric Blake  <ebb9@byu.net>
29696
29697         * lib/xvasprintf.h: Fix comments.
29698
29699 2006-06-28  Eric Blake  <ebb9@byu.net>
29700
29701         * lib/mbchar.h (wcwidth): Include wcwidth.h.
29702         * lib/mbswidth.c (wcwidth): Move from here...
29703         * lib/wcwidth.h: ...to this new file.
29704
29705 2006-06-28  Derek R. Price  <derek@ximbiot.com>
29706
29707         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
29708
29709         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
29710         it's obsolete.
29711         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
29712
29713 2006-06-28  Derek R. Price  <derek@ximbiot.com>
29714
29715         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
29716         Autoconf 2.60 says this stuff was obsolete.
29717
29718 2006-06-28  Bruno Haible  <bruno@clisp.org>
29719
29720         * modules/wcwidth (Files): Add m4/wchar_t.m4.
29721
29722 2006-06-28  Bruno Haible  <bruno@clisp.org>
29723
29724         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
29725         gt_TYPE_WCHAR_T.
29726
29727 2006-06-28  Bruno Haible  <bruno@clisp.org>
29728
29729         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
29730         declaration for wcwidth.
29731         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
29732
29733 2006-06-28  Bruno Haible  <bruno@clisp.org>
29734
29735         * lib/mkdtemp.c [MINGW]: Include <io.h>.
29736         (mkdir): Define using _mkdir.
29737
29738 2006-06-28  Bruno Haible  <bruno@clisp.org>
29739
29740         * lib/getaddrinfo.h: Fix POSIX URL.
29741         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
29742         _WIN32.
29743         (use_win32_p): Make static.
29744         (getaddrinfo): Reject service name if it is empty or does not consist
29745         solely of decimal digits, or if its value is > 65535.
29746         (getnameinfo): Remove useless casts.
29747
29748 2006-06-27  Simon Josefsson  <jas@extundo.com>
29749
29750         * modules/sys_select: New file, suggested by Bruno Haible, Paul
29751         Eggert and Martin Lambers.
29752
29753 2006-06-27  Simon Josefsson  <jas@extundo.com>
29754
29755         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
29756         Eggert and Martin Lambers.
29757
29758 2006-06-27  Bruno Haible  <bruno@clisp.org>
29759
29760         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
29761         result to 0, not to empty.
29762         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
29763
29764 2006-06-27  Bruno Haible  <bruno@clisp.org>
29765
29766         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
29767
29768 2006-06-26  Simon Josefsson  <jas@extundo.com>
29769
29770         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
29771         present.
29772
29773 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
29774
29775         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
29776         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
29777         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
29778
29779 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
29780
29781         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
29782
29783 2006-06-26  Bruno Haible  <bruno@clisp.org>
29784
29785         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
29786
29787 2006-06-26  Bruno Haible  <bruno@clisp.org>
29788
29789         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
29790
29791 2006-06-26  Bruno Haible  <bruno@clisp.org>
29792
29793         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
29794         SGI C compiler in pre-C99 mode.
29795         Suggested by Mark D. Baushke and Larry Jones.
29796
29797 2006-06-26  Bruno Haible  <bruno@clisp.org>
29798
29799         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
29800         WCHAR_MAX.
29801         Reported by Mark D. Baushke and Larry Jones.
29802
29803 2006-06-26  Bruno Haible  <bruno@clisp.org>
29804
29805         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
29806         in pre-C99 mode.
29807         Suggested by Mark D. Baushke and Larry Jones.
29808
29809 2006-06-23  Simon Josefsson  <jas@extundo.com>
29810             Bruno Haible  <bruno@clisp.org>
29811
29812         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
29813         Emit mostlyclean-local rule.
29814         (func_emit_tests_Makefile_am): Likewise.
29815         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
29816
29817 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
29818
29819         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
29820
29821 2006-06-23  Bruno Haible  <bruno@clisp.org>
29822
29823         * tests/test-stdint.c: Update to match ISO C 99 Technical
29824         Corrigendum 1.
29825
29826 2006-06-23  Bruno Haible  <bruno@clisp.org>
29827
29828         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
29829
29830 2006-06-23  Bruno Haible  <bruno@clisp.org>
29831
29832         * lib/stdint_.h: Treat IRIX like OpenBSD.
29833
29834 2006-06-23  Bruno Haible  <bruno@clisp.org>
29835
29836         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
29837         ISO C 99 Technical Corrigendum 1.
29838
29839 2006-06-22  Simon Josefsson  <jas@extundo.com>
29840
29841         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
29842         MinGW.
29843
29844 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
29845
29846         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
29847         needed.  Some compiler complained about some of them.  Problem reported
29848         by Larry Jones in
29849         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
29850
29851 2006-06-21  Simon Josefsson  <jas@extundo.com>
29852
29853         * tests/test-getaddrinfo.c: New file.
29854
29855         * modules/getaddrinfo-tests: New file.
29856
29857         * MODULES.html.sh: Add inet_pton.
29858
29859         * modules/inet_pton: New file.
29860
29861 2006-06-21  Simon Josefsson  <jas@extundo.com>
29862
29863         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
29864         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
29865         of using the (limited) gnulib implementation on Windows XP.
29866
29867         * m4/inet_pton.m4: New file.
29868
29869 2006-06-21  Simon Josefsson  <jas@extundo.com>
29870
29871         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
29872         variable.
29873
29874         * lib/socket_.h: Don't define WINVER.
29875
29876         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
29877         slightly modified to work in gnulib.
29878
29879 2006-06-21  Simon Josefsson  <jas@extundo.com>
29880
29881         * doc/gnulib.texi (Windows sockets): Add.
29882
29883 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
29884
29885         * lib/read-file.c (fread_file): Start with buffer allocation of
29886         0 bytes rather than 1 byte; this simplifies the code.
29887         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
29888         code to free buffer and save/restore errno.
29889         (internal_read_file): Remove unused local.
29890
29891 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
29892
29893         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
29894         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
29895         Problem reported by Denis Excoffier in
29896         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
29897
29898 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29899
29900         * modules/sys_socket, modules/socklen: Include sys/types since
29901         FreeBSD 4.x's sys/socket.h needs it.
29902
29903 2006-06-19  Simon Josefsson  <jas@extundo.com>
29904
29905         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
29906
29907 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
29908
29909         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
29910
29911 2006-06-19  Bruno Haible  <bruno@clisp.org>
29912
29913         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
29914         and FULL_PATH_INTTYPES_H in angle brackets.
29915         Reported by Mark D. Baushke <mdb@gnu.org>.
29916
29917 2006-06-17  Eric Blake  <ebb9@byu.net>
29918
29919         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
29920         errno.
29921
29922 2006-06-17  Bruno Haible  <bruno@clisp.org>
29923
29924         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
29925         <sys/inttypes.h>.
29926
29927 2006-06-17  Bruno Haible  <bruno@clisp.org>
29928
29929         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
29930         whether errno is declared. Assume <errno.h> declares errno.
29931
29932 2006-06-17  Bruno Haible  <bruno@clisp.org>
29933
29934         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
29935
29936 2006-06-17  Bruno Haible  <bruno@clisp.org>
29937
29938         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
29939         problem on Solaris 2.5.1.
29940
29941 2006-06-16  Eric Blake  <ebb9@byu.net>
29942
29943         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
29944         * lib/unicodeio.c [!defined errno]: Likewise.
29945         * lib/strtol.c [!defined errno]: Likewise.
29946         * lib/strtod.c [!defined errno]: Likewise.
29947
29948 2006-06-15  Eric Blake  <ebb9@byu.net>
29949
29950         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
29951
29952 2006-06-15  Eric Blake  <ebb9@byu.net>
29953
29954         * config/srclist.txt (ssize_t.m4): Lose sync.
29955
29956 2006-06-15  Bruno Haible  <bruno@clisp.org>
29957
29958         * modules/stdint (Files): Include m4/full-header-path.m4,
29959         m4/size_max.m4, m4/wchar_t.m4.
29960         (Makefile.am): Many more substitutions.
29961         * modules/stdint-tests: New file.
29962         * tests/test-stdint.c: New file.
29963
29964 2006-06-15  Bruno Haible  <bruno@clisp.org>
29965
29966         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
29967         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
29968         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
29969         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
29970         gl_CHECK_TYPE_SAME): New macros.
29971
29972 2006-06-15  Bruno Haible  <bruno@clisp.org>
29973
29974         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
29975
29976 2006-06-15  Bruno Haible  <bruno@clisp.org>
29977
29978         * lib/stdint_.h: Rewritten to be fully auto-configured.
29979         Fixes bug on HP-UX/IA64.
29980
29981 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29982
29983         * lib/getdate.y (__attribute__): Don't define if already defined.
29984         Problem reported by Larry Jones.
29985         * lib/utimens.c (__attribute__): Likewise.
29986
29987 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
29988
29989         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
29990         reported by Andreas Schwab.
29991
29992 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29993             Bruno Haible  <bruno@clisp.org>
29994
29995         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
29996         check for the declaration of strnlen and a run test that exposes the
29997         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
29998         rpl_strndup.
29999
30000 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30001             Bruno Haible  <bruno@clisp.org>
30002
30003         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
30004
30005 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30006
30007         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
30008         compile test, for Tru64 4.0D.
30009
30010 2006-05-28  Karl Berry  <karl@gnu.org>
30011
30012         * config/srclist.txt (printf-args.c): lose sync.
30013
30014 2006-05-26  Martin Lambers  <marlam@marlam.de>
30015
30016         * lib/getpass.c: Updates the test for the native W32 API, and adds
30017         missing includes, thus fixing compilation warnings.
30018
30019 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
30020
30021         * lib/exclude.c (exclude_fnmatch): New function.
30022         (excluded_file_name): Call exclude_fnmatch.
30023         * lib/exclude.h (excluded_file_name): New prototype
30024
30025 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
30026
30027         * lib/tempname.c (small_open, large_open): New macros.
30028         (__open, __open64) [!_LIBC]: Remove.
30029         (__gen_tempname): Use small_open and large_open instead of __open
30030         and __open64.  This fixes a portability bug on HP-UX 11.11i
30031         reported by Simon Wing-Tang in
30032         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
30033
30034 2006-05-24  Bruno Haible  <bruno@clisp.org>
30035
30036         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
30037         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
30038         Reported by Thorsten Maerz <torte@netztorte.de> via
30039         Aaron Stone <aaron@serendipity.cx>.
30040
30041 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
30042
30043         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
30044         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
30045         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
30046         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
30047         not really conditional on the cache.
30048         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
30049
30050 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
30051
30052         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
30053         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
30054         (my_usleep): Don't mishandle maximum value.
30055
30056 2006-05-19  Jim Meyering  <jim@meyering.net>
30057
30058         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
30059
30060 2006-05-17  Bruno Haible  <bruno@clisp.org>
30061
30062         Cygwin portability.
30063         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
30064
30065 2006-05-17  Bruno Haible  <bruno@clisp.org>
30066
30067         * lib/stdint_.h: Fix recognition of Cygwin.
30068
30069 2006-05-15  Bruno Haible  <bruno@clisp.org>
30070
30071         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
30072         on libtool patch by Ralf Wildenhues.
30073
30074 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30075
30076         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
30077         test for C99 conformance; (bool) 0.5 is an integer constant
30078         expression, but (bool) -0.5 is not.  Problem reported by Fedor
30079         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
30080
30081 2006-05-11  Simon Josefsson  <jas@extundo.com>
30082
30083         * m4/xvasprintf.m4: Fix obvious typo.
30084
30085 2006-05-11  Jim Meyering  <jim@meyering.net>
30086
30087         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
30088         James Lemley.
30089
30090 2006-05-10  Simon Josefsson  <jas@extundo.com>
30091
30092         * lib/md4.c: Typo fix, update copyright years.
30093         (K1, K2): Don't use L because it turn computations into 64-bit on
30094         64-bit platforms.
30095
30096 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30097
30098         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
30099         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
30100         unwanted sign propagation, e.g., on hosts with 64-bit int.
30101         There still are some problems with reeelly weird theoretical hosts
30102         (e.g., 33-bit int) but it's not worth worrying about now.
30103         * lib/sha1.c (rol): Likewise.
30104         (K1, K2, K3, K4): Remove unnecessary L suffix.
30105
30106 2006-05-10  Bruno Haible  <bruno@clisp.org>
30107
30108         * lib/des.c: Cast to avoid warnings.
30109
30110 2006-05-09  Bruno Haible  <bruno@clisp.org>
30111
30112         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
30113         (Depends-on): Depend also on xsize, stdarg.
30114         (configure.ac): Add gl_XVASPRINTF.
30115
30116 2006-05-09  Bruno Haible  <bruno@clisp.org>
30117
30118         * m4/xvasprintf.m4: New file.
30119
30120 2006-05-09  Bruno Haible  <bruno@clisp.org>
30121
30122         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
30123         (EOVERFLOW): Define fallback value.
30124         (xstrcat): New function.
30125         (xvasprintf): Recognize the special case of a string concatenation.
30126
30127 2006-05-08  Eric Blake  <ebb9@byu.net>
30128
30129         * gnulib-tool (func_version): Base copyright year on CVS date.
30130         (func_emit_copyright_notice): New function.
30131         (func_emit_lib_Makefile_am): Use it.
30132         (func_emit_tests_Makefile_am): Likewise.
30133         (func_import): Likewise.
30134
30135 2006-05-08  Bruno Haible  <bruno@clisp.org>
30136
30137         * modules/stdarg: New file.
30138         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
30139
30140 2006-05-08  Bruno Haible  <bruno@clisp.org>
30141
30142         * m4/stdarg.m4: New file, from GNU gettext.
30143
30144 2006-05-08  Bruno Haible  <bruno@clisp.org>
30145
30146         * config/srclist.txt (build-aux/config.rpath): different from latest
30147         release.
30148
30149 2006-05-08  Bruno Haible  <bruno@clisp.org>
30150
30151         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
30152
30153 2006-05-05  Jim Meyering  <jim@meyering.net>
30154
30155         * m4/warning.m4: New file, derived from bison's file by the same name.
30156
30157 2006-05-03  Bruno Haible  <bruno@clisp.org>
30158
30159         * lib/stdint_.h: Shorter URL.
30160         * lib/inttypes.h: Likewise.
30161
30162 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30163
30164         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
30165
30166 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30167
30168         * lib/verify.h: Document the internals better.  Most of this change
30169         was written by Bruno Haible.
30170
30171 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30172
30173         * doc/verify.texi: New file, partly based on a proposal by
30174         Bruno Haible.
30175
30176 2006-05-02  Bruno Haible  <bruno@clisp.org>
30177
30178         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
30179         test from here...
30180         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
30181
30182 2006-04-29  Bruno Haible  <bruno@clisp.org>
30183
30184         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
30185         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
30186
30187 2006-04-29  Bruno Haible  <bruno@clisp.org>
30188
30189         * gnulib-tool: Make --update option actually work.
30190
30191 2006-04-29  Bruno Haible  <bruno@clisp.org>
30192
30193         * doc/gcd.texi: New file.
30194         * doc/gnulib.texi: Include it.
30195
30196 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
30197
30198         * lib/getdate.y (get_date): When adding relative date, start with the
30199         initial time, not with the result of the first mktime call.
30200
30201 2006-04-25  Bruno Haible  <bruno@clisp.org>
30202
30203         * gnulib-tool (func_import): Output the include directives in three
30204         blocks, sorted separately.
30205         Reported by Ben Pfaff <blp@cs.stanford.edu>.
30206
30207 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
30208
30209         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
30210         to define main with arguments, for C++.  Reported by Eric Blake.
30211         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
30212         Prefer 'int main ()' to 'int main (void)', for C++.
30213         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
30214         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
30215         for 'main', for C99 and C++.
30216
30217 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
30218
30219         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
30220         Don't assume that exit status -1 is valid.
30221         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
30222         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
30223         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
30224         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
30225         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
30226         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
30227         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
30228         functions can be used without declaring them, or that you can
30229         exit with status -1.
30230         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
30231
30232 2006-04-24  Karl Berry  <karl@gnu.org>
30233
30234         * config/srclist.txt (longdouble.m4): sync lost.
30235
30236 2006-04-24  Eric Blake  <ebb9@byu.net>
30237
30238         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
30239
30240 2006-04-24  Bruno Haible  <bruno@clisp.org>
30241
30242         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
30243         poll() implementation in AIX.
30244         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30245
30246 2006-04-24  Bruno Haible  <bruno@clisp.org>
30247
30248         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
30249         assigned exactly once.
30250
30251 2006-04-23  Claudio Fontana  <claudio@gnu.org>
30252             Bruno Haible  <bruno@clisp.org>
30253
30254         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
30255         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
30256         for AM_CPPFLAGS.
30257
30258 2006-04-23  Bruno Haible  <bruno@clisp.org>
30259
30260         * modules/copy-file: Depend on unistd.
30261         * modules/execute: Likewise.
30262         * modules/fatal-signal: Likewise.
30263         * modules/findprog: Likewise.
30264         * modules/mkdtemp : Likewise.
30265         * modules/pipe: Likewise.
30266         * modules/wait-process: Likewise.
30267
30268 2006-04-23  Bruno Haible  <bruno@clisp.org>
30269
30270         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
30271         condition was already detected.
30272         Reported by Ben Pfaff <blp@cs.stanford.edu>.
30273
30274 2006-04-23  Bruno Haible  <bruno@clisp.org>
30275
30276         * lib/copy-file.c: Include <unistd.h> unconditionally.
30277         * lib/execute.c: Likewise.
30278         * lib/fatal-signal.c: Likewise.
30279         * lib/findprog.c: Likewise.
30280         * lib/mkdtemp.c: Likewise.
30281         * lib/pipe.h: Likewise.
30282         * lib/pipe.c: Likewise.
30283         * lib/wait-process.h: Likewise.
30284
30285 2006-04-23  Bruno Haible  <bruno@clisp.org>
30286
30287         * gnulib-tool (func_usage): Fix --import description. Document
30288         --update.
30289         (func_import): Create temporary file in a temporary directory, if
30290         --dry-run is specified. Silence errors from 'grep' when there are no
30291         m4 files in $m4dir.
30292         (func_create_testdir): Silence errors from 'grep' when there are no
30293         m4 files in $m4dir.
30294         Reported by Karl Berry <karl@freefriends.org>.
30295
30296 2006-04-20  Bruno Haible  <bruno@clisp.org>
30297
30298         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
30299         one argument, so that the code will be portable to Autoconf 2.60.
30300         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
30301         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
30302         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
30303
30304 2006-04-19  Derek Price  <derek@ximbiot.com>
30305             Eric Blake  <ebb9@byu.net>
30306
30307         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
30308         rather than "/full/path.h".  Update comment to match.  Shorten &
30309         generalize m4_translit call via AS_TR_CPP.
30310
30311 2006-04-19  Derek Price  <derek@ximbiot.com>
30312             Eric Blake  <ebb9@byu.net>
30313
30314         * lib/inttypes.h: Correct grammar in comment.
30315
30316 2006-04-18  Derek Price  <derek@ximbiot.com>
30317             Paul Eggert  <eggert@cs.ucla.edu>
30318
30319         * modules/inttypes: New file.
30320         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
30321
30322 2006-04-18  Derek Price  <derek@ximbiot.com>
30323             Paul Eggert  <eggert@cs.ucla.edu>
30324
30325         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
30326         New files.
30327
30328 2006-04-18  Derek Price  <derek@ximbiot.com>
30329             Paul Eggert  <eggert@cs.ucla.edu>
30330
30331         * lib/inttypes.h: New file.
30332         * lib/strtoimax.c: Assume <inttypes.h>.
30333
30334 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
30335
30336         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
30337         isn't mounted.  Problem reported by Kir Kolyshkin.
30338
30339 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
30340
30341         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
30342         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
30343         Derek R. Price.
30344         * lib/regex.h (RE_DUP_MAX): Update comment to match current
30345         implementation.
30346
30347 2006-04-12  Eric Blake  <ebb9@byu.net>
30348
30349         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
30350         is now done automatically by the corresponding Autoconf macro.
30351
30352 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
30353
30354         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
30355         time_r.h.
30356
30357 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30358
30359         Merge regex changes from libc, removing some of our
30360         POSIX-conformance changes that were rejected and redoing them in a
30361         less-intrusive way.
30362
30363         * lib/regcomp.c (re_compile_internal, init_dfa):
30364         Length arg is now size_t, not Idx.  All uses changed.
30365         (peek_token): Forward decl now says internal_function.
30366         (__re_error_msgid, __re_error_msgid_idx):
30367         Now static rather than extern with attribute_hidden.
30368         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
30369         For some reason libc prefers K&R style defns for external functions.
30370         (regerror) [!defined _LIBC]: Likewise.
30371         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
30372         (seek_collating_symbol_entry, lookup_collation_sequence_value):
30373         (build_range_exp, build_collating_symbol):
30374         Use K&R-style defn.
30375         (re_compile_fastmap): Use '\0' to memset, not 0.
30376         (utf8_sb_map): Make the calculations more obvious.
30377         (init_dfa, parse_bracket_exp, build_charclass_op):
30378         Call calloc and cast result, as glibc does.
30379         (init_word_char, fetch_token, peek_token, peek_token_bracket):
30380         (build_range_exp, build_collating_symbol):
30381         Now internal functions.
30382
30383         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
30384
30385         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
30386         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
30387         Don't depend on VMS; depend on __VMS instead, for POSIX
30388         namespace cleanness.
30389         (regoff_t): Define to ssize_t, not long int.
30390
30391         Remove the REG_ macros named below.  Instead, make the old names
30392         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
30393         __USE_GNU_REGEX.
30394         (REG_BACKSLASH_ESCAPE_IN_LISTS):
30395         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
30396         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
30397         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
30398         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
30399         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
30400         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
30401         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
30402         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
30403         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
30404         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
30405         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
30406         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
30407         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
30408         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
30409         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
30410         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
30411         (REG_NREGS):
30412         Remove.  All uses replaced by the old RE_* names.
30413         (RE_BACKSLASH_ESCAPE_IN_LISTS):
30414         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
30415         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
30416         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
30417         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
30418         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
30419         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
30420         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
30421         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
30422         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
30423         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
30424         Don't bother having these macros be independent of each others'
30425         values, since they no longer exist in the POSIX name space.
30426
30427         Rename the following member names back to their old names,
30428         unless !__USE_GNU_REGEX.  All uses changed back.
30429         (buffer): Renamed from re_buffer.
30430         (allocated): Renamed from re_allocated.
30431         (used): Renamed from re_used.
30432         (syntax): Renamed from re_syntax.
30433         (fastmap): Renamed from re_fastmap.
30434         (translate): Renamed from re_translate.
30435         (can_be_null): Renamed from re_can_be_null.
30436         (regs_allocated): Renamed from re_regs_allocated.
30437         (fastmap_accurate): Renamed from re_fastmap_accurate.
30438         (no_sub): Renamed from re_no_sub.
30439         (not_bol): Renamed from re_not_bol.
30440         (not_eol): Renamed from re_not_eol.
30441         (newline_anchor): Renamed from re_newline_anchor.
30442         (num_regs): Renamed from rm_num_regs.
30443         (start): Renamed from rm_start.
30444         (end): Renamed from rm_end.
30445
30446         (free_state): Move up a bit.
30447
30448         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
30449         #define to be empty.
30450         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
30451         when that is what is intended.
30452         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
30453         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
30454         (MAX): New macro.
30455         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
30456         All uses changed back to re_malloc, etc.  It's now the caller's
30457         responsibility to check for overflow; all callers changed.
30458         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
30459         (re_x2nrealloc): Remove.
30460         (free_state): Remove decl.
30461
30462         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
30463         (re_set_registers, re_exec):
30464         Use K&R-style defn.
30465
30466         2006-01-31  Roland McGrath  <roland@redhat.com>
30467
30468         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
30469         Reported by Mike Frysinger <vapier@gentoo.org>.
30470
30471         2006-01-15  Andreas Jaeger  <aj@suse.de>
30472
30473         [BZ #1950]
30474         * lib/regex_internal.c (re_string_reconstruct): Adjust for
30475         build_wcs_upper_buffer change.
30476         (build_wcs_upper_buffer): Change return type.
30477
30478         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
30479
30480         * lib/regex_internal.h: Include <stdint.h> if available.
30481
30482         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
30483
30484         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
30485
30486         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
30487
30488         * lib/regcomp.c: Adjust for changed secondary hash function.
30489
30490         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
30491
30492         * lib/regex.h: Pretty printing.
30493         Clean up namespace a bit.
30494
30495         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
30496
30497         * lib/regexec.c (update_cur_sifted_state, check_arrival,
30498         check_arrival_add_next_nodes): Avoid using uninitialized variable.
30499
30500         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
30501                     Ulrich Drepper  <drepper@redhat.com>
30502
30503         [BZ #1302]
30504         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
30505         changed.
30506         (bitset_word_t): Renamed from bitset_word.  All uses changed.
30507
30508         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
30509
30510         [BZ #281]
30511         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
30512         * lib/regcomp.c: Remove unnecessary uses of
30513         unsigned RE_TRANSLATE_TYPE.
30514         * lib/regex_internal.h: Likewise.
30515         * lib/regex_internal.c: Likewise.
30516         * lib/regexec.c: Likewise.
30517         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
30518
30519         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
30520
30521         * lib/regexec.c (find_recover_state): Remove unnecessary
30522         initialization.
30523         (transit_state_bkref): Make DFA a const pointer.
30524         (get_subexp): Likewise.
30525         (check_arrival): Likewise.
30526         (update_cur_sifted_state): Likewise.
30527         (re_search_internal): Likewise.
30528         (prune_impossible_nodes): Likewise.
30529         (acquire_init_state_context): Likewise.
30530         (proceed_next_node): Likewise.
30531         (set_regs): Likewise.
30532         (free_fail_stack_return): Likewise.
30533         (check_arrival_expand_ecl): Mark DFA parameter as const.
30534         (check_arrival_expand_ecl_sub): Likewise.
30535         (check_subexp_limits): Likewise.
30536         (sub_epsilon_src_nodes):  Likewise.
30537         (add_epsilon_src_nodes):  Likewise.
30538         (merge_state_array): Likewise.
30539         (update_regs): Likewise.
30540         (build_trtable): Likewise.
30541         (sift_states_backward): Mark MCTX parameter as const.
30542         (build_sifted_states): Likewise.
30543         (update_cur_sifted_state): Likewise.
30544         (sift_states_mkref): Likewise.
30545         (check_arrival_expand_ecl): Mark eclosure as const.
30546         (check_dst_limits_calc_pos_1): Likewise.
30547         * lib/regex_internal.h (re_match_context_t): Make dfa a const
30548         pointer.
30549
30550         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
30551
30552         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
30553         (transit_state_sb): Likewise.
30554         (transit_state_mb): Likewise.
30555         (sift_states_iter_mb): Likewise.
30556         (check_arrival_add_next_nodes): Likewise.
30557         (check_node_accept_bytes): Change first parameter to pointer-to-const.
30558         [_LIBC] (re_search_2_stub): Use mempcpy.
30559
30560         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
30561         mbrtowc for very simple UTF-8 case.
30562
30563         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
30564         a pointer-to-const.
30565         (re_acquire_state_context): Likewise.
30566         * lib/regex_internal.h: Adjust prototypes.
30567
30568         * lib/regex.c: Prevent using C++ compilers.
30569
30570         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
30571         (re_acquire_state_context): Likewise.
30572
30573 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30574
30575         * modules/regex (Depends-on): Add ssize_t.
30576
30577 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30578
30579         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
30580         translation table.
30581
30582 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
30583
30584         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
30585
30586 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
30587             Bruno Haible  <bruno@clisp.org>
30588
30589         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
30590         <sys/types.h> and <inttypes.h>.
30591
30592 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30593
30594         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
30595         `__error_t_defined', so argp.h will not typedef the former.
30596
30597 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
30598
30599         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
30600         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
30601         glibc names.  Even if glibc is changed to conform to POSIX, the
30602         traditional names will be available anyway, since regex depends on
30603         the extensions module.  Also, fix a longstanding typo in the
30604         implementation of Spencer ERE test #75 from grep 2.3.  Problems
30605         reported by Emanuele Giaquinta.  Also, change sense of cached
30606         variable, so that the message makes sense.
30607
30608 2006-03-24  Simon Josefsson  <jas@extundo.com>
30609
30610         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
30611         including some doc fixes.
30612         (base64_encode_alloc): Fix +1 bug on allocation failures.
30613
30614 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30615
30616         * lib/base64.c (base64_encode): Do not read past end of array with
30617         unsanitized input on systems with CHAR_BIT > 8.
30618
30619 2006-03-24  Eric Blake  <ebb9@byu.net>
30620
30621         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
30622
30623 2006-03-22  Karl Berry  <karl@gnu.org>
30624
30625         * config/srclist.txt (*setenv.[ch]): get from coreutils.
30626         * config/srclistvars.sh (COREUTILS): new var.
30627
30628 2006-03-17  Jim Meyering  <jim@meyering.net>
30629
30630         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
30631         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
30632
30633 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
30634
30635         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
30636         no longer needs it.  Instead, check that regoff_t is as least
30637         as wide as ptrdiff_t.
30638
30639         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
30640         so that our regex.h stays compatible with the installed regex.
30641         This is helpful for installers who configure --without-included-regex.
30642         Problem reported by Emanuele Giaquinta.
30643
30644 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
30645
30646         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
30647         Typedef to long int, not to off_, as POSIX will likely change
30648         in that direction.
30649
30650 2006-03-15  Eric Blake  <ebb9@byu.net>
30651
30652         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
30653
30654 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
30655
30656         * lib/argp-help.c (validate_uparams): Fix typo
30657         * lib/argp-parse.c (argp_default_options): Consistently begin help
30658         messages with a lowercase letter.
30659
30660 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
30661
30662         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
30663         overrun buffers and shouldn't be used (much as gets shouldn't be
30664         used).
30665         * lib/time_r.c (asctime_r, ctime_r): Likewise.
30666
30667 2006-03-08  Simon Josefsson  <jas@extundo.com>
30668
30669         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
30670         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30671
30672 2006-03-08  Simon Josefsson  <jas@extundo.com>
30673
30674         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
30675         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30676
30677 2006-03-08  Simon Josefsson  <jas@extundo.com>
30678
30679         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
30680         signal that configure disabled the device.
30681
30682 2006-03-08  Simon Josefsson  <jas@extundo.com>
30683
30684         * build-aux/maint.mk: Fix refresh-po, to handle no translated
30685         languages.
30686
30687 2006-03-07  Simon Josefsson  <jas@extundo.com>
30688
30689         * modules/getopt (Depends-on): Add unistd.
30690
30691         * modules/unistd: New file.
30692
30693 2006-03-07  Simon Josefsson  <jas@extundo.com>
30694
30695         * modules/gc-random: New file.
30696
30697 2006-03-07  Simon Josefsson  <jas@extundo.com>
30698
30699         * m4/unistd_h.m4: New file.
30700
30701 2006-03-07  Simon Josefsson  <jas@extundo.com>
30702
30703         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
30704         test to be side-effect free by storing the result in the cache
30705         variable gl_cv_lib_readline, and moving the assignment of
30706         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
30707         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30708
30709 2006-03-07  Simon Josefsson  <jas@extundo.com>
30710
30711         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
30712         error on missing devices (the functions will return an error).
30713
30714         * m4/gc.m4: Move random stuff to gc-random.m4
30715
30716 2006-03-07  Simon Josefsson  <jas@extundo.com>
30717
30718         * lib/unistd_.h: New file.
30719
30720 2006-03-07  Simon Josefsson  <jas@extundo.com>
30721
30722         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
30723
30724 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30725
30726         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
30727         Problem reported by Juan Manuel Guerrero.
30728
30729 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30730
30731         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
30732         the unistd module.
30733         * lib/getlogin_r.c: Likewise.
30734         * lib/getlogin_r.h: Likewise.
30735         * lib/glob.c: Likewise.
30736         * lib/pagealign_alloc.c: Likewise.
30737         * lib/unistd_.h: Remove; no longer needed.
30738
30739 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
30740
30741         * MODULES.html.sh (Support for systems lacking POSIX:2001):
30742         Add unistd.
30743         * modules/c-stack (Depends-on): Add unistd.
30744         * modules/getlogin_r: Likewise.
30745         * modules/glob: Likewise.
30746         * modules/pagealign_alloc: Likewise.
30747         * modules/unistd (Files): Remove lib/unistd_.h.
30748         (EXTRA_DIST): Remove.
30749         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
30750         need unistd_.h.
30751         (MOSTLYCLEANFILES): Remove unistd.h-t.
30752
30753 2006-03-03  Simon Josefsson  <jas@extundo.com>
30754
30755         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
30756
30757 2006-03-03  Simon Josefsson  <jas@extundo.com>
30758
30759         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
30760         libidn and bison.
30761
30762 2006-03-03  Simon Josefsson  <jas@extundo.com>
30763
30764         * build-aux/maint.mk: Add indent target.
30765
30766 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
30767
30768         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
30769         our replacement poll.h in any case, to avoid a differing
30770         declaration from a system header.  Seen on AIX.
30771
30772 2006-03-01  Simon Josefsson  <jas@extundo.com>
30773
30774         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
30775         <kasal@ucw.cz>.
30776
30777 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30778
30779         * modules/gettime (Depends-on): Add extensions module.
30780         * modules/nanosleep (Depends-on): Likewise.
30781         * modules/settime (Depends-on): Likewise.
30782
30783 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30784
30785         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
30786         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
30787         pedantically.
30788         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
30789         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
30790
30791         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
30792         not "==".  Reported by Ralf Wildenhues.
30793
30794 2006-03-01  Karl Berry  <karl@gnu.org>
30795
30796         * doc/Copyright/request-*: new files, synced from gnuorg.
30797
30798 2006-03-01  Karl Berry  <karl@gnu.org>
30799
30800         * config/srclist.txt (Copyright/*): new entries.
30801
30802 2006-02-28  Simon Josefsson  <jas@extundo.com>
30803
30804         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
30805
30806 2006-02-27  Simon Josefsson  <jas@extundo.com>
30807
30808         * lib/base64.h: Indent #define's.  From Jim Meyering
30809         <jim@meyering.net>.
30810
30811 2006-02-27  Jim Meyering  <jim@meyering.net>
30812
30813         Revert the change of 2006-02-24, so these files can continue
30814         to be sync'd from gettext.
30815         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
30816         of `config.h'.
30817
30818 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
30819
30820         * modules/intprops: New file.
30821         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
30822         Add intprops.
30823         * modules/getloadavg (Files): Remove lib/intprops.h.
30824         (Depends-on): Add intprops.
30825         * modules/human: Likewise.
30826         * modules/inttostr: Likewise.
30827         * modules/openat: Likewise.
30828         * modules/sig2str: Likewise.
30829         * modules/userspec: Likewise.
30830         * modules/utimecmp: Likewise.
30831         * modules/xnanosleep: Likewise.
30832         * modules/xstrtol: Likewise.
30833
30834 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
30835
30836         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
30837         * modules/lock-tests (TESTS): Use $(EXEEXT).
30838         * modules/tls-tests: Likewise.
30839         * modules/argp-tests: Likewise.
30840         (check_PROGRAMS): New var, replacing...
30841         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
30842
30843 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30844
30845         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
30846         `config.h'.
30847
30848 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
30849
30850         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
30851
30852 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30853
30854         Sync from coreutils.
30855         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
30856         gl_CHDIR_SAFER.
30857
30858 2006-02-22  Jim Meyering  <jim@meyering.net>
30859
30860         Sync from coreutils.
30861         * m4/chdir-safer.m4: New file.
30862
30863 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
30864
30865         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
30866         AT_FDCWD exceeds INT_MAX.
30867         * lib/openat.h (AT_FDCWD): Likewise.
30868
30869 2006-02-17  Eric Blake  <address@hidden>
30870
30871         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
30872
30873 2006-02-16  Simon Josefsson  <jas@extundo.com>
30874
30875         * modules/getaddrinfo (Depends-on): Add sys_socket.
30876
30877 2006-02-15  Simon Josefsson  <jas@extundo.com>
30878
30879         * build-aux/maint.mk: Add dsyntax-check rule.
30880
30881 2006-02-15  Eric Blake  <ebb9@byu.net>
30882
30883         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
30884         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
30885         'present but cannot compile' warnings on cygwin.
30886         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
30887         use ws2tcpip.h if sys/socket.h works.
30888         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
30889         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
30890
30891 2006-02-14  Simon Josefsson  <jas@extundo.com>
30892
30893         * modules/maintainer-makefile (Files): Rename.
30894
30895         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
30896         and (the local) Makefile.cfg to maint-cfg.mk.
30897
30898         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
30899         to the latter.
30900
30901         * modules/maintainer-makefile: New module.
30902
30903         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
30904         severaly stripped to make it possible to build it up from scratch
30905         with reliable tests.
30906
30907         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
30908         fixes to permit overriding the default actions when configure and
30909         makefile are not available.
30910
30911 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
30912
30913         Sync from coreutils.
30914         * modules/lstat (Depends-on): Don't depend on xalloc.
30915         (License): Change from GPL to LGPL, since this is now simply a
30916         replacement for a libc function.
30917
30918 2006-02-14  Jim Meyering  <jim@meyering.net>
30919
30920         Sync from coreutils.
30921
30922         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
30923         failure on deficient systems, and simplify gnulib lgpl dependencies.
30924         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
30925         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
30926
30927         * lib/xalloc-die.c: Remove unused definition of N_.
30928
30929 2006-02-14  Jim Meyering  <jim@meyering.net>
30930
30931         Sync from coreutils.
30932         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
30933         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
30934         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
30935         double-quote uses of that variable, to accommodate the rare case in
30936         which getmntent is available in none of the libraries checked.  This
30937         happens at least on FreeBSD 5.0.
30938
30939 2006-02-13  Simon Josefsson  <jas@extundo.com>
30940
30941         * gnulib-tool (Usage): Fix --import, from
30942         karl@freefriends.org (Karl Berry).
30943
30944 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
30945
30946         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
30947
30948 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
30949
30950         * lib/argp-namefrob.h: Restore changes accidentally lost during the
30951         "autoupdate" on 2005-12-12.
30952
30953 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
30954
30955         * modules/closeout (Depends-on): Remove atexit.
30956
30957 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
30958
30959         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
30960         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
30961
30962 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
30963
30964         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
30965         __EXTENSIONS__ if this causes compilation to fail.  Problem
30966         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
30967         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
30968
30969 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
30970
30971         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
30972         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
30973         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
30974         All uses changed.
30975
30976 2006-01-26  Simon Josefsson  <jas@extundo.com>
30977
30978         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
30979         prototype is visible on mingw32.
30980
30981         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
30982         for mingw32.
30983
30984         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
30985         mingw32).
30986
30987 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
30988
30989         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
30990         attempt to open for write; this always fails, at least on POSIX
30991         hosts.  This reinstates the 2006-01-09 change, which was
30992         inadvertently removed.
30993
30994 2006-01-26  Bruno Haible  <bruno@clisp.org>
30995
30996         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
30997         Reported by Paul Eggert.
30998
30999 2006-01-26  Bruno Haible  <bruno@clisp.org>
31000             Paul Eggert  <eggert@cs.ucla.edu>
31001
31002         * lib/stdbool_.h (_Bool)
31003         [(! (defined __cplusplus || defined __BEOS__)
31004           && !defined __GNUC__
31005           && !(defined __HP_cc || defined __xlc__
31006                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
31007                || defined __sgi))]:
31008         #define to signed char in these cases too; this simplifies
31009         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
31010         etc., separately) and makes it more conservative.
31011
31012 2006-01-25  Simon Josefsson  <jas@extundo.com>
31013
31014         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
31015         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
31016         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
31017
31018 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
31019
31020         * lib/argp-namefrob.h: Bugfix. Remove stray #
31021
31022 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
31023
31024         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
31025         so that we test the test.
31026         Check for yet another HP-UX cc bug involving *bool |= bool.
31027
31028 2006-01-25  Karl Berry  <karl@gnu.org>
31029
31030         * config/srclist.txt (vasnprintf.c): sync lost.
31031
31032 2006-01-25  Jim Meyering  <jim@meyering.net>
31033
31034         Sync from the stable (b5) branch of coreutils:
31035
31036         * lib/fts.c (fts_children): Don't let close() clobber errno from
31037         failed fchdir().
31038
31039         * lib/fts.c (fts_stat): When following a symlink-to-directory,
31040         don't necessarily interpret stat-fails+lstat-succeeds as indicating
31041         a dangling symlink.  That can also happen at least for ELOOP.
31042         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
31043         FYI, this bug predates the inclusion of fts.c in coreutils.
31044
31045         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
31046         in their own block, so pre-c99 compilers don't object.
31047
31048         Avoid the double-free (first in fts_read, second in fts_close) that
31049         would occur when an `active' directory is made inaccessible (e.g.,
31050         via chmod a-x) during a traversal.
31051         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
31052         before returning.  Reproduce this failure by
31053         mkdir -p a/b; cd a; chmod a-x . b
31054         Reported by Stavros Passas.
31055
31056 2006-01-25  Jim Meyering  <jim@meyering.net>
31057
31058         * lib/fileblocks.c: Remove more useless parentheses.
31059         * lib/readutmp.h: Likewise.
31060
31061 2006-01-25  Bruno Haible  <bruno@clisp.org>
31062
31063         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
31064         warnings.
31065         Reported by Paul Eggert.
31066
31067 2006-01-25  Bruno Haible  <bruno@clisp.org>
31068
31069         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
31070         rid of a trap command. For Solaris sh.
31071         Reported by Mark D. Baushke <mdb@gnu.org>.
31072
31073 2006-01-24  Simon Josefsson  <jas@extundo.com>
31074
31075         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
31076         Bruno.
31077
31078 2006-01-24  Karl Berry  <karl@gnu.org>
31079
31080         * config/srclist.txt (argp-namefrob.h): sync lost.
31081
31082 2006-01-24  Jim Meyering  <jim@meyering.net>
31083
31084         * modules/openat (Files): Add lib/intprops.h.
31085         From Mark D. Baushke.
31086
31087 2006-01-24  Jim Meyering  <jim@meyering.net>
31088
31089         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
31090         Reported by Mark D. Baushke.
31091
31092 2006-01-24  Jim Meyering  <jim@meyering.net>
31093
31094         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
31095
31096 2006-01-24  Bruno Haible  <bruno@clisp.org>
31097
31098         * modules/strnlen (Maintainer): Change from glibc to all.
31099
31100 2006-01-24  Bruno Haible  <bruno@clisp.org>
31101
31102         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
31103         Patch by Paul Eggert.
31104
31105 2006-01-24  Bruno Haible  <bruno@clisp.org>
31106
31107         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
31108         already has it.
31109         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
31110         2005-11-26.
31111
31112         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
31113         'signed char' to avoid problems with the built-in _Bool type.
31114         Reported by Paul Eggert on 2005-11-26.
31115
31116 2006-01-24  Bruno Haible  <bruno@clisp.org>
31117
31118         * gnulib-tool (func_import): Avoid constructing complicated sed
31119         expressions inside backquote.
31120         Report and solution by Mark D. Baushke <mdb@gnu.org>.
31121
31122 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
31123
31124         These changes imported from libc.
31125         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
31126         test and two separate function calls.
31127         * lib/strndup.c (__strndup): Add libc_hidden_def.
31128
31129 2006-01-23  Simon Josefsson  <jas@extundo.com>
31130
31131         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
31132         Remove the test_*_SOURCES variable: automake infers it by default.
31133         * modules/tls-tests: Likewise.
31134
31135 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31136
31137         Work around porting bugs reported by Dieter in
31138         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
31139         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
31140         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
31141         Include "getopt.h" first, to check interface.
31142         (getenv): Declare only if defined HAVE_DECL_GETENV &&
31143         !HAVE_DECL_GETENV.
31144         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
31145         (__strndup): Revert to K&R-style function dfns, the glibc style.
31146         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
31147         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
31148         Include strnlen.h first, to get prototype properly.
31149         (strnlen): Renamed from __strnlen.
31150         Remove weak alias.
31151
31152 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31153
31154         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
31155
31156 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31157
31158         * config/srclist.txt: Adjust to reflect glibc reorganization.
31159         This affects only comments.
31160
31161 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
31162
31163          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
31164          Reported by Bruce Korb <bkorb@gnu.org>.
31165
31166 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
31167
31168         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
31169         to pacify gcc -Wswitch-default.
31170
31171 2006-01-22  Bruno Haible  <bruno@clisp.org>
31172
31173         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
31174         temporary buffer for sprintf, take into account the precision also
31175         for 'd', 'i', 'u', 'o', 'x', 'X'.
31176
31177 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
31178
31179         * modules/argp-tests: New module
31180         * tests/test-argp.c: New file
31181         * tests/test-argp-2.sh: New file
31182
31183 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
31184
31185         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
31186         (__argp_base_name): Removed
31187         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
31188         typo.
31189         (__argp_base_name): Provide macro definition or extern declaration
31190         depending on the configuration
31191
31192 2006-01-20  Simon Josefsson  <jas@extundo.com>
31193
31194         * modules/inet_ntop (Depends-on): Depend on sys_socket.
31195
31196 2006-01-20  Simon Josefsson  <jas@extundo.com>
31197
31198         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
31199
31200 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
31201
31202         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
31203         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
31204         Suggested by Bruno Haible.
31205
31206 2006-01-20  Karl Berry  <karl@gnu.org>
31207
31208         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
31209         until changes propagate, I guess.
31210
31211 2006-01-19  Simon Josefsson  <jas@extundo.com>
31212
31213         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
31214
31215 2006-01-19  Simon Josefsson  <jas@extundo.com>
31216
31217         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
31218
31219 2006-01-19  Simon Josefsson  <jas@extundo.com>
31220
31221         * gnulib-tool: Set check_PROGRAMS.
31222
31223         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
31224         modules/des-tests, modules/gc-arcfour-tests,
31225         modules/gc-arctwo-tests, modules/gc-des-tests,
31226         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
31227         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
31228         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
31229         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
31230         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
31231         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
31232         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
31233         test_*_SOURCES.
31234
31235 2006-01-18  Simon Josefsson  <jas@extundo.com>
31236
31237         * modules/socklen (Depends-on): Depend on sys_socket.
31238
31239 2006-01-18  Simon Josefsson  <jas@extundo.com>
31240
31241         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
31242         modules/des-tests, modules/gc-arcfour-tests,
31243         modules/gc-arctwo-tests, modules/gc-des-tests,
31244         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
31245         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
31246         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
31247         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
31248         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
31249         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
31250         $(EXEEXT) to automake TESTS variable, for mingw32.
31251
31252 2006-01-17  Simon Josefsson  <jas@extundo.com>
31253
31254         * modules/socklen (Include): Need sys/socket.h.
31255
31256 2006-01-17  Bruno Haible  <bruno@clisp.org>
31257
31258         * modules/ssize_t (Include): Add <sys/types.h>.
31259
31260 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
31261
31262         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
31263         it's not portable and it doesn't work with cross-compiles.
31264         Problem reported by Bruno Haible.  Fix missing-$ typo in
31265         'test "gl_cv_ignore_unused_libraries" ...' that prevented
31266         -zignore from being used with Sun's C compiler.
31267
31268 2006-01-12  Simon Josefsson  <jas@extundo.com>
31269
31270         * lib/base64.c: Fix warning, reported by Bruno Haible
31271         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
31272
31273 2006-01-12  Bruno Haible  <bruno@clisp.org>
31274
31275         * modules/ldd: New file.
31276         * build-aux/ldd.sh.in: New file.
31277         * MODULES.html.sh (Support for building libraries and executables): Add
31278         ldd.
31279
31280 2006-01-12  Bruno Haible  <bruno@clisp.org>
31281
31282         * m4/ldd.m4: New file.
31283
31284 2006-01-12  Bruno Haible  <bruno@clisp.org>
31285
31286         * gnulib-tool (func_import, func_create_testdir): Don't go into an
31287         endless loop while replacing $auxdir with build-aux.
31288
31289 2006-01-11  Simon Josefsson  <jas@extundo.com>
31290
31291         * lib/stdint_.h (SIZE_MAX): Add missing (.
31292
31293 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
31294
31295         Sync from coreutils.
31296         * lib/md5.c: Fix commentary typos.
31297         (alignof, UNALIGNED_P): No need for a GCC-specific version.
31298         * lib/md5.h (__attribute__): Remove; unused.
31299         * lib/sha1.c: Fix commentary to match md5 better.
31300         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
31301         so that we don't need to worry about alignment.  All uses changed.
31302         This merges the 2005-10-28 md5 change into sha1.
31303
31304 2006-01-11  Jim Meyering  <jim@meyering.net>
31305
31306         Sync from coreutils.
31307         * lib/md5.c (OP): Fix spacing.
31308
31309 2006-01-11  Bruno Haible  <bruno@clisp.org>
31310
31311         Ensure automatic ordering between gl_LOCK and gl_ARGP.
31312         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
31313         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
31314
31315 2006-01-11  Bruno Haible  <bruno@clisp.org>
31316
31317         Ensure automatic ordering between gl_LOCK and gl_ARGP.
31318         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
31319         the "early" section as well.
31320
31321 2006-01-11  Bruno Haible  <bruno@clisp.org>
31322
31323         Avoid "ar: no archive members specified" error on MacOS X.
31324         * gnulib-tool (func_modules_add_dummy): New function.
31325         (func_import, func_create_testdir): Invoke it.
31326
31327 2006-01-11  Bruno Haible  <bruno@clisp.org>
31328
31329         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
31330         with $auxdir in AC_CONFIG_FILES statements.
31331
31332 2006-01-11  Bruno Haible  <bruno@clisp.org>
31333
31334         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31335         Initialize also noinst_HEADERS to empty.
31336
31337 2006-01-11  Bruno Haible  <bruno@clisp.org>
31338
31339         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
31340         variables.
31341         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
31342         autoreconf.
31343
31344 2006-01-11  Bruno Haible  <bruno@clisp.org>
31345
31346         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
31347         overridable by the user.
31348         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31349
31350 2006-01-10  Simon Josefsson  <jas@extundo.com>
31351
31352         * modules/sys_socket: New file.
31353
31354 2006-01-10  Simon Josefsson  <jas@extundo.com>
31355
31356         * m4/sys_socket_h.m4: New file.
31357
31358 2006-01-10  Simon Josefsson  <jas@extundo.com>
31359
31360         * lib/socket_.h: New file.
31361
31362 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
31363
31364         * modules/readutmp (Maintainer): Add myself.
31365
31366 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
31367
31368         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
31369         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
31370         People who are still concerned with buggy memcmp implementations
31371         can invoke gl_FUNC_MEMCMP themselves.
31372
31373 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
31374
31375         * lib/regex_internal.h (BITSET_WORD_BITS):
31376         Work around a bug in 64-bit PGC (before version 6.1-2), where the
31377         preprocessor mishandles large unsigned values as if they were signed.
31378         Problem reported by Claudio Fontana in
31379         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
31380
31381 2006-01-10  Jim Meyering  <jim@meyering.net>
31382
31383         Avoid the double-free (first in fts_read, second in fts_close) that
31384         would occur when an `active' directory is made inaccessible (e.g.,
31385         via chmod a-x) during a traversal.
31386         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
31387         before returning.  Reproduce this failure by
31388         mkdir -p a/b; cd a; chmod a-x . b
31389         Reported by Stavros Passas.
31390
31391         Sync from coreutils.
31392         * lib/sha1.c: Tweak grammar in a comment.
31393
31394 2006-01-10  Jim Meyering  <jim@meyering.net>
31395
31396         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
31397         Patch by Joerg Sonnenberger.
31398
31399 2006-01-10  Bruno Haible  <bruno@clisp.org>
31400
31401         * modules/readutmp: Depend on module free.
31402         * modules/strtok_r: Depend on module restrict.
31403
31404 2006-01-10  Bruno Haible  <bruno@clisp.org>
31405
31406         * modules/gettext (configure.ac): Add an invocation of
31407         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
31408
31409 2006-01-10  Bruno Haible  <bruno@clisp.org>
31410
31411         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
31412         Reported by Werner Lemberg <wl@gnu.org>.
31413
31414 2006-01-10  Bruno Haible  <bruno@clisp.org>
31415
31416         * lib/localcharset.c: Update from GNU gettext.
31417
31418 2006-01-10  Bruno Haible  <bruno@clisp.org>
31419
31420         * lib/argp.h (__const): Remove macro. Use const instead.
31421         * lib/argp-fmtstream.h (__const): Likewise.
31422         * lib/glob_.h (__const): Remove macro.
31423         * lib/glob-libc.h: Use const instead of __const.
31424
31425 2006-01-10  Bruno Haible  <bruno@clisp.org>
31426
31427         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
31428         variable.
31429         Needed to avoid an automake error regarding the 'gettext' module.
31430
31431 2006-01-09  Simon Josefsson  <jas@extundo.com>
31432
31433         * modules/inet_ntop (Depends-on): Add restrict.
31434
31435 2006-01-09  Simon Josefsson  <jas@extundo.com>
31436
31437         * modules/gc-rijndael-tests (License): Put under LGPL.
31438
31439         * modules/gc-des-tests (License): Likewise.
31440
31441         * modules/gc-arcfour-tests (License): Likewise.
31442
31443         * modules/gc-arctwo-tests (License): Likewise.
31444
31445         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
31446
31447         * modules/gc-hmac-sha1-tests (Files): Likewise.
31448
31449         * modules/gc-hmac-md5-tests (License): Likewise.
31450
31451         * modules/gc-sha1-tests (License): Likewise.
31452
31453         * modules/gc-md5-tests (License): Likewise.
31454
31455         * modules/gc-md4-tests (License): Likewise.
31456
31457         * modules/gc-md2-tests (License): Likewise.
31458
31459         * modules/gc-tests (License): Likewise.
31460
31461         * modules/des-tests (License): Likewise.
31462
31463         * modules/md4-tests (License): Likewise.
31464
31465         * modules/md2-tests (License): Likewise.
31466
31467 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31468
31469         Sync from coreutils:
31470
31471         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
31472         * modules/lib-ignore: New file.
31473         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
31474         chdir-safer.m4, lchmod.m4.
31475         * modules/openat: Add mkdirat.c, openat-priv.h.
31476
31477 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31478
31479         Sync from coreutils.
31480         * m4/lib-ignore.m4: New file.
31481         * m4/lchmod.m4: New file.
31482
31483 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31484
31485         Sync from coreutils.
31486         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
31487         for write access: POSIX says that must fail.
31488         * lib/fts.c (diropen): Likewise.
31489         * lib/save-cwd.c (save_cwd): Likewise.
31490         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
31491         well, for minor improvements on hosts that lack O_DIRECTORY.
31492         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
31493         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
31494         Fall back on chown if open failed with EACCES.
31495
31496         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
31497         Report an error at compile-time if only a 1-second nominal clock
31498         resolution is found.
31499
31500         * lib/lchmod.h: New file.
31501         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
31502         (make_dir_parents): Use lchown rather than chown, and
31503         lchmod rather than chmod.
31504
31505         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
31506         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
31507         "proc" reported by n0dalus.
31508
31509         * lib/mountlist.c: Include <limits.h>.
31510         (dev_from_mount_options)
31511         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
31512         New function.  It no longer assumes "dev=" has the System V meaning
31513         on Linux (since it doesn't).  It also parses "dev=" more carefully.
31514         (read_file_system_list)
31515         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
31516         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
31517         dev= in that case.
31518
31519         * lib/posixtm.h (PDS_PRE_2000): New macro.
31520         * lib/posixtm.c (year): Arg is now syntax_bits rather than
31521         allow_century.  All usages changed.  Reject dates outside the range
31522         1969-1999 if PDS_PRE_2000 is used.
31523
31524 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
31525
31526         Sync from coreutils.
31527         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
31528         (Time of day items): Mention the possibility of leap seconds.
31529         Problem reported by Dr. David Alan Gilbert.
31530
31531 2006-01-09  Jim Meyering  <jim@meyering.net>
31532
31533         Sync from coreutils.
31534
31535         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
31536
31537         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
31538
31539         * lib/modechange.c (mode_compile): Reject an invalid mode string
31540         that starts with an octal digit.  From Andreas Gruenbacher.
31541
31542         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
31543         and dup to open_safer and dup_safer, respectively.
31544         (openat_permissive): Fix typo in comment.
31545
31546         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
31547         "gettext.h"; either no longer needed or are guaranteed by openat.h.
31548         (_): Remove; no longer needed.
31549         (openat): Renamed from rpl_openat; no need for rpl_openat
31550         since openat.h renames openat for us.
31551         Replace most of the body with a call to openat_permissive,
31552         to avoid duplicate code.
31553         Port to (probably hypothetical) environments were mode_t is
31554         wider than int.
31555         (openat_permissive): Require mode arg, so that we can check
31556         types better.  Put it just after flags.  Change cwd failure
31557         indicator from pointer-to-bool to pointer-to-errno-value.
31558         All callers changed.
31559         Invoke openat_save_fail and/or openat_restore_fail if
31560         cwd_errno is null, so that openat can call us.
31561         (openat_permissive, fdopendir, fstatat, unlinkat):
31562         Simplify errno handling to avoid some duplicate code,
31563         as it's OK to set errno on success.
31564         * lib/openat.h: Revamp code so that function macros depend on
31565         __OPENAT_PREFIX only, not also on AT_FDCWD.
31566         (openat_ro): Remove.  Caller changed to use openat_permissive.
31567         (openat_permissive): Now a macro, if not a function.
31568         (openat_restore_fail, openat_save_fail): Now always functions,
31569         since mkdirat needs them even if __OPENAT_PREFIX is defined.
31570
31571         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
31572         and openat.c.
31573         * lib/mkdirat.c: Include openat-priv.h.
31574         Remove definitions of macros defined therein.
31575         * lib/openat.c: Likewise.
31576
31577         * lib/mkdirat.c (mkdirat): New file and function.
31578         * lib/openat.h (mkdirat): Declare.
31579
31580         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
31581
31582         * lib/openat.h (openat_permissive): Declare.
31583         (openat_ro): Define.
31584
31585         * lib/openat.c (EXPECTED_ERRNO): New macro.
31586         (openat_permissive): New function -- used in remove.c rewrite.
31587         (all functions): Set errno just before returning, only if there
31588         was an actual failure.
31589         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
31590
31591         Emulate openat-family functions using Linux's procfs, if possible.
31592         Idea and some code based on Ulrich Drepper's glibc changes.
31593
31594         * lib/openat.c: (BUILD_PROC_NAME): New macro.
31595         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
31596         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
31597         before falling back on save_cwd and restore_cwd.
31598         (fdopendir, fstatat, unlinkat): Likewise.
31599
31600         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
31601         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
31602
31603         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
31604         as second argument to va_arg.  Otherwise, some versions of gcc
31605         warn that `if this code is reached, the program will abort'.
31606
31607 2006-01-09  Jim Meyering  <jim@meyering.net>
31608
31609         Sync from coreutils.
31610         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
31611         Require openat-priv.h.
31612
31613 2006-01-09  Bruno Haible  <bruno@clisp.org>
31614
31615         * modules/strnlen (Include): Use strnlen.h.
31616
31617 2006-01-09  Bruno Haible  <bruno@clisp.org>
31618
31619         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
31620
31621 2006-01-09  Bruno Haible  <bruno@clisp.org>
31622
31623         * lib/sysexit_.h (EX_OK): New macro.
31624         Suggested by Martin Lambers <marlam@marlam.de>.
31625
31626 2006-01-09  Bruno Haible  <bruno@clisp.org>
31627
31628         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
31629         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
31630
31631 2006-01-09  Bruno Haible  <bruno@clisp.org>
31632
31633         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
31634         numbers.
31635
31636 2006-01-09  Bruno Haible  <bruno@clisp.org>
31637
31638         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
31639         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
31640         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
31641         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
31642
31643 2006-01-09  Bruno Haible  <bruno@clisp.org>
31644
31645         * build-aux/javacomp.sh.in: New file, moved from lib/.
31646         * modules/javacomp-script (Files): Update.
31647         (configure.ac): Add AC_CONFIG_FILES invocation.
31648         (EXTRA_DIST): Remove variable.
31649
31650         * build-aux/javaexec.sh.in: New file, moved from lib/.
31651         * modules/javaexec (Files): Update.
31652         (configure.ac): Add AC_CONFIG_FILES invocation.
31653         (EXTRA_DIST): Remove javaexec.sh.in.
31654
31655         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
31656         * modules/csharpcomp-script (Files): Update.
31657         (configure.ac): Add AC_CONFIG_FILES invocation.
31658         (EXTRA_DIST): Remove variable.
31659
31660         * build-aux/csharpexec.sh.in: New file, moved from lib/.
31661         * modules/csharpexec (Files): Update.
31662         (configure.ac): Add AC_CONFIG_FILES invocation.
31663         (EXTRA_DIST): Remove csharpexec.sh.in.
31664
31665 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
31666
31667         Sync from coreutils.
31668
31669         Add POSIX ACL support
31670         * lib/acl.h (copy_acl, set_acl): Add declarations.
31671         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
31672         systems other than Linux.
31673         (chmod_or_fchmod): New function: use fchmod when possible,
31674         and chmod otherwise.
31675         (file_has_acl): Add a POSIX ACL implementation, with a
31676         Linux-specific subcase.
31677         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
31678         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
31679         acls are unsupported.
31680         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
31681         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
31682         are unsupported.
31683
31684 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
31685
31686         Sync from coreutils.
31687         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
31688
31689 2006-01-07  Bruno Haible  <bruno@clisp.org>
31690
31691         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
31692         gl_EARLY.
31693
31694 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31695
31696         * lib/strftime.c (tzname): Don't declare if it is already #defined.
31697         Problem reported for Mingw by Mark Junker.
31698
31699 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
31700
31701         * README: Gnulib normally doesn't generate a tarball.
31702
31703 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
31704
31705         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
31706         long int, not int, for nanosecond counts, so that people who are
31707         used to POSIX struct timespec won't be surprised.  Reported by Jim
31708         Meyering.
31709
31710 2005-12-28  Bruno Haible  <bruno@clisp.org>
31711
31712         * build-aux/config.rpath: Update from GNU gettext.
31713
31714 2005-12-16  Jim Meyering  <jim@meyering.net>
31715
31716         * modules/fprintftime: New module.
31717         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
31718
31719 2005-12-16  Jim Meyering  <jim@meyering.net>
31720
31721         * m4/fprintftime.m4: New file.
31722
31723 2005-12-16  Jim Meyering  <jim@meyering.net>
31724
31725         * lib/fprintftime.c, lib/fprintftime.h: New files.
31726
31727 2005-12-15  Simon Josefsson  <jas@extundo.com>
31728
31729         * modules/socklen (configure.ac): Fix M4 macro name, to align with
31730         new m4/socklen.m4.
31731
31732 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
31733
31734         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
31735         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
31736
31737 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
31738
31739         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
31740         * lib/argp-help.c (fill_in_uparams): Check if the constructed
31741         struct uparams is valid. Fall back to the default values if it is
31742         not.
31743
31744 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31745
31746         * modules/argp (Files): Add argp-pin.c
31747         (Depends-on): dirname
31748         (lib_SOURCES): Add argp-pin.c
31749
31750 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31751
31752         * m4/argp.m4:  Check if program_invocation_name and
31753         program_invocation_short_name are declared and define appropriate
31754         macros if they are not.
31755
31756 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31757
31758         * lib/argp-help.c (__argp_base_name): New function
31759         (__argp_short_program_name): Rewrite using __argp_base_name
31760         * lib/argp-namefrob.h: Define program_invocation_name and
31761         program_invocation_short_name if requested
31762         (__argp_base_name): Add prototype
31763         * lib/argp-parse.c (argp_def): Use gettext wrappers
31764         (argp_default_parser): Use __argp_base_name
31765         * lib/argp-pin.c: New file. Defines program_invocation_name and
31766         program_invocation_short_name on systems that lack them.
31767
31768 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31769
31770         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
31771         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
31772         porting problem reported by Georg Schwarz in
31773         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
31774
31775 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31776
31777         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
31778         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
31779         porting problem reported by Georg Schwarz in
31780         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
31781
31782 2005-12-05  Bruno Haible  <bruno@clisp.org>
31783
31784         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
31785         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
31786         Reported by Mark Junker <mjscod@gmx.de>.
31787
31788 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
31789
31790         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
31791         Use implementation from Albert Chin, with some
31792         comments/corrections by Stepan Kasal and myself.
31793
31794 2005-12-02  Bruno Haible  <bruno@clisp.org>
31795
31796         * gnulib-tool (func_import): Accept GPLed build tool modules when
31797         --lgpl is given.
31798         * modules/csharpcomp-script: New file.
31799         * modules/csharpcomp: Depend on it.
31800         * modules/javacomp-script: New file.
31801         * modules/javacomp: Depend on it.
31802         Suggested by Simon Josefsson.
31803
31804 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
31805
31806         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
31807         statement, to work around an HP-UX 10.20 compiler bug reported by
31808         Peter O'Gorman.
31809
31810 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
31811
31812         * modules/savedir (Depends-on): Add openat.
31813
31814 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
31815
31816         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
31817         (uintmax_t) [defined uintmax_t]: Do not declare.
31818         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
31819         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
31820         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
31821         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
31822         sake of portability to weird hosts that C allows (though we don't
31823         know of any practical examples).
31824
31825         * lib/savedir.h (fdsavedir): New decl.
31826         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
31827         contains most of the former guts of savedir.
31828         (savedir): Use savedirstream.
31829         Include "openat.h".
31830
31831 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
31832
31833         * modules/obstack (Files): Add m4/ulonglong.m4.
31834         Problem reported by Davide Angelocola.
31835
31836 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
31837
31838         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
31839         coreutils no longer futzes with rounding modes.
31840
31841 2005-11-14  Jim Meyering  <jim@meyering.net>
31842
31843         * lib/mkstemp-safer.c: Include <config.h>, required for possible
31844         replacement of mkstemp.
31845
31846 2005-11-10  Simon Josefsson  <jas@extundo.com>
31847
31848         * lib/readline.c: Remove EOL.
31849
31850 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31851
31852         * modules/gethrxtime (Depends-on): Add gettime.
31853
31854 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31855
31856         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
31857         or gettimeofday; no longer needed.
31858
31859 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31860
31861         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
31862         time business.
31863         (gethrxtime) [! (HAVE_NANOUPTIME
31864         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
31865         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
31866         our own approximation.
31867
31868 2005-11-08  Eric Blake  <ebb9@byu.net>
31869
31870         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
31871
31872 2005-11-08  Eric Blake  <ebb9@byu.net>
31873
31874         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
31875
31876 2005-11-04  Bruno Haible  <bruno@clisp.org>
31877
31878         * gnulib-tool: Implement --update mode.
31879
31880 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
31881
31882         Fix porting problem reported by Theodoros V. Kalamatianos.
31883         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
31884         Don't assume that futimes failing means we must fail.
31885
31886 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
31887
31888         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
31889         variables to suggest the intended function of the PATH_MAX check.
31890
31891 2005-10-30  Kean Johnston  <jkj@sco.com>
31892
31893         Trivial changes to support SCO systems.
31894         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
31895         as PATH_MAX.
31896         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
31897         where __ptr is null when no I/O is pending.
31898
31899 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
31900
31901         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
31902         leave errno alone.  Problem reported by Dmitry V. Levin.
31903
31904 2005-10-28  Simon Josefsson  <jas@extundo.com>
31905
31906         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
31907         Test more.
31908
31909         * tests/test-gc-md2.c, tests/test-md2.c: New files.
31910
31911         * modules/md2, modules/md2-tests: New files.
31912
31913 2005-10-28  Simon Josefsson  <jas@extundo.com>
31914
31915         * m4/inet_ntop.m4: More tests.
31916
31917         * m4/gc-md2.m4, md2.m4: New file.
31918
31919 2005-10-28  Simon Josefsson  <jas@extundo.com>
31920
31921         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
31922         "restrict" keywords, as per POSIX.  Protect the function
31923         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
31924         Don't use K&R prototypes.  Check the sprintf return values.
31925         Re-define EAFNOSUPPORT if not present.  Indent.
31926
31927         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
31928         suggested by Bruno Haible <bruno@clisp.org>.
31929
31930         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
31931
31932         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
31933
31934         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
31935         libgcrypt).
31936
31937         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
31938
31939         * lib/md2.h, lib/md2.c: New files.
31940
31941 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
31942
31943         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
31944         errno alone.  Problem reported by Frederic Jolliton.
31945
31946 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
31947
31948         * modules/verify (License): Change from GPL to LGPL.  This is a
31949         tiny module and there are apparently near-equivalents that are
31950         under the BSD license.
31951
31952 2005-10-24  Simon Josefsson  <jas@extundo.com>
31953
31954         * modules/sha1: Relicense to LGPL.
31955
31956 2005-10-24  Simon Josefsson  <jas@extundo.com>
31957
31958         * lib/md4.h: Shrink buffer size, now that we changed the type.
31959
31960 2005-10-23  Simon Josefsson  <jas@extundo.com>
31961
31962         * gnulib-tool (func_import): Fix --tests-base.
31963
31964 2005-10-22  Simon Josefsson  <jas@extundo.com>
31965
31966         * modules/arcfour (Depends-on): Need stdint.
31967
31968 2005-10-22  Simon Josefsson  <jas@extundo.com>
31969
31970         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
31971         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
31972
31973 2005-10-22  Simon Josefsson  <jas@extundo.com>
31974
31975         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
31976         suggested by Bruno Haible <bruno@clisp.org>.
31977
31978 2005-10-22  Simon Josefsson  <jas@extundo.com>
31979
31980         * lib/crc.h: Include stddef.h, for size_t.
31981
31982 2005-10-22  Simon Josefsson  <jas@extundo.com>
31983
31984         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
31985         arcfour_context struct (simplify test vector testing in GNU
31986         Shishi).
31987
31988 2005-10-21  Simon Josefsson  <jas@extundo.com>
31989
31990         * modules/des, modules/des-tests: New files.
31991
31992         * modules/gc-des, modules/gc-des-tests: New files.
31993
31994         * tests/test-des.c, tests/test-gc-des.c: New file.
31995
31996 2005-10-21  Simon Josefsson  <jas@extundo.com>
31997
31998         * modules/arctwo, modules/arctwo-tests: New files.
31999
32000         * tests/test-arctwo.c: New file.
32001
32002         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
32003
32004         * tests/test-gc-arctwo.c: New file.
32005
32006 2005-10-21  Simon Josefsson  <jas@extundo.com>
32007
32008         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
32009         Bruno Haible <bruno@clisp.org>.
32010
32011         * m4/gc-des.m4: New file.
32012
32013 2005-10-21  Simon Josefsson  <jas@extundo.com>
32014
32015         * m4/arctwo.m4: New file.
32016
32017         * m4/gc-arctwo.m4: New file.
32018
32019 2005-10-21  Simon Josefsson  <jas@extundo.com>
32020
32021         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
32022         block.
32023
32024 2005-10-21  Simon Josefsson  <jas@extundo.com>
32025
32026         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
32027         <bruno@clisp.org>.
32028
32029         * lib/hmac-sha1.c (hmac_sha1): Likewise.
32030
32031         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
32032         Bruno Haible <bruno@clisp.org>.
32033
32034         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
32035         <bruno@clisp.org>.
32036
32037 2005-10-21  Simon Josefsson  <jas@extundo.com>
32038
32039         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
32040
32041 2005-10-21  Simon Josefsson  <jas@extundo.com>
32042
32043         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
32044
32045 2005-10-21  Simon Josefsson  <jas@extundo.com>
32046
32047         * lib/des.h, lib/des.c: New files.
32048
32049         * lib/gc-gnulib.c: Support DES.c
32050
32051 2005-10-21  Simon Josefsson  <jas@extundo.com>
32052
32053         * lib/arctwo.h, lib/arctwo.c: New files.
32054
32055         * lib/gc-gnulib.c: Support ARCTWO.
32056
32057 2005-10-21  Simon Josefsson  <jas@extundo.com>
32058
32059         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
32060         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32061
32062 2005-10-21  Simon Josefsson  <jas@extundo.com>
32063
32064         * gnulib-tool (func_import, func_create_testdir): Define automake
32065         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
32066         Makefile.am snippet),
32067         suggested by Bruno Haible <bruno@clisp.org>.
32068
32069         * modules/gc (Makefile.am): Use it.
32070
32071 2005-10-21  Bruno Haible  <bruno@clisp.org>
32072
32073         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
32074         patch.
32075
32076 2005-10-19  Simon Josefsson  <jas@extundo.com>
32077
32078         * tests/test-gc-rijndael.c: New file.
32079
32080         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
32081
32082 2005-10-19  Simon Josefsson  <jas@extundo.com>
32083
32084         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
32085         interface too.
32086
32087 2005-10-19  Simon Josefsson  <jas@extundo.com>
32088
32089         * tests/test-gc-arcfour.c: New file.
32090
32091         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
32092
32093 2005-10-19  Simon Josefsson  <jas@extundo.com>
32094
32095         * modules/gc-md4, modules/gc-md4-tests: New file.
32096
32097         * tests/test-gc-md4.c: New file.
32098
32099 2005-10-19  Simon Josefsson  <jas@extundo.com>
32100
32101         * m4/gc-md4.m4: New file.
32102
32103 2005-10-19  Simon Josefsson  <jas@extundo.com>
32104
32105         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
32106         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
32107         <kasal@ucw.cz>.
32108
32109 2005-10-19  Simon Josefsson  <jas@extundo.com>
32110
32111         * m4/gc-arcfour.m4: New file.
32112
32113         * m4/gc-rijndael.m4: New file.
32114
32115 2005-10-19  Simon Josefsson  <jas@extundo.com>
32116
32117         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
32118
32119 2005-10-19  Simon Josefsson  <jas@extundo.com>
32120
32121         * lib/gc-gnulib.c: Support ARCFOUR.
32122
32123 2005-10-19  Simon Josefsson  <jas@extundo.com>
32124
32125         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
32126         support.
32127
32128         * lib/gc.h: Add ECB enum type.
32129
32130         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
32131
32132 2005-10-18  Simon Josefsson  <jas@extundo.com>
32133
32134         * tests/test-md5.c: New file.
32135
32136         * modules/md5-tests: New file.
32137
32138 2005-10-18  Simon Josefsson  <jas@extundo.com>
32139
32140         * tests/test-md4.c: New file.
32141
32142         * modules/md4, modules/md4-tests: New files.
32143
32144 2005-10-18  Simon Josefsson  <jas@extundo.com>
32145
32146         * m4/md4.m4: New file.
32147
32148 2005-10-18  Simon Josefsson  <jas@extundo.com>
32149
32150         * lib/md4.h, lib/md4.c: New files, based on md5.?.
32151
32152 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
32153
32154         * gnulib-tool (func_create_testdir): Omit the second check whether
32155         BUILT_SOURCES in nonempty.
32156
32157 2005-10-17  Simon Josefsson  <jas@extundo.com>
32158
32159         * tests/test-rijndael.c: New file.
32160
32161 2005-10-17  Simon Josefsson  <jas@extundo.com>
32162
32163         * modules/sha1: Depend on stdint instead of md5.
32164
32165         * modules/md5: Depend on stdint, remove uint32_t.
32166
32167 2005-10-17  Simon Josefsson  <jas@extundo.com>
32168
32169         * modules/gc-sha1-tests: New file.
32170
32171         * tests/test-gc-sha1.c: New file.
32172
32173 2005-10-17  Simon Josefsson  <jas@extundo.com>
32174
32175         * m4/md5.m4: Remove call to uint32_t.m4.
32176
32177 2005-10-17  Simon Josefsson  <jas@extundo.com>
32178
32179         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
32180
32181         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
32182         md5.h.
32183
32184         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
32185
32186         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
32187
32188 2005-10-17  Simon Josefsson  <jas@extundo.com>
32189
32190         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
32191
32192 2005-10-17  Simon Josefsson  <jas@extundo.com>
32193
32194         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
32195
32196 2005-10-17  Simon Josefsson  <jas@extundo.com>
32197
32198         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
32199
32200         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
32201
32202 2005-10-17  Bruno Haible  <bruno@clisp.org>
32203
32204         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
32205         that it can also be used in a test.
32206
32207 2005-10-16  Bruno Haible  <bruno@clisp.org>
32208
32209         * gnulib-tool (func_emit_tests_Makefile_am): Also define
32210         TESTS_ENVIRONMENT, so that individual tests can augment it.
32211
32212         * gnulib-tool (func_create_testdir): Use an intermediate target for
32213         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
32214         macros, like $(ALLOCA_H), which cannot be passed through the command
32215         line.
32216
32217 2005-10-15  Simon Josefsson  <jas@extundo.com>
32218
32219         * modules/rijndael-tests: New file.
32220
32221         * modules/rijndael: New file.
32222
32223 2005-10-15  Simon Josefsson  <jas@extundo.com>
32224
32225         * m4/rijndael.m4: New file.
32226
32227 2005-10-15  Simon Josefsson  <jas@extundo.com>
32228
32229         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
32230
32231         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
32232
32233 2005-10-14  Simon Josefsson  <jas@extundo.com>
32234
32235         * tests/test-arcfour.c: New file.
32236
32237         * modules/arcfour, modules/arcfour-tests: New files.
32238
32239 2005-10-14  Simon Josefsson  <jas@extundo.com>
32240
32241         * m4/arcfour.m4: New file.
32242
32243 2005-10-14  Simon Josefsson  <jas@extundo.com>
32244
32245         * lib/arcfour.h, lib/arcfour.c: New files.
32246
32247 2005-10-14  Roland McGrath  <roland@redhat.com>
32248
32249         Import from libc.  [BZ #1331]
32250         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
32251         macro argument.
32252         Reported by Matej Vela <vela@debian.org>.
32253
32254 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
32255
32256         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
32257         include <wchar.h>; no longer needed.
32258
32259 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
32260
32261         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
32262
32263 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
32264         and  Ulrich Drepper  <drepper@redhat.com>
32265
32266         Import from libc.
32267         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
32268         instead of inline stream orientation test and two separate
32269         function calls.  Pay no attention to USE_IN_LIBIO.
32270
32271 2005-10-13  Simon Josefsson  <jas@extundo.com>
32272
32273         * modules/gc-hmac-md5-tests: New file.
32274
32275         * tests/test-gc-hmac-sha1.c: New file.
32276
32277         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
32278
32279         * modules/gc-hmac-md5-tests: New file.
32280
32281         * tests/test-gc-md5.c: New file.
32282
32283         * modules/gc-md5-tests: New file.
32284
32285 2005-10-13  Simon Josefsson  <jas@extundo.com>
32286
32287         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
32288         Move memory allocation outside of loop.
32289
32290 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
32291
32292         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
32293         intermediate directory is in a read-only file system.  Problem
32294         reported by Eric Blake.
32295
32296 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
32297
32298         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
32299
32300 2005-10-12  Simon Josefsson  <jas@extundo.com>
32301
32302         * tests/test-hmac-sha1.c: New file.
32303
32304         * modules/hmac-sha1-tests: New file.
32305
32306         * modules/hmac-sha1: New file.
32307
32308 2005-10-12  Simon Josefsson  <jas@extundo.com>
32309
32310         * modules/gc-sha1: New file.
32311
32312 2005-10-12  Simon Josefsson  <jas@extundo.com>
32313
32314         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
32315
32316         * tests/test-gc-pbkdf2-sha1.c: New file.
32317
32318 2005-10-12  Simon Josefsson  <jas@extundo.com>
32319
32320         * modules/gc-md5, modules/gc-hmac-md5: New files.
32321
32322         * modules/gc (Files): Remove md5, memxor and hmac files.
32323
32324 2005-10-12  Simon Josefsson  <jas@extundo.com>
32325
32326         * m4/gc-pbkdf2-sha1.m4: New file.
32327
32328         * m4/gc-hmac-sha1.m4: New file.
32329
32330         * m4/gc-sha1: New file.
32331
32332         * m4/hmac-sha1.m4: New file.
32333
32334 2005-10-12  Simon Josefsson  <jas@extundo.com>
32335
32336         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
32337
32338         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
32339
32340 2005-10-12  Simon Josefsson  <jas@extundo.com>
32341
32342         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
32343         suggested by Bruno Haible <bruno@clisp.org>.
32344
32345 2005-10-12  Simon Josefsson  <jas@extundo.com>
32346
32347         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
32348
32349 2005-10-12  Simon Josefsson  <jas@extundo.com>
32350
32351         * lib/gc-pbkdf2-sha1.c: New file.
32352
32353         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
32354
32355 2005-10-12  Simon Josefsson  <jas@extundo.com>
32356
32357         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
32358
32359         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
32360
32361 2005-10-12  Simon Josefsson  <jas@extundo.com>
32362
32363         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
32364         GC_USE_HMAC_MD5, respectively.
32365
32366         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
32367         (gc_md5): Fix typo.
32368
32369         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
32370
32371         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
32372
32373         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
32374
32375 2005-10-12  Bruno Haible  <bruno@clisp.org>
32376
32377         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
32378         Reported by Stepan Kasal <kasal@ucw.cz>.
32379
32380 2005-10-11  Simon Josefsson  <jas@extundo.com>
32381
32382         * tests/test-crc.c: New file.
32383
32384         * modules/crc, modules/crc-tests: New files.
32385
32386 2005-10-11  Simon Josefsson  <jas@extundo.com>
32387
32388         * m4/crc.m4: New file.
32389
32390 2005-10-11  Simon Josefsson  <jas@extundo.com>
32391
32392         * lib/gc.h: Add gc_hash and gc_hash_buffer.
32393
32394         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
32395
32396         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
32397
32398 2005-10-11  Simon Josefsson  <jas@extundo.com>
32399
32400         * lib/crc.h, lib/crc.c: New files.
32401
32402         * lib/gc.h (gc_hash_buffer): Add doc.
32403
32404 2005-10-11  Bruno Haible  <bruno@clisp.org>
32405
32406         * modules/c-strcasestr: New file.
32407         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
32408
32409 2005-10-11  Bruno Haible  <bruno@clisp.org>
32410
32411         * modules/c-strcase: New file.
32412         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
32413
32414 2005-10-11  Bruno Haible  <bruno@clisp.org>
32415
32416         * lib/strcasecmp.c: Include limits.h.
32417         (strcasecmp): Avoid integer overflow on exotic platforms.
32418         * lib/strncasecmp.c: Include limits.h.
32419         (strncasecmp): Avoid integer overflow on exotic platforms.
32420         Reported by Paul Eggert.
32421
32422 2005-10-11  Bruno Haible  <bruno@clisp.org>
32423
32424         * lib/c-strcasestr.h: New file, from GNU gettext.
32425         * lib/c-strcasestr.c: New file, from GNU gettext.
32426
32427 2005-10-11  Bruno Haible  <bruno@clisp.org>
32428
32429         * lib/c-strcase.h: New file, from GNU gettext.
32430         * lib/c-strcasecmp.c: New file, from GNU gettext.
32431         * lib/c-strncasecmp.c: New file, from GNU gettext.
32432
32433 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
32434
32435         * modules/mempcpy (License): GPL -> LGPL.
32436         * modules/strchrnul (License): Likewise.
32437         * modules/sysexits (License): Likewise.
32438
32439 2005-10-08  Simon Josefsson  <jas@extundo.com>
32440
32441         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
32442
32443 2005-10-07  Simon Josefsson  <jas@extundo.com>
32444
32445         * m4/memxor.m4: Remove gl_C_RESTRICT call.
32446
32447 2005-10-06  Simon Josefsson  <jas@extundo.com>
32448
32449         * tests/test-hmac-md5.c: New file.
32450
32451         * modules/hmac-md5-tests: New file.
32452
32453         * modules/hmac-md5: New file.
32454
32455 2005-10-06  Simon Josefsson  <jas@extundo.com>
32456
32457         * m4/hmac-md5.m4: New file.
32458
32459         * m4/memxor.m4: Require gl_C_RESTRICT.
32460
32461 2005-10-06  Simon Josefsson  <jas@extundo.com>
32462
32463         * lib/memxor.c (memxor): Avoid casts and warnings.
32464
32465 2005-10-06  Simon Josefsson  <jas@extundo.com>
32466
32467         * lib/hmac-md5.c: New file.
32468
32469         * lib/hmac.h: New file.
32470
32471 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
32472
32473         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
32474         promotes to int, not unsigned int, to catch the AIX 5.3
32475         compiler bug.
32476
32477 2005-10-05  Simon Josefsson  <jas@extundo.com>
32478
32479         * modules/memxor: New file.
32480
32481         * modules/iconv (Files): Move config.rpath to havelib, it is used
32482         there.
32483
32484         * modules/havelib (Files): Add config.rpath.
32485
32486 2005-10-05  Simon Josefsson  <jas@extundo.com>
32487
32488         * m4/memxor.m4: New file.
32489
32490 2005-10-05  Simon Josefsson  <jas@extundo.com>
32491
32492         * lib/memxor.c (memxor): Fix compiler error.
32493
32494         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
32495         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
32496
32497         * lib/memxor.h, lib/memxor.c: New files.
32498
32499         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
32500         we assume all systems have it, suggested by Jim Meyering
32501         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
32502         any systems lack sys/socket.h; mingw32 is known to lack it, but we
32503         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
32504         same reasons.
32505
32506 2005-10-05  Simon Josefsson  <jas@extundo.com>
32507
32508         * config/srclist.txt: Add glibc bug 1423 for md5.h.
32509
32510 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
32511
32512         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
32513         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
32514         needed, since the source code now assumes these .h files.
32515
32516 2005-10-05  Derek Price  <derek@ximbiot.com>
32517
32518         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
32519
32520 2005-10-05  Bruno Haible  <bruno@clisp.org>
32521
32522         * modules/stdint (License): Change to LGPL.
32523
32524 2005-10-04  Simon Josefsson  <jas@extundo.com>
32525
32526         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
32527         D. Baushke" <mdb@gnu.org>.
32528
32529 2005-10-04  Bruno Haible  <bruno@clisp.org>
32530
32531         * lib/verify.h (verify_true): Provide alternative definition for C++.
32532
32533 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
32534
32535         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
32536         (SSIZE_MAX): New macro, if not already defined.
32537         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
32538         than 2 GiB.
32539
32540 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32541
32542         Sync from coreutils.
32543         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
32544         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
32545         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
32546         ULLONG_MAX doesn't work with 2.7.2.1.
32547
32548 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32549
32550         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
32551         From Ben Pfaff.
32552
32553         * modules/exclude (Depends-on): Depend on verify.
32554         * modules/strtoimax (Depends-on): Likewise.
32555         * modules/utimecmp (Depends-on): Likewise.
32556
32557 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
32558
32559         * lib/exclude.c: Include verify.h.
32560         (verify): Remove.  All callers changed to use verify.h's version.
32561         * lib/strtoimax.c: Likewise.
32562         * lib/utimecmp.c: Likewis.e
32563
32564         Sync from coreutils.
32565         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
32566         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
32567         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
32568         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
32569         bother returning ENOSYS if settimeofday or stime fails; just let
32570         them return whatever errno they want to return.
32571         * lib/utimens.c: Include unistd.h, for dup2.
32572         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
32573         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
32574
32575 2005-10-02  Jim Meyering  <jim@meyering.net>
32576
32577         Sync from coreutils.
32578         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
32579         from glibc-2.2.5 that fails for read-only files.
32580
32581 2005-10-02  Jim Meyering  <jim@meyering.net>
32582
32583         Sync from coreutils.
32584         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
32585         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
32586         `#if HAVE_CONFIG_H'.
32587         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
32588         Remove AT_FDCWD test.
32589         Do not consume the fd unless successful.
32590         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
32591         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
32592         block, so that we don't even try to compile it if settimeofday is
32593         available.  This works around a compilation failure on OSF1 V5.1,
32594         due to stime requiring a `long int*' while tv_sec is `int'.
32595
32596 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
32597
32598         Sync from coreutils.
32599         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
32600         against `yes', rather than just testing for nonempty.
32601
32602 2005-10-01  Simon Josefsson  <jas@extundo.com>
32603
32604         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
32605         and Darwin.
32606
32607         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
32608         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
32609         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
32610         freeaddrinfo and gai_strerror are declared by the POSIX headers.
32611         Check if struct addrinfo is declared.
32612
32613 2005-10-01  Simon Josefsson  <jas@extundo.com>
32614
32615         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
32616         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
32617         AI_* and EAI_* definitions.  Protect function declarations.
32618
32619 2005-10-01  Jim Meyering  <jim@meyering.net>
32620
32621         Sync from coreutils.
32622
32623         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
32624         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
32625         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
32626         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
32627         in the inet and nsl libraries.  Required on Solaris 5.7.
32628
32629 2005-10-01  Jim Meyering  <jim@meyering.net>
32630
32631         Sync from coreutils.
32632         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
32633         in the inet and nsl libraries.  Required on Solaris 5.7.
32634
32635 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
32636
32637         * lib/getdelim.c (getdelim): Remove unused variables.
32638
32639 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
32640
32641         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
32642         so that the code works even with ancient cpp.  Portability problem
32643         with GCC 2.7.2.1 reported by Thomas M.Ott.
32644
32645 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
32646
32647         * modules/regex (Depends-on): Add strcase.
32648
32649         * modules/gethostname (Licence): Change from GPL to LGPL, since
32650         gethostname.c is a trivial implementation of a standard library
32651         function.
32652         * modules/poll (License): Change from GPL to LGPL, since it's
32653         derived from LGPL code.
32654
32655 2005-09-27  Jim Meyering  <jim@meyering.net>
32656
32657         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
32658         HAVE_CONFIG_H.
32659
32660         * lib/intprops.h (signed_type_or_expr__): Define.
32661         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
32662         for unsigned types.
32663
32664 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
32665
32666         * lib/verify.h (verify_expr): Remove, replacing with:
32667         (verify_true): New macro that returns true instead of void.
32668         (verify_type__): Remove.
32669         (verify): Use verify_true rather than verify_type__.
32670
32671 2005-09-26  Bruno Haible  <bruno@clisp.org>
32672
32673         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
32674         is necessary.
32675         (lib_SOURCES): Remove mbchar.c.
32676         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
32677         (Files): Add m4/mbrtowc.m4.
32678         * modules/mbiter: Likewise.
32679         * modules/mbuiter: Likewise.
32680
32681 2005-09-26  Bruno Haible  <bruno@clisp.org>
32682
32683         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
32684         compile mbchar.c if they are not both present.
32685         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
32686         * m4/mbiter.m4 (gl_MBITER): Likewise.
32687         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
32688         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
32689         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
32690
32691 2005-09-25  Jim Meyering  <jim@meyering.net>
32692
32693         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
32694         also uses socklen_t.
32695
32696 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
32697
32698         * lib/utimens.c (ENOSYS): Define if not already defined.
32699         (futimens): Support having a null PATH if the file descriptor
32700         is nonnegative.
32701
32702         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
32703         Remove.
32704         (__attribute): Define to empty unless GCC 3.1 or later.
32705         This works around a core dump on OpenBSD 3.4, which has GCC
32706         2.95.3, which dumps core when given __attribute__(()).  It also
32707         simplifies other tests, since we really don't want to bother with
32708         worrying about which ancient version of GCC supported what.
32709         Original problem reported by Yoann Vandoorselaere, with part of
32710         the fix suggested by Derek Price.
32711
32712 2005-09-24  Jim Meyering  <jim@meyering.net>
32713
32714         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
32715         so we can once again use a positive bitfield width of 1 -- now we
32716         don't have to explain why we were using a bitfield width of 2.
32717
32718 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
32719
32720         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
32721         and similarly for the other external symbols.  Problem reported
32722         by James Gallager.
32723
32724         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
32725         bug reported by Jim Meyering.
32726
32727         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
32728         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
32729         not needed, since socklen is a prerequisite module.
32730
32731 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
32732
32733         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
32734         Problem reported by Eric Blake.
32735         (getaddrinfo): Initialize se so that it's not garbage.
32736         Redo internal storage allocation so that it doesn't make unportable
32737         assumptions about alignment.
32738         Fix a memory leak.
32739
32740         * lib/utimens.c (futimens): Use futimesat if available.
32741         Prefer it to futimes since it doesn't have the futimes bug.
32742
32743         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
32744         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
32745         Instead, declare a function that returns a pointer to an array,
32746         and use verify_type__ to declare the size of the array.
32747         Problem and germ of a solution reported by Bruno Haible.
32748         (verify_type__): Use 2, not 1, for bitfield size, to avoid
32749         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
32750
32751 2005-09-23  Jim Meyering  <jim@meyering.net>
32752
32753         Sync from coreutils.
32754         Correct build failure (socklen_t not defined) on at least
32755         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
32756         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
32757
32758 2005-09-23  Jim Meyering  <jim@meyering.net>
32759
32760         * modules/getaddrinfo (Depends-on): Add socklen.
32761
32762 2005-09-23  Bruno Haible  <bruno@clisp.org>
32763
32764         * tests/test-verify.c: New file.
32765
32766 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32767
32768         Sync from coreutils.
32769
32770         * modules/argmatch (Depends-on): Add verify.
32771         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
32772         unistd-safer.
32773         * modules/save-cwd (Depends-on): Likewise.
32774
32775         * modules/openat (Files): Add lib/openat-die.c.
32776         (Depends-on): Remove error, exitfail.
32777         Add dirname.
32778
32779         * modules/verify: New file.
32780         * MODULES.html.sh (Diagnostics <assert.h>): New section,
32781         with "verify" module.
32782
32783 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32784
32785         Sync from coreutils.
32786
32787         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
32788         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
32789         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
32790         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
32791         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
32792         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
32793         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
32794         Don't bother checking for string.h, stdlib.h, unistd.h.
32795         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
32796         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
32797         module's job.
32798         * m4/jm-macros.m4 (gl_MACROS): Likewise.
32799         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
32800
32801         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
32802         (gl_GETDATE): Use it.
32803
32804         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
32805
32806 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32807
32808         Sync from coreutils.
32809
32810         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
32811         stat-time.h.
32812         * lib/argmatch.h: Include verify.h
32813         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
32814         (ARGMATCH_ASSERT): Remove; unused.
32815         * lib/canonicalize.c: Assume STDC_HEADERS.
32816         * lib/exclude.c: Include "strcase.h".
32817         * lib/regex_internal.h [!defined _LIBC]: Likewise.
32818         * lib/getusershell.c: Include stdio--.h rather than stdio.h
32819         and stdio-safer.h.
32820         (getusershell): Call fopen, not fopen_safer.
32821         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
32822         Do not include unistd-safer.h.
32823         (save_cwd): Don't call fd_safer; no longer needed
32824         now that we include fcntl--.h.
32825
32826         * lib/getdate.y (relative_time): New type.
32827         (RELATIVE_TIME_0): New constant.
32828         (parser_control): Use relative_time instead of doing it ourselves.
32829         (%union): Add new relative_time rel member.
32830         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
32831         Now typeless.
32832         (relunit, relunit_snumber): Now of type rel.
32833         (zone, rel, relunit, get_date): Adjust to above changes.
32834
32835         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
32836         Do not include unistd-safer.h.
32837         (getloadavg): Don't call fd_safer; no longer needed
32838         now that we include fcntl--.h.
32839
32840         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
32841         (make_dir_parents): Treat ENOSYS like EEXIST.
32842
32843         Improve quality of diagnostics on restore_cwd failure.
32844         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
32845         (make_dir_parents): Last arg is now int * (for errno), not bool *.
32846         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
32847         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
32848         each time through the loop.  Do not diagnose restore_cwd failure;
32849         that is the caller's job (and perhaps the caller does not care).
32850
32851         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
32852         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
32853         If the file already exists but is not a directory, don't bother
32854         to try to make its parents.
32855         Close potential file descriptor leak if we can't chdir("/") (!).
32856         Don't always return true if chdir($PWD) fails; return true only
32857         if the requested action was done successfully (except for the
32858         chdir($PWD)).
32859         Don't log final directory unless we actually made it.
32860         Refactor to avoid duplicate code to fix up permissions.
32861         Don't attempt to fix up parent permissions if chdir($PWD) fails.
32862
32863         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
32864         to make it a bit faster and (I hope) clearer.
32865         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
32866         Fix bug in formats like %2N.
32867
32868         * lib/verify.h: New file.
32869
32870 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
32871
32872         Sync from coreutils.
32873         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
32874
32875 2005-09-22  Jim Meyering  <jim@meyering.net>
32876
32877         Sync from coreutils.
32878
32879         * m4/lstat.m4 (gl_FUNC_LSTAT):
32880         Use AC_LIBSOURCES to require lstat.c and lstat.h.
32881         Remove obsolete comment.
32882         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
32883         * m4/xstrtod.m4: Likewise.
32884
32885         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
32886
32887 2005-09-22  Jim Meyering  <jim@meyering.net>
32888
32889         Sync from coreutils.
32890
32891         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
32892
32893         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
32894         the .tm_year member, since otherwise gcc-4.0 would now warn about
32895         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
32896
32897         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
32898         order to avoid an unsuppressible warning from gcc on 64-bit systems.
32899
32900         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
32901         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
32902         when run in a time zone for which daylight savings time is in effect
32903         for the starting date.
32904
32905         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
32906         stop us from restricting permissions of just-created absolute-named
32907         directories.
32908         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
32909         to restore initial working directory.
32910         * lib/mkdir-p.c (make_dir_parents): New parameter:
32911         different_working_dir, to tell caller if/when we change the working
32912         directory and are unable to return to the initial one.
32913         * lib/mkdir-p.h (make_dir_parents): Update prototype.
32914         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
32915         `return false'.  This fixes a bug introduced on 2004-07-30.
32916
32917         * lib/openat.c (fdopendir): Be sure to close the supplied
32918         file descriptor before returning.  This makes our replacement
32919         implementation a little closer to Solaris's, where fdopendir
32920         ties the file descriptor to the returned DIR* pointer.
32921         * lib/openat.c (unlinkat): New function.
32922         * lib/openat.h (unlinkat): Add prototype.
32923         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
32924         (openat_restore_fail): Rename from openat_restore_die.
32925         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
32926
32927         Provide an alternative to exiting immediately upon save_cwd or
32928         restore_cwd failure.  Now, an application can arrange e.g.,
32929         to perform a longjump in that case.
32930         * lib/openat.c: Include dirname.h.
32931         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
32932         (rpl_openat, fdopendir, fstatat): Call openat_save_die
32933         and openat_restore_die rather than calling error directly.
32934         Don't include "error.h" or "exitfail.h"; they're no longer needed.
32935
32936         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
32937         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
32938         define.
32939
32940         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
32941         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
32942                             int utc, int nanoseconds);
32943         Background:
32944         date should not have to allocate a megabyte of virtual memory to
32945         handle a format argument like +%1048575T.  When implemented with
32946         strftime, it must allocate such a buffer, use strftime to fill it
32947         in, print it, then free it.
32948         With fprintftime, it simply prints everything and exits.
32949         With no need for memory allocation, that's one fewer way to fail.
32950         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
32951         optional field width, not before, so we accept %9:z, not %:9z.
32952         (my_strftime): Be sure to use L_('x') for literals.
32953
32954         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
32955         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
32956         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
32957         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
32958         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
32959         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
32960         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
32961         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
32962         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
32963         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
32964         * lib/xgethostname.c, lib/xreadlink.c:
32965         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
32966
32967         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
32968         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
32969         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
32970         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
32971         and don't include <sys/file.h>).
32972
32973 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
32974
32975         Sync from coreutils.
32976
32977         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
32978         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
32979         [!LDAV_DONE]: Avoid unused variable warning.
32980
32981 2005-09-21  Bruno Haible  <bruno@clisp.org>
32982
32983         * lib/unicodeio.h (unicode_to_mb): New declaration.
32984
32985 2005-09-20  Derek Price  <derek@ximbiot.com>
32986
32987         * lib/getaddrinfo.c: Don't include <netdb.h> included from
32988         getaddrinfo.h.
32989
32990 2005-09-20  Bruno Haible  <bruno@clisp.org>
32991
32992         * gnulib-tool: Remove trailing slashes from the values specified for
32993         --source-base, --m4-base, --tests-base, --aux-dir.
32994         Suggested by Simon Josefsson <jas@extundo.com>.
32995
32996 2005-09-20  Bruno Haible  <bruno@clisp.org>
32997
32998         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
32999         func_modules_to_filelist, func_import, func_create_testdir): Make all
33000         sorting results locale-independent, so that gnulib-cache.m4 doesn't
33001         change when gnulib-tool is invoked in a different locale.
33002
33003 2005-09-19  Simon Josefsson  <jas@extundo.com>
33004
33005         * m4/socklen.m4: Fix typo.
33006
33007 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33008
33009         Use a consistent style for including <config.h>.
33010         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
33011         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
33012         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
33013         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
33014         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
33015         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
33016         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
33017         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
33018         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
33019         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
33020         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
33021         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
33022         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
33023         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
33024         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
33025         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
33026         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
33027         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
33028         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
33029         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
33030         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
33031         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
33032         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
33033         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
33034         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
33035         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
33036         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
33037         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
33038         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
33039         lib/xstrtoumax.c, lib/yesno.c:
33040         Standardize inclusion of config.h.
33041         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
33042         lib/inttostr.h:  Removed inclusion of config.h from header files.
33043         * lib/inttostr.c:  Adjusted in-tree users.
33044         * lib/timespec.h: Remove superfluous warning to include config.h.
33045         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
33046         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
33047         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
33048         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
33049         config.h with HAVE_CONFIG_H.
33050
33051 2005-09-19  Jim Meyering  <jim@meyering.net>
33052
33053         * modules/pathmax (License): Change to LGPL.
33054
33055 2005-09-19  Derek Price  <derek@ximbiot.com>
33056
33057         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
33058
33059 2005-09-19  Bruno Haible  <bruno@clisp.org>
33060
33061         * gnulib-tool (import): Provide default for --tests-base.
33062
33063 2005-09-19  Bruno Haible  <bruno@clisp.org>
33064
33065         * doc/quote.texi: New file, extracted from gnulib.texi.
33066         * doc/ctime.texi: New file, extracted from gnulib.texi.
33067         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
33068         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
33069         * doc/gnulib.texi: Include them.
33070
33071 2005-09-18  Bruno Haible  <bruno@clisp.org>
33072
33073         Portability fix.
33074         * gnulib-tool (func_readlink): New function.
33075         (func_ln_if_changed): Use it.
33076
33077 2005-09-18  Bruno Haible  <bruno@clisp.org>
33078
33079         * gnulib-tool: Support --with-tests also with --import.
33080         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
33081         (func_import): Use variables $testsbase and $inctests. Emit a
33082         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
33083         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
33084         SUBDIRS += $testsdir.
33085         (func_create_testdir): Update.
33086
33087 2005-09-18  Bruno Haible  <bruno@clisp.org>
33088
33089         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
33090         instead of $dry_run.
33091         (func_cp_if_changed, func_mv_if_changed): Remove functions.
33092         (func_ln_if_changed): Don't handle dry-run here.
33093         (func_import): In dry-run mode, detect more precisely which actions
33094         would be performed, and don't use "...ing" verbs.
33095
33096 2005-09-18  Bruno Haible  <bruno@clisp.org>
33097
33098         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
33099         (func_import): Use join on two temporary files instead of three nested
33100         loops, in order to determine which files are new or old.
33101
33102 2005-09-18  Bruno Haible  <bruno@clisp.org>
33103
33104         * gnulib-tool (func_import): Comment out code that spits out the
33105         new files with --dry-run.
33106
33107 2005-09-18  Bruno Haible  <bruno@clisp.org>
33108
33109         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
33110
33111 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33112
33113         * lib/stat-time.h: New file.
33114         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
33115         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
33116         in a different way.
33117         (timespec_cmp): New function.
33118         * lib/utimecmp.c: Include stat-time.h.
33119         (SYSCALL_RESOLUTION): Depend on whether various struct stat
33120         members exist, not on the obsolescent ST_MTIM_NSEC.
33121         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
33122
33123 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33124
33125         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
33126
33127 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33128
33129         * MODULES.html.sh (File system functions): Add stat-time.
33130         * modules/stat-time: New file.
33131         * modules/timespec (Files): Remove m4/st_mtim.m4; this
33132         is now done in a different way, by the stat-time module.
33133         * modules/utimecmp (Depends-on): Add stat-time.
33134
33135 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
33136
33137         * m4/st_mtim.m4: Remove.  Superseded by...
33138         * m4/stat-time.m4: New file.
33139         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
33140         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
33141
33142 2005-09-15  Derek Price  <derek@ximbiot.com>
33143
33144         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
33145
33146 2005-09-15  Derek Price  <derek@ximbiot.com>
33147
33148         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
33149         * lib/regex_internal.c: Ditto, using this...
33150         (__GNUC_PREREQ): ...new macro.
33151         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
33152         using...
33153         (__GNUC_PREREQ): ...this new macro.
33154
33155         * lib/strstr.h: Include string.h. Define strstr as a macro here.
33156
33157 2005-09-15  Derek Price  <derek@ximbiot.com>
33158             Paul Eggert  <eggert@cs.ucla.edu>
33159
33160         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
33161         changes, consolidating in...
33162         * lib/regex_internal.h: ...this file.
33163
33164 2005-09-13  Jim Meyering  <jim@meyering.net>
33165
33166         * lib/canon-host.c: Filter through gnu indent and reword comments
33167         slightly.
33168         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
33169
33170 2005-09-13  Derek Price  <derek@ximbiot.com>
33171
33172         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
33173         failure.
33174         Reported by Jim Meyering  <jim@meyering.net>.
33175
33176 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
33177
33178         * lib/base64.c: Typo.
33179         (base64_encode): Put b64str in initialized data section.
33180
33181 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
33182
33183         Merge glibc and coreutils changes into gnulib, plus a few
33184         extra fixes.
33185         * lib/md5.c: Use #error rather than a string.
33186         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
33187         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
33188         (__attribute__): Define to empty for non recent-GCC.
33189         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
33190         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
33191         Renamed from their non-__ counterparts, with new macros replacing
33192         them if not _LIBC.  Add __THROW attribute.
33193         (rol): Remove.
33194         (struct md5_ctx): Align buffer if using GCC.
33195         * lib/sha1.h (struct sha1_ctx): Likewise.
33196         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
33197         The old name was backwards.
33198         (NOTSWAP): Remove; not used.
33199         (rol): New macro, moved here from md5.h.
33200         (sha1_process_block): Remove a FIXME that doesn't make sense.
33201
33202 2005-09-12  Derek Price  <derek@ximbiot.com>
33203
33204         Return usable errors from canon-host.
33205         * lib/canon-host.h: New file.
33206         * lib/canon-host.c (canon_host): Wrap...
33207         (canon_host_r): ...this new function, which now relies exclusively on
33208         getaddrinfo.
33209         (ch_strerror): New function.
33210         (last_cherror): New global.
33211         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
33212         interface.
33213         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
33214         void *.
33215         (freeaddrinfo): Free ai->ai_canonname when set.
33216
33217 2005-09-12  Derek Price  <derek@ximbiot.com>
33218
33219         Make canon-host require getaddrinfo.
33220         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
33221         AC_LIBSOURCE canon-host.h.  Call...
33222         (gl_PREREQ_CANON_HOST): ...this new function, which requires
33223         gl_GETADDRINFO.
33224         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
33225
33226 2005-09-12  Derek Price  <derek@ximbiot.com>
33227
33228         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
33229         LGPL.
33230         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
33231
33232 2005-09-12  Derek Price  <derek@ximbiot.com>
33233
33234         * lib/gai_strerror.c: Include config.h when available.  Include
33235         getaddrinfo.h before other headers to test interface.
33236         Reported by Larry Jones <lawrence.jones@ugs.com>.
33237
33238 2005-09-12  Derek Price  <derek@ximbiot.com>
33239             Paul Eggert  <eggert@cs.ucla.edu>
33240
33241         * modules/glob (Files): Add glob-libc.h.
33242
33243 2005-09-12  Derek Price  <derek@ximbiot.com>
33244             Paul Eggert  <eggert@cs.ucla.edu>
33245
33246         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
33247         glob_.h, glob-libc.h.
33248         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
33249
33250 2005-09-12  Derek Price  <derek@ximbiot.com>
33251             Paul Eggert  <eggert@cs.ucla.edu>
33252
33253         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
33254         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
33255         protecting things that should be done only in gnulib contexts.
33256         * lib/glob_.h: New file, containing only the glob things needed for
33257         gnulib.
33258         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
33259         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
33260         (glob, globfree, glob_pattern_p): Now defined simply in terms of
33261         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
33262         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
33263         and to respect the namespace rules better.
33264
33265 2005-09-08  Simon Josefsson  <jas@extundo.com>
33266
33267         * modules/socklen: New file.
33268
33269 2005-09-08  Simon Josefsson  <jas@extundo.com>
33270
33271         * m4/socklen.m4: New file.
33272
33273 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
33274
33275         * modules/utimens (Files): Add m4/utimbuf.m4, since
33276         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
33277         Reported by Sergey Poznyakoff.
33278
33279 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
33280
33281         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
33282         definitions, since that's the preferred style in glibc.
33283         Fix a minor spacing issue, and update copyright notice to match
33284         glibc's.
33285
33286 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
33287
33288         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
33289
33290 2005-09-06  Simon Josefsson  <jas@extundo.com>
33291
33292         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
33293         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
33294
33295 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
33296
33297         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
33298         warning.
33299
33300 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
33301
33302         * config/srclist.txt: Add glibc bug 1302.
33303
33304 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
33305
33306         Change bitset word type from unsigned int to unsigned long int,
33307         as this has better performance on typical 64-bit hosts.
33308         Port bitset code to hosts with unusual word sizes.
33309         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
33310         (build_collating_symbol):
33311         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
33312         argument is a bitset.  This is merely a style issue, but it makes
33313         it clearer that an entire array is expected.
33314         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
33315         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
33316         Port to the case where bitset_word is not the same as unsigned int.
33317         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
33318         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
33319         Likewise.
33320         * lib/regexec.c (check_dst_limits_calc_pos_1,
33321         check_subexp_matching_top):
33322         (build_trtable, group_nodes_into_DFAstates):
33323         Likewise.
33324         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
33325         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
33326         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
33327         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
33328         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
33329         * lib/regcomp.c (optimize_subexps, lower_subexp):
33330         Work even if bitset_word has holes in its bitwise representation.
33331         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
33332         * lib/regexec.c (check_dst_limits_calc_pos_1,
33333         check_subexp_matching_top):
33334         Likewise.
33335         * lib/regex_internal.c (re_string_reconstruct):
33336         Don't assume UCHAR_MAX == 255.
33337         * lib/regex_internal.h (bitset_set_all): Likewise.
33338         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
33339         All uses changed.
33340         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
33341         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
33342         All uses changed.
33343         (BITSET_WORD_MAX): New macro.
33344         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
33345         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
33346         (bitset_empty, bitset_copy):
33347         Prefer sizeof (bitset) to multiplying it out ourselves.
33348         (bitset_not_merge): Remove; unused.
33349         (bitset_contain): Return bool, not unsigned int with one bit on.
33350         All callers changed.
33351         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
33352         alignment than re_node_set; do this by defining a new internal
33353         type struct dests_alloc and using it to allocate memory.
33354
33355 2005-09-05  Bruno Haible  <bruno@clisp.org>
33356
33357         * gnulib-tool (func_import): Fix comparison in handling of symbolic
33358         links.
33359
33360 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
33361
33362         * modules/size_max (Makefile.am): Add size_max.h
33363
33364 2005-09-04  Derek Price  <derek@ximbiot.com>
33365
33366         * gnulib-tool (func_import): Fix reversed $symbolic logic.
33367
33368 2005-09-03  Simon Josefsson  <jas@extundo.com>
33369
33370         * gnulib-tool: Fix typo.
33371
33372 2005-09-03  Simon Josefsson  <jas@extundo.com>
33373
33374         * config/srclist.txt: Add glibc bug 1293.
33375
33376 2005-09-03  Derek Price  <derek@ximbiot.com>
33377
33378         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
33379         From Larry Jones <lawrence.jones@ugs.com>.
33380
33381 2005-09-02  Simon Josefsson  <jas@extundo.com>
33382
33383         * modules/socklen: New file.
33384
33385 2005-09-02  Simon Josefsson  <jas@extundo.com>
33386
33387         * modules/havelib: New module.
33388
33389         * modules/gettext, modules/iconv, modules/lock, modules/readline:
33390         Use havelib.
33391
33392 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
33393
33394         Check for arithmetic overflow when calculating sizes, to prevent
33395         some buffer-overflow issues.  These patches are conservative, in the
33396         sense that when I couldn't determine whether an overflow was possible,
33397         I inserted a run-time check.
33398         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
33399         macros.
33400         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
33401         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
33402         (re_xnrealloc, re_x2nrealloc): New inline functions.
33403         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
33404         parse_bracket_exp):
33405         (build_equiv_class, build_charclass): Check for arithmetic overflow
33406         in size expression calculations.
33407         * lib/regex_internal.c (re_string_realloc_buffers):
33408         (build_wcs_upper_buffer, re_node_set_add_intersect):
33409         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
33410         (re_dfa_add_node, register_state): Likewise.
33411         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
33412         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
33413         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
33414         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
33415
33416 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
33417
33418         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
33419         m4/ulonglong.m4.  Problem reported by Martin Lambers.
33420
33421 2005-09-02  Bruno Haible  <bruno@clisp.org>
33422
33423         Support for lib vs. lib64 distinction on biarch platforms.
33424         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
33425         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
33426         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
33427
33428 2005-09-02  Bruno Haible  <bruno@clisp.org>
33429
33430         * gnulib-tool (import): In the other first-use case, provide defaults
33431         as well.
33432
33433 2005-09-02  Bruno Haible  <bruno@clisp.org>
33434
33435         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
33436         patches not yet found in the latest gettext release.
33437
33438 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33439
33440         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
33441         to avoid a collision with bits/local_lim.h in glibc.
33442         All uses changed.  Problem reported by Dmitry V. Levin in
33443         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
33444
33445         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
33446         bugs in int versus size_t comparisons.
33447         (re_string_context_at): Fix bug where the code assumed that
33448         Idx is signed.
33449
33450         Use bool where appropriate.
33451         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
33452         All callers changed.
33453         (calc_eclosure_iter): Likewise, for ROOT arg.
33454         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
33455         (build_charclass_op): Likewise, for NON_MATCH arg.
33456         * lib/regex_internal.c (re_string_allocate, re_string_construct):
33457         (re_string_construct_common): Likewise, for ICASE arg.
33458         * lib/regexec.c (re_search_2_stub, re_search_stub):
33459         Likewise, for RET_LEN arg.
33460         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
33461         (set_regs): Likewise, for FL_BACKTRACK arg.
33462         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
33463         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
33464         (calc_eclosure_iter, parse_bracket_exp):
33465         Use bool for internal variables that are booleans.
33466         * lib/regexec.c (re_search_internal, check_matching,
33467         proceed_next_node):
33468         (set_regs, build_sifted_states, sift_states_bkref):
33469         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
33470         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
33471         (find_collation_sequence_value):
33472         Likewise.
33473         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
33474         (re_node_set_compare):
33475         Return bool, not int. All callers changed.
33476         * lib/regexec.c (check_halt_node_context, check_dst_limits):
33477         (build_trtable, check_node_accept): Likewise.
33478         * lib/regex_internal.h: Include stdbool.h.
33479
33480         Fix bugs uncovered when converting to bool.
33481         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
33482         failure instead of charging ahead blindly.
33483         * lib/regex_internal.c (register_state): Likewise.
33484         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
33485         for freeing internal storage.
33486         (group_nodes_into_DFA_states): Use unsigned int, not int, for
33487         bitset pieces used as boolean, to avoid undefined behavior
33488         on hosts that do int overflow checking.
33489
33490 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
33491
33492         * config/srclist.txt: Add glibc bugs 1285-1287.
33493
33494 2005-09-01  Jim Meyering  <jim@meyering.net>
33495
33496         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
33497         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
33498         Require gl_STAT_MACROS, too.
33499
33500 2005-09-01  Bruno Haible  <bruno@clisp.org>
33501
33502         * gnulib-tool (import): In the first-use case, provide defaults.
33503
33504 2005-09-01  Bruno Haible  <bruno@clisp.org>
33505
33506         * gnulib-tool (func_import): Remove the .tmp files.
33507
33508 2005-09-01  Bruno Haible  <bruno@clisp.org>
33509
33510         * gnulib-tool (func_import): Fix handling of symbolic links.
33511
33512 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33513
33514         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
33515         old glibc regex code mishandles strings longer than 2**31 bytes.
33516         This patch fixes this when the regex code is used in gnulib
33517         (i.e., outside glibc).
33518
33519         This patch should not affect the use of the regex code inside
33520         glibc.  No doubt this problem also needs to be handled for glibc
33521         as well, but the result will be an incompatible change to the
33522         glibc ABI, and the old ABI will have to be supported too.  That
33523         can be the the subject for another patch.
33524
33525         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
33526         governing whether the rest of this patch is active.  By default,
33527         the macro is disabled and the patch has no effect.
33528         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
33529         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
33530         (struct re_pattern_buffer, re_search, re_search_2, re_match):
33531         (re_match_2, re_set_registers): Use the new types.
33532         * lib/regex_internal.h (Idx, re_hashval_t): New types.
33533         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
33534         New macros.
33535         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
33536         (re_string_context_at, bin_tree_t, re_dfastate_t):
33537         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
33538         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
33539         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
33540         (re_string_char_size_at, re_string_wchar_at):
33541         (re_string_elem_size_at):
33542         Use the new types and macros to port to 64-bit hosts.
33543         Use unsigned types for internal values, so that the code
33544         mostly works even for arrays larger than SSIZE_MAX.
33545         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
33546         (search_duplicated_node, calc_eclosure_iter, fetch_number):
33547         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
33548         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
33549         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
33550         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
33551         (calc_inveclosure, parse_dup_op, build_range_exp):
33552         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
33553         (fetch_number, create_token_tree, mark_opt_subexp):
33554         Likewise.
33555         * lib/regex_internal.c (re_string_construct_common,
33556         create_ci_newstate):
33557         (create_cd_newstate, re_string_allocate, re_string_construct):
33558         (re_string_realloc_buffers, build_wcs_upper_buffer):
33559         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
33560         (re_string_reconstruct, re_string_peek_byte_case):
33561         (re_string_fetch_byte_case, re_string_context_at):
33562         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
33563         (re_node_set_init_copy, re_node_set_add_intersect):
33564         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33565         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33566         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
33567         (re_acquire_state, re_acquire_state_context, register_state):
33568         Likewise.
33569         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
33570         search_cur_bkref_entry):
33571         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
33572         (re_search_internal, re_search_2_stub, re_search_stub)
33573         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
33574         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
33575         (update_cur_sifted_state, check_dst_limits):
33576         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
33577         (check_subexp_limits, sift_states_bkref, merge_state_array):
33578         (check_subexp_matching_top, get_subexp, get_subexp_sub):
33579         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
33580         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
33581         (expand_bkref_cache, check_node_accept_bytes):
33582         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
33583         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
33584         (acquire_init_state_context, check_halt_node_context):
33585         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
33586         (sift_states_backward, clean_state_log_if_needed):
33587         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
33588         (find_recover_state, transit_state_sb, transit_state_mb):
33589         (transit_state_bkref, build_trtable, match_ctx_clean):
33590         Likewise.
33591         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
33592         to work around an assumption that REG_MISSING is negative.
33593
33594         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
33595         (seek_collating_symbol_entry) [defined _LIBC]:
33596         (lookup_collation_sequence_value) [defined _LIBC]:
33597         (build_range_exp, build_collating_symbol) [defined _LIBC]:
33598         Use prototypes rather than old-style function definitions.
33599         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
33600         (transit_state_sb) [0]:
33601         (find_collation_sequence_value) [defined _LIBC]: Likewise.
33602
33603         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
33604         rm_eo.
33605
33606         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
33607         (optimize_subexps, lower_subexp):
33608         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
33609         since the signed shift might overflow.  Use 1u<<31 instead.
33610         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
33611         Likewise.
33612         * lib/regexec.c (check_dst_limits_calc_pos_1,
33613         check_subexp_matching_top): Likewise.
33614
33615         * lib/regcomp.c (optimize_subexps, lower_subexp):
33616         Use CHAR_BIT rather than 8, for clarity.
33617         * lib/regexec.c (check_dst_limits_calc_pos_1):
33618         (check_subexp_matching_top): Likewise.
33619         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
33620         have to worry about portability issues when shifting it left.
33621         Remove no-longer-needed test for table_size > 0.
33622         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
33623         in a word, as the resulting behavior is undefined.
33624         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
33625         in one case, a <= should have been an <, and in another case the
33626         whole test was missing.
33627         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
33628         the standard name CHAR_BIT.
33629         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
33630         this is not true on one's complement and signed-magnitude hosts.
33631
33632         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
33633         next_last_offset.
33634         (struct re_dfa_t): Remove unused member states_alloc.
33635         * lib/regcomp.c (init_dfa): Don't initialize unused members.
33636
33637 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33638
33639         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
33640         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
33641         and large-file glibc and in 32-bit large-file Solaris.
33642
33643 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33644
33645         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
33646         lengths fit in regoff_t; this isn't true if regoff_t is the same
33647         width as size_t.
33648         * lib/regex.c (re_search_internal): 5th arg is LAST_START
33649         (= START + RANGE) instead of RANGE.  This avoids overflow
33650         problems when regoff_t is the same width as size_t.
33651         All callers changed.
33652         (re_search_2_stub): Check for overflow when adding the
33653         sizes of the two strings.
33654         (re_search_stub): Check for overflow when adding START
33655         to RANGE; if it occurs, substitute the extreme value.
33656
33657 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
33658
33659         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
33660
33661 2005-08-31  Jim Meyering  <jim@meyering.net>
33662
33663         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
33664         a pointer-to-const.
33665         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
33666         (register_state): Likewise.
33667         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
33668         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
33669         (group_nodes_into_DFAstates): Likewise.
33670
33671 2005-08-31  Jim Meyering  <jim@meyering.net>
33672
33673         * check-module: Add a FIXME comment.
33674
33675 2005-08-31  Eric Blake  <ebb9@byu.net>
33676
33677         * modules/unistd-safer (Files): Add unistd--.h.
33678         * modules/stdio-safer (Files): Add stdio--.h.
33679
33680 2005-08-31  Derek Price  <derek@ximbiot.com>
33681
33682         * lib/getdelim.c (getdelim): Return EOF on EOF.
33683         Reported by Larry Jones <lawrence.jones@ugs.com>.
33684
33685 2005-08-31  Bruno Haible  <bruno@clisp.org>
33686
33687         Avoid unnecessary diffs in the generated lib/Makefile.am.
33688         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
33689         the generated files.
33690         (func_import): Don't set cmd.
33691
33692 2005-08-31  Bruno Haible  <bruno@clisp.org>
33693
33694         * lib/strstr.c: Include <stddef.h>, for NULL.
33695         * lib/strcasestr.c: Likewise.
33696         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
33697
33698 2005-08-31  Bruno Haible  <bruno@clisp.org>
33699
33700         * gnulib-tool: New option --macro-prefix.
33701         (func_import): Use macro_prefix.
33702         (import): Handle option --macro-prefix.
33703
33704 2005-08-31  Bruno Haible  <bruno@clisp.org>
33705
33706         * gnulib-tool (import): Rename most ac_* variables to cached_*.
33707         Also use new variables cached_lgpl, cached_libtool.
33708
33709 2005-08-31  Bruno Haible  <bruno@clisp.org>
33710
33711         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
33712         always instantiating them.
33713
33714 2005-08-31  Bruno Haible  <bruno@clisp.org>
33715
33716         * gnulib-tool (func_import): Read the previous cached settings
33717         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
33718         earlier added by gnulib but are now dropped. Warn when a gnulib file
33719         overwrites a non-gnulib file.
33720
33721 2005-08-31  Bruno Haible  <bruno@clisp.org>
33722
33723         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
33724         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
33725         projects that don't keep autogenerated files in CVS. Put into
33726         actioncmd only the specified modules, not the transitive closure.
33727
33728 2005-08-31  Bruno Haible  <bruno@clisp.org>
33729
33730         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
33731         Create directories that shall be filled.
33732         (import): Don't look for gl_* macros in configure.ac. Recurse across
33733         all directories containing a gnulib-cache.m4 files, if meaningful.
33734
33735 2005-08-31  Bruno Haible  <bruno@clisp.org>
33736
33737         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
33738         (import): Set seen_libtool when we see gl_LIBTOOL.
33739
33740 2005-08-31  Bruno Haible  <bruno@clisp.org>
33741
33742         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
33743         declaration macro definitions from generated gnulib.m4.
33744
33745 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
33746
33747         * lib/iconvme.h: Add prototype for iconv_alloc.
33748
33749 2005-08-29  Simon Josefsson  <jas@extundo.com>
33750
33751         * lib/iconvme.c: Fix errno.
33752
33753 2005-08-29  Bruno Haible  <bruno@clisp.org>
33754
33755         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
33756         that it works when the directory contains spaces.
33757
33758 2005-08-29  Bruno Haible  <bruno@clisp.org>
33759
33760         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
33761
33762 2005-08-29  Bruno Haible  <bruno@clisp.org>
33763
33764         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
33765         Emit more advice.
33766
33767 2005-08-29  Bruno Haible  <bruno@clisp.org>
33768         and Stepan Kasal  <kasal@ucw.cz>
33769
33770         * check-module: If more parameters are given, check each of them
33771         separately; add more exceptions, as noted by Jim Meyering.
33772         (check_module): New procedure.
33773         (%exempt_header): Now contains all exceptions.
33774
33775 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
33776
33777         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
33778
33779 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
33780
33781         * lib/iconvme.c: Split iconv_string into iconv_alloc.
33782
33783 2005-08-28  Bruno Haible  <bruno@clisp.org>
33784
33785         * m4/gnulib-tool.m4: New file.
33786
33787 2005-08-27  Jim Meyering  <jim@meyering.net>
33788
33789         * modules/unistd-safer (Files): Add pipe-safer.c.
33790         * modules/fcntl-safer (Files): Add creat-safer.c.
33791
33792 2005-08-27  Jim Meyering  <jim@meyering.net>
33793
33794         * m4/stdlib-safer.m4: New file.  From coreutils.
33795         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
33796         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
33797         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
33798         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
33799         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
33800
33801 2005-08-27  Jim Meyering  <jim@meyering.net>
33802
33803         * lib/fopen-safer.c: Merge minor changes from coreutils.
33804         * lib/dup-safer.c: Likewise.
33805         * lib/fd-safer.c: Likewise.
33806
33807         Merge from coreutils.
33808         * lib/stdio--.h: New file.
33809         * lib/stdlib--.h: New file.
33810         * lib/mkstemp-safer.c: New file.
33811
33812         GNU tar needs these.
33813         * lib/pipe-safer.c: New file.
33814         * lib/creat-safer.c: New file.
33815         * lib/fcntl--.h (creat): Define to creat_safer.
33816         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
33817         * lib/unistd--.h (pipe): Define to pipe_safer.
33818         * lib/unistd-safer.h: Declare pipe_safer.
33819
33820 2005-08-26  Simon Josefsson  <jas@extundo.com>
33821
33822         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
33823         Haible <bruno@clisp.org>.
33824
33825 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
33826
33827         * lib/regex_internal.h: Remove all references to
33828         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
33829         or better.
33830         (bitset_not, bitset_merge, bitset_not_merge):
33831         (bitset_mask, re_string_allocate, re_string_construct):
33832         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
33833         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
33834         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
33835         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
33836         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33837         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33838         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
33839         (re_acquire_state_context):
33840         Remove unnecessary forward decls.
33841         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
33842         Put __attribute at function definition,
33843         now that the function decl has been removed.
33844         * lib/regex_internal.c (re_string_peek_byte_case):
33845         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
33846         Likewise.
33847
33848 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
33849
33850         * m4/regex.m4: Add AC_PREREQ(2.50).
33851         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
33852
33853 2005-08-25  Simon Josefsson  <jas@extundo.com>
33854
33855         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
33856         __fsetlocking.
33857
33858 2005-08-25  Simon Josefsson  <jas@extundo.com>
33859
33860         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
33861         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
33862         GLIBC specific code.
33863
33864 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33865
33866         Make regex safe for g++.  This fixes one real bug (an "err"
33867         that should have been "*err").  g++ problem reported by
33868         Sam Steingold.
33869         * lib/regex_internal.h (re_calloc): New macro, consistent with
33870         re_malloc etc.  All callers of calloc changed to use re_calloc.
33871         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
33872         not int.  All callers changed.
33873         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
33874         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
33875         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
33876         (find_recover_state): Change "err" to "*err"; this fixes what
33877         appears to be a real bug.
33878         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
33879         versus int.
33880
33881 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33882
33883         * modules/regex (Depends-on): Add malloc, since the code
33884         assumes that !malloc(0) means failure.
33885
33886 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33887
33888         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
33889
33890         alloca modernization/simplification for regex.
33891         * lib/regex.c: Remove portability cruft for alloca.  This no longer
33892         needs to be at the start of the file, and can be moved into
33893         regex_internal.h and simplified.
33894         * lib/regex_internal.h: Include <alloca.h>.
33895         (__libc_use_alloca) [!defined _LIBC]: New macro.
33896         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
33897         now works outside glibc.
33898
33899 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
33900
33901         * config/srclist.txt: Add glibc bugs 1241, 1245.
33902
33903 2005-08-25  Jim Meyering  <jim@meyering.net>
33904
33905         * lib/open-safer.c: Include <config.h>.
33906         Otherwise, we'd lose LARGEFILE support in any file using
33907         e.g. "fcntl--.h"
33908
33909 2005-08-25  Bruno Haible  <bruno@clisp.org>
33910
33911         * m4/minmax.m4: Require autoconf 2.52.
33912         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
33913         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
33914         alternatives of translit over the alphabet.
33915         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
33916
33917 2005-08-24  Simon Josefsson  <jas@extundo.com>
33918
33919         * tests/test-getpass.c: New file.
33920
33921 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33922
33923         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
33924         for GNU regex features.
33925
33926 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
33927
33928         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
33929         * lib/regex.h (regerror): Likewise.
33930
33931         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
33932         requires this.  (The code never needed it.)
33933
33934         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
33935         All uses of recently-renamed identifiers changed to use the new,
33936         POSIX-compliant names.  The code will build and run just fine
33937         without these changes, but it's better to eat our own dog food
33938         and use the standard-conforming names.
33939
33940         * lib/regex.h: Fix a multitude of POSIX name space violations.
33941         These changes have an effect only for programs that define
33942         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
33943         do not change anything for programs compiled in the normal way.
33944         Also, there is no effect on the ABI.
33945
33946         (_REGEX_SOURCE): New macro.
33947         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
33948         defined and _GNU_SOURCE is not; this fixes a name space violation.
33949
33950         Rename the following macros to obey POSIX requirements.
33951         The old names are still visible as macros if _REGEX_SOURCE is defined.
33952         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
33953         RE_BACKSLASH_ESCAPE_IN_LISTS.
33954         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
33955         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
33956         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
33957         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
33958         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
33959         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
33960         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
33961         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
33962         (REG_INTERVALS): renamed from RE_INTERVALS.
33963         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
33964         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
33965         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
33966         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
33967         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
33968         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
33969         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
33970         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
33971         RE_UNMATCHED_RIGHT_PAREN_ORD.
33972         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
33973         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
33974         (REG_DEBUG): renamed from RE_DEBUG.
33975         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
33976         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
33977         unusual, since we can't clash with the POSIX REG_ICASE.
33978         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
33979         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
33980         (REG_NO_SUB): renamed from RE_NO_SUB.
33981         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
33982         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
33983         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
33984         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
33985         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
33986         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
33987         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
33988         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
33989         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
33990         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
33991         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
33992         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
33993         RE_SYNTAX_POSIX_MINIMAL_BASIC.
33994         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
33995         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
33996         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
33997         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
33998         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
33999         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
34000         (REG_FIXED): Renamed from REGS_FIXED.
34001         (REG_NREGS): Renamed from RE_NREGS.
34002
34003         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
34004         of other REG_* macros, since POSIX says the user is allowed to
34005         #undef these macros selectively.
34006
34007         (reg_errcode_t): Update comment stating what other tables need
34008         to be consistent.
34009
34010         Rename the following enum values to obey POSIX requirements.
34011         The old names are still visible as macros.
34012         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
34013         is not defined, since GNU is supposed to be a superset of POSIX as
34014         much as possible, and since we want reg_errcode_t to be a signed
34015         type for implementation consistency.
34016         (_REG_NOERROR): Renamed from REG_NOERROR.
34017         (_REG_NOMATCH): Renamed from REG_NOMATCH.
34018         (_REG_BADPAT): Renamed from REG_BADPAT.
34019         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
34020         (_REG_ECTYPE): Renamed from REG_ECTYPE.
34021         (_REG_EESCAPE): Renamed from REG_EESCAPE.
34022         (_REG_ESUBREG): Renamed from REG_ESUBREG.
34023         (_REG_EBRACK): Renamed from REG_EBRACK.
34024         (_REG_EPAREN): Renamed from REG_EPAREN.
34025         (_REG_EBRACE): Renamed from REG_EBRACE.
34026         (_REG_BADBR): Renamed from REG_BADBR.
34027         (_REG_ERANGE): Renamed from REG_ERANGE.
34028         (_REG_ESPACE): Renamed from REG_ESPACE.
34029         (_REG_BADRPT): Renamed from REG_BADRPT.
34030         (_REG_EEND): Renamed from REG_EEND.
34031         (_REG_ESIZE): Renamed from REG_ESIZE.
34032         (_REG_ERPAREN): Renamed from REG_ERPAREN.
34033         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
34034         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
34035         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
34036         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
34037
34038         (_REG_RE_NAME, _REG_RM_NAME): New macros.
34039         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
34040         changed.  But support the old name if the new one is not defined
34041         and if _REGEX_SOURCE.
34042
34043         Change the following member names in struct re_pattern_buffer.
34044         The old names are still supported if !_REGEX_SOURCE.
34045         The new names are always supported, regardless of _REGEX_SOURCE.
34046         (re_buffer): Renamed from buffer.
34047         (re_allocated): Renamed from allocated.
34048         (re_used): Renamed from used.
34049         (re_syntax): Renamed from syntax.
34050         (re_fastmap): Renamed from fastmap.
34051         (re_translate): Renamed from translate.
34052         (re_can_be_null): Renamed from can_be_null.
34053         (re_regs_allocated): Renamed from regs_allocated.
34054         (re_fastmap_accurate): Renamed from fastmap_accurate.
34055         (re_no_sub): Renamed from no_sub.
34056         (re_not_bol): Renamed from not_bol.
34057         (re_not_eol): Renamed from not_eol.
34058         (re_newline_anchor): Renamed from newline_anchor.
34059
34060         Change the following member names in struct re_registers.
34061         The old names are still supported if !_REGEX_SOURCE.
34062         The new names are always supported, regardless of _REGEX_SOURCE.
34063         (rm_num_regs): Renamed from num_regs.
34064         (rm_start): Renamed from start.
34065         (rm_end): Renamed from end.
34066
34067         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
34068         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
34069         Prepend __ to parameter names.
34070
34071         Undo yesterday's changes.
34072
34073 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
34074
34075         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
34076         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
34077         lib/regex.c.
34078
34079 2005-08-24  Jim Meyering  <jim@meyering.net>
34080
34081         Sync from coreutils.
34082         * m4/fcntl-safer.m4: New file.
34083
34084         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
34085         and object files for this module.
34086
34087 2005-08-24  Jim Meyering  <jim@meyering.net>
34088
34089         Sync from coreutils.
34090         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
34091
34092 2005-08-24  Jim Meyering  <jim@meyering.net>
34093
34094         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
34095         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
34096
34097 2005-08-24  Jim Meyering  <jim@meyering.net>
34098
34099         * modules/fcntl-safer: New module.
34100         * modules/fts (Depends-on): Add fcntl-safer.
34101         * MODULES.html.sh (File descriptor based Input/Output):
34102         Add fcntl-safer.
34103
34104 2005-08-24  Bruno Haible  <bruno@clisp.org>
34105
34106         Support for unit test modules.
34107         * modules/README: Mention tests modules.
34108         * modules/TEMPLATE-TESTS: New file.
34109         * gnulib-tool: New options --extract-tests-module, --with-tests and
34110         --tests-base (unused for the moment).
34111         (testsbase, inctests): New variables.
34112         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
34113         (func_verify_module): Exclude TEMPLATE-TESTS.
34114         (func_verify_nontests_module, func_verify_tests_module): New functions.
34115         (func_get_dependencies): Add implicit dependency for tests modules.
34116         (func_get_tests_module): New function.
34117         (func_modules_transitive_closure): When --with-tests was specified,
34118         include the unit tests as well, unless explicitly avoided.
34119         (func_emit_lib_Makefile_am): Ignore the tests modules here.
34120         (func_emit_tests_Makefile_am): New function.
34121         (func_create_testdir): When --with-tests was specified, emit a
34122         tests/ directory.
34123         * MODULES.html.sh (Future developments): Update.
34124
34125 2005-08-24  Bruno Haible  <bruno@clisp.org>
34126
34127         * modules/tls-tests: New file.
34128         * tests/test-tls.c: New file, from GNU gettext.
34129
34130 2005-08-24  Bruno Haible  <bruno@clisp.org>
34131
34132         * modules/lock-tests: New file.
34133         * tests/test-lock.c: New file, from GNU gettext.
34134
34135 2005-08-24  Bruno Haible  <bruno@clisp.org>
34136
34137         * lib/lock.h: Add multiple inclusion guard.
34138         * lib/tls.h: Add multiple inclusion guard.
34139
34140 2005-08-24  Bruno Haible  <bruno@clisp.org>
34141
34142         * gnulib-tool: Add support for the --aux-dir option to
34143         --create-testdir, --create-megatestdir, --test, --megatest.
34144         (func_create_testdir, func_create_megatestdir): Optionally emit a
34145         AC_CONFIG_AUX_DIR directive.
34146         (create-testdir, create-megatestdir, test, megatest): Provide a
34147         default value for $auxdir.
34148
34149 2005-08-24  Bruno Haible  <bruno@clisp.org>
34150
34151         * gnulib-tool (import): Use compound statement instead of subshell
34152         where possible.
34153
34154 2005-08-24  Bruno Haible  <bruno@clisp.org>
34155
34156         * gnulib-tool (import): Change --aux-dir default to "build-aux".
34157
34158 2005-08-24  Bruno Haible  <bruno@clisp.org>
34159
34160         * gnulib-tool (func_version): Update.
34161
34162 2005-08-24  Bruno Haible  <bruno@clisp.org>
34163
34164         * gnulib-tool (func_import, func_create_testdir,
34165         func_create_megatestdir): Quote all autoconf macro arguments.
34166
34167 2005-08-24  Bruno Haible  <bruno@clisp.org>
34168
34169         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
34170         option --force, because --force causes the aclocal.m4 of each
34171         subdirectory to be newer than the corresponding config.h.in.
34172
34173 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
34174
34175         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
34176         All contents moved to gl_REGEX.
34177         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
34178         assume that it does.
34179
34180 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
34181
34182         * lib/regex.h (REG_NOSYS)
34183         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
34184         Define, since POSIX requires it as of 2001.
34185         (_REG_ENOSYS)
34186         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
34187         New private symbol, used to keep the enum signed in all cases.
34188         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
34189         Youngman in
34190         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
34191
34192         * lib/regex_internal.c (re_string_skip_chars, register_state):
34193         (calc_state_hash):
34194         Remove forward decls; no longer needed now that we use prototypes.
34195         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
34196         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
34197         (clean_state_log_if_needed): Likewise.
34198
34199 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
34200
34201         * config/srclist.txt: Add glibc bugs 1231-1233.
34202
34203 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
34204
34205         Fix problems reported by Sam Steingold in
34206         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
34207         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
34208         assumed that reg_errcode_t is a signed type, which is not
34209         necessarily true if _XOPEN_SOURCE is not defined.
34210         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
34211         since some compilers warn about it otherwise.
34212
34213 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
34214
34215         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
34216         (init_word_char, create_initial_state, duplicate_node_closure):
34217         (fetch_token, peek_token_bracket, build_range_exp):
34218         (build_collating_symbol): Remove forward decls; no longer needed
34219         now that we use prototypes.
34220
34221         * lib/regcomp.c:
34222         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
34223         (re_compile_fastmap_iter, regcomp, regerror, regfree):
34224         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
34225         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
34226         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
34227         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
34228         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
34229         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
34230         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
34231         (build_range_exp, build_collating_symbol, parse_bracket_exp):
34232         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
34233         (build_charclass, build_charclass_op, fetch_number, create_tree):
34234         (create_token_tree, mark_opt_subexp, duplicate_tree):
34235         Use prototypes rather than old-style definitions.
34236
34237         * lib/regex_internal.c:
34238         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
34239         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
34240         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
34241         (re_string_reconstruct, re_string_peek_byte_case):
34242         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
34243         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
34244         (re_node_set_init_copy, re_node_set_add_intersect):
34245         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34246         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34247         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
34248         (re_acquire_state, re_acquire_state_context, register_state):
34249         (create_ci_newstate, create_cd_newstate, free_state):
34250         Likewise.
34251         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
34252         re_search_2):
34253         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
34254         (re_search_internal, prune_impossible_nodes):
34255         (acquire_init_state_context, check_matching, static):
34256         (check_halt_node_context, check_halt_state_context, proceed_next_node):
34257         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
34258         (update_regs, sift_states_backward, build_sifted_states):
34259         (clean_state_log_if_needed, merge_state_array):
34260         (update_cur_sifted_state, add_epsilon_src_nodes):
34261         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
34262         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
34263         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
34264         (find_recover_state, check_subexp_matching_top, transit_state_mb):
34265         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
34266         (check_arrival, check_arrival_add_next_nodes):
34267         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
34268         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
34269         (check_node_accept_bytes, check_node_accept, extend_buffers):
34270         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
34271         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
34272         (sift_ctx_init):
34273         Likewise.
34274
34275         * lib/regex_internal.h:
34276         (re_string_allocate, re_string_construct, re_string_reconstruct):
34277         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
34278         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
34279         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
34280         (re_string_context_at, re_string_peek_byte_case):
34281         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
34282         is defined, since we now use prototypes always.
34283
34284         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
34285         C89 or better.  All uses removed.
34286
34287 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
34288
34289         * config/srclist.txt: Add glibc bugs 1220-1227.
34290
34291 2005-08-20  Jim Meyering  <jim@meyering.net>
34292
34293         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
34294         of unused local, dfa.
34295
34296 2005-08-20  Bruno Haible  <bruno@clisp.org>
34297
34298         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
34299
34300 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
34301
34302         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
34303         (re_node_set_insert_last, re_dfa_add_node):
34304         Rename local variables to avoid GCC shadowing warnings.
34305
34306 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
34307
34308         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
34309         [defined lint]: Suppress bogus uninitialized-variable warnings.
34310
34311         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
34312         and let the caller return REG_ESPACE if out of space.  This
34313         removes an uninitialied-variable warning with GCC 4.0.1, and also
34314         avoids taking the address of a local variable.  All callers
34315         changed.
34316
34317 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
34318
34319         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
34320         $LIBCSRC/posix/regexec.c.
34321         Add glibc bug 1217 for regcomp.c.
34322
34323 2005-08-19  Jim Meyering  <jim@meyering.net>
34324
34325         * lib/regexec.c (proceed_next_node): Redo local variables to
34326         avoid GCC shadowing warnings.
34327
34328 2005-08-18  Bruno Haible  <bruno@clisp.org>
34329
34330         * lib/strstr.c (strstr): Fix return value in multibyte case.
34331         * lib/strcasestr.c (strcasestr): Likewise.
34332
34333 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
34334
34335         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
34336
34337 2005-08-17  Jim Meyering  <jim@meyering.net>
34338
34339         Make the %s format (seconds since the epoch) work for a negative
34340         number and when used with a zero-padded field width, e.g. %015s.
34341
34342         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
34343         label so that it precedes the code to set `digits'.  Otherwise,
34344         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
34345         print `00-22'.  Now, it prints `-0022', as it should.
34346
34347 2005-08-17  Bruno Haible  <bruno@clisp.org>
34348
34349         * modules/strstr (Files): Add m4/mbrtowc.m4.
34350         (Depends-on): Add mbuiter.
34351
34352 2005-08-17  Bruno Haible  <bruno@clisp.org>
34353
34354         * modules/strcasestr: New file.
34355         * MODULES.html.sh (String handling, based on ANSI C 89): Add
34356         strcasestr.
34357
34358 2005-08-17  Bruno Haible  <bruno@clisp.org>
34359
34360         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
34361
34362 2005-08-17  Bruno Haible  <bruno@clisp.org>
34363
34364         * modules/mbuiter: New file.
34365         * MODULES.html.sh (Extended multibyte and wide character utilities):
34366         Add mbuiter.
34367
34368 2005-08-17  Bruno Haible  <bruno@clisp.org>
34369
34370         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
34371         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
34372
34373 2005-08-17  Bruno Haible  <bruno@clisp.org>
34374
34375         * m4/strcasestr.m4: New file.
34376
34377 2005-08-17  Bruno Haible  <bruno@clisp.org>
34378
34379         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
34380         * lib/strstr.c: Completely rewritten, with multibyte locale support.
34381
34382 2005-08-17  Bruno Haible  <bruno@clisp.org>
34383
34384         * lib/strcasestr.h: New file.
34385         * lib/strcasestr.c: New file.
34386
34387 2005-08-17  Bruno Haible  <bruno@clisp.org>
34388
34389         * lib/strcasecmp.c: Use mbuiter.h.
34390
34391 2005-08-17  Bruno Haible  <bruno@clisp.org>
34392
34393         * lib/mbuiter.h: New file.
34394
34395 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
34396
34397         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
34398         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
34399         and gl_GETOPT are both invoked via different paths (as happens
34400         with GNU tar CVS because it uses both argp and getopt), the former
34401         wins.
34402
34403 2005-08-16  Bruno Haible  <bruno@clisp.org>
34404
34405         * modules/tls: New file.
34406         * MODULES.html.sh (Multithreading): Add tls.
34407
34408 2005-08-16  Bruno Haible  <bruno@clisp.org>
34409
34410         * modules/strnlen1: New file.
34411         * MODULES.html.sh (String handling): Add strnlen1.
34412
34413 2005-08-16  Bruno Haible  <bruno@clisp.org>
34414
34415         * modules/strcase (Files): Add m4/mbrtowc.m4.
34416         (Depends-on): Add strnlen1, mbchar.
34417
34418 2005-08-16  Bruno Haible  <bruno@clisp.org>
34419
34420         * modules/mbiter: New file.
34421         * MODULES.html.sh (Extended multibyte and wide character utilities):
34422         Add mbiter.
34423
34424 2005-08-16  Bruno Haible  <bruno@clisp.org>
34425
34426         * modules/mbfile: New file.
34427         * MODULES.html.sh (Extended multibyte and wide character utilities):
34428         Add mbfile.
34429
34430 2005-08-16  Bruno Haible  <bruno@clisp.org>
34431
34432         * modules/mbchar: New file.
34433         * MODULES.html.sh (Extended multibyte and wide character utilities):
34434         New section.
34435
34436 2005-08-16  Bruno Haible  <bruno@clisp.org>
34437
34438         * m4/tls.m4: New file, from GNU gettext.
34439
34440 2005-08-16  Bruno Haible  <bruno@clisp.org>
34441
34442         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
34443         always.
34444         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
34445
34446 2005-08-16  Bruno Haible  <bruno@clisp.org>
34447
34448         * m4/mbiter.m4: New file.
34449
34450 2005-08-16  Bruno Haible  <bruno@clisp.org>
34451
34452         * m4/mbfile.m4: New file.
34453
34454 2005-08-16  Bruno Haible  <bruno@clisp.org>
34455
34456         * m4/mbchar.m4: New file.
34457
34458 2005-08-16  Bruno Haible  <bruno@clisp.org>
34459
34460         * lib/tls.h: New file, from GNU gettext.
34461         * lib/tls.c: New file, from GNU gettext.
34462
34463 2005-08-16  Bruno Haible  <bruno@clisp.org>
34464
34465         * lib/strnlen1.h: New file.
34466         * lib/strnlen1.c: New file.
34467
34468 2005-08-16  Bruno Haible  <bruno@clisp.org>
34469
34470         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
34471         (mbi_init): Update.
34472         (mbi_avail, mbi_advance): Let the iteration end before the terminating
34473         NUL byte, not after it.
34474
34475 2005-08-16  Bruno Haible  <bruno@clisp.org>
34476
34477         * lib/strcase.h (strcasecmp): Add note in comments.
34478         * lib/strncasecmp.c: Use code from strcasecmp.c.
34479         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
34480         (strcasecmp): Work correctly in multibyte locales.
34481
34482 2005-08-16  Bruno Haible  <bruno@clisp.org>
34483
34484         * lib/mbiter.h: New file.
34485
34486 2005-08-16  Bruno Haible  <bruno@clisp.org>
34487
34488         * lib/mbfile.h: New file.
34489
34490 2005-08-16  Bruno Haible  <bruno@clisp.org>
34491
34492         * lib/mbchar.h: New file.
34493         * lib/mbchar.c: New file.
34494
34495 2005-08-16  Bruno Haible  <bruno@clisp.org>
34496
34497         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
34498         the valid ones. Makes the comparison operations transitive:
34499         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
34500         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
34501
34502 2005-08-15  Simon Josefsson  <jas@extundo.com>
34503
34504         * modules/ssize_t (License): Change to 'unlimited'.
34505
34506         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
34507
34508 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
34509
34510         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
34511         Add comments for each pending glibc patch.
34512
34513 2005-08-15  Bruno Haible  <bruno@clisp.org>
34514
34515         * lib/regex.h (__restrict_arr): Don't define to __restrict if
34516         __cplusplus is defined.
34517
34518 2005-08-14  Jim Meyering  <jim@meyering.net>
34519
34520         Sync from coreutils.
34521
34522         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
34523         Use the hash-table-based cycle-detection code not just when
34524         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
34525         Reported by James Youngman in
34526         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
34527         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
34528         FTS_TIGHT_CYCLE_CHECK.
34529         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
34530         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
34531         once again.
34532         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
34533         * lib/fts.c (fd_safer): Remove decl.
34534         Include fcntl--.h rather than unistd-safer.h
34535         (fts_safe_changedir): Don't call fd_safer; no longer needed
34536         now that we include fcntl--.h.
34537
34538 2005-08-12  Simon Josefsson  <jas@extundo.com>
34539
34540         * modules/getndelim2: Use ssize_t module.
34541         * modules/getnline: Likewise.
34542         * modules/safe-read: Likewise.
34543         * modules/xreadlink: Likewise.
34544
34545         * modules/ssize_t: New file.
34546
34547 2005-08-12  Simon Josefsson  <jas@extundo.com>
34548
34549         * m4/readline.m4: Look for termcap, curses or ncurses if required.
34550
34551 2005-08-12  Simon Josefsson  <jas@extundo.com>
34552
34553         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
34554         ssize_t.
34555
34556 2005-08-12  Simon Josefsson  <jas@extundo.com>
34557
34558         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
34559         readline, getdelim and check_version.
34560         (Support for systems lacking ISO C 99: Sizes of integer types):
34561         Add size_max.
34562
34563 2005-08-12  Bruno Haible  <bruno@clisp.org>
34564
34565         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
34566
34567 2005-08-11  Simon Josefsson  <jas@extundo.com>
34568
34569         * modules/readline: New file.
34570
34571         * modules/strnlen (Files): Add strnlen.h.
34572
34573 2005-08-11  Simon Josefsson  <jas@extundo.com>
34574
34575         * m4/readline.m4: New file.
34576
34577 2005-08-11  Simon Josefsson  <jas@extundo.com>
34578
34579         * lib/readline.h, readline.c: New file.
34580
34581 2005-08-11  Simon Josefsson  <jas@extundo.com>
34582
34583         * doc/gnulib.texi (Initial import, Finishing touches): Mention
34584         gl_AVOID.
34585
34586 2005-08-11  Bruno Haible  <bruno@clisp.org>
34587
34588         * lib/strnlen.h (strnlen): Change parameter name to match comment.
34589
34590 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
34591
34592         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
34593
34594 2005-08-10  Simon Josefsson  <jas@extundo.com>
34595
34596         * tests/test-iconvme.c: New file.
34597
34598 2005-08-10  Simon Josefsson  <jas@extundo.com>
34599
34600         * m4/strnlen.m4: New file.
34601
34602         * m4/strndup.m4: Don't check for strnlen declaration, done in
34603         strnlen.m4.
34604
34605 2005-08-10  Simon Josefsson  <jas@extundo.com>
34606
34607         * lib/strndup.c: Use strnlen.h.
34608
34609         * lib/strnlen.h: New file.
34610
34611 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
34612
34613         * README: Typos.
34614
34615 2005-08-02  Simon Josefsson  <jas@extundo.com>
34616
34617         * modules/readline: New file.
34618
34619 2005-08-02  Simon Josefsson  <jas@extundo.com>
34620
34621         * modules/getdelim: New file.
34622
34623         * modules/getline: Rewrite, don't use getndelim2.
34624
34625 2005-08-02  Simon Josefsson  <jas@extundo.com>
34626
34627         * m4/getline.m4: Separate out getdelim stuff into separate module.
34628
34629         * m4/getdelim.m4: New file.
34630
34631 2005-08-02  Simon Josefsson  <jas@extundo.com>
34632
34633         * lib/getline.h, getline.c: Rewrite.
34634
34635         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
34636
34637 2005-07-31  Bruno Haible  <bruno@clisp.org>
34638
34639         * lib/lock.h (gl_lock_initializer): New macro.
34640         (gl_lock_define_initialized): Use it.
34641         (gl_rwlock_initializer): New macro.
34642         (gl_rwlock_define_initialized): Use it.
34643         (gl_recursive_lock_initializer): New macro.
34644         (gl_recursive_lock_define_initialized): Use it.
34645
34646 2005-07-30  Karl Berry  <karl@gnu.org>
34647
34648         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
34649         Report from Ben Pfaff, regarding getopt.
34650
34651 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
34652
34653         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
34654         normal way.
34655         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
34656         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
34657         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
34658         (gl_GETOPT): Use the new macros.  Most of the implementation
34659         is moved to the new macros.  This is for programs like Emacs
34660         that don't want all the functionality of gl_GETOPT.
34661
34662 2005-07-26  Bruno Haible  <bruno@clisp.org>
34663
34664         * m4/lock.m4: Update from GNU gettext.
34665
34666 2005-07-26  Bruno Haible  <bruno@clisp.org>
34667
34668         * lib/lock.h: Update from GNU gettext.
34669         * lib/lock.c: Update from GNU gettext.
34670
34671 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
34672
34673         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
34674         obsolescent AC_TRY_RUN.  Include the default includes files, for
34675         'exit'.
34676
34677 2005-07-24  Bruno Haible  <bruno@clisp.org>
34678
34679         * modules/visibility: New file.
34680         * MODULES.html.sh (Misc): Add visibility.
34681
34682 2005-07-24  Bruno Haible  <bruno@clisp.org>
34683
34684         * m4/visibility.m4: New file.
34685
34686 2005-07-24  Bruno Haible  <bruno@clisp.org>
34687
34688         * doc/visibility.texi: New file.
34689
34690 2005-07-22  Bruno Haible  <bruno@clisp.org>
34691
34692         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
34693         $(ALLOCA_H), redundant through BUILT_SOURCES.
34694         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
34695         redundant through BUILT_SOURCES.
34696         * modules/byteswap (Makefile.am): Remove explicit dependency on
34697         $(BYTESWAP_H), redundant through BUILT_SOURCES.
34698         * modules/fnmatch (Makefile.am): Remove explicit dependency on
34699         $(FNMATCH_H), redundant through BUILT_SOURCES.
34700         * modules/getopt (Makefile.am): Remove explicit dependency on
34701         $(GETOPT_H), redundant through BUILT_SOURCES.
34702         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
34703         redundant through BUILT_SOURCES.
34704         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
34705         redundant through BUILT_SOURCES.
34706         * modules/stdbool (Makefile.am): Remove explicit dependency on
34707         $(STDBOOL_H), redundant through BUILT_SOURCES.
34708         * modules/stdint (Makefile.am): Remove explicit dependency on
34709         $(STDINT_H), redundant through BUILT_SOURCES.
34710         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
34711         Remove explicit dependency on $(SYSEXITS_H).
34712         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
34713
34714 2005-07-18  Simon Josefsson  <jas@extundo.com>
34715
34716         * lib/check-version.c (check_version): Accept identical versions too.
34717
34718 2005-07-18  Bruno Haible  <bruno@clisp.org>
34719
34720         * modules/lock: New file.
34721         * MODULES.html.sh (Multithreading): New section.
34722
34723 2005-07-18  Bruno Haible  <bruno@clisp.org>
34724
34725         * m4/lock.m4: New file, from GNU gettext.
34726
34727 2005-07-18  Bruno Haible  <bruno@clisp.org>
34728
34729         * lib/lock.h: New file, from GNU gettext.
34730         * lib/lock.c: New file, from GNU gettext.
34731
34732 2005-07-18  Bruno Haible  <bruno@clisp.org>
34733
34734         * lib/lock.h (gl_once_t): New type.
34735         (gl_once_define, gl_once): New macros.
34736         * lib/lock.c (fresh_once): New variable.
34737         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
34738         functions.
34739
34740 2005-07-16  Simon Josefsson  <jas@extundo.com>
34741
34742         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
34743         workaround, suggested by Bruno.
34744
34745 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
34746
34747         * modules/xalloc (Depends-on): Add xalloc-die.
34748         * modules/xvasprintf (Depends-on): Add xalloc-die.
34749
34750 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
34751
34752         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
34753         with a minor change.
34754
34755 2005-07-15  Bruno Haible  <bruno@clisp.org>
34756
34757         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
34758         When using lib/poll.c, define poll as rpl_poll.
34759
34760 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
34761
34762         * modules/argp (Depends-on): Remove unlocked-io.
34763
34764 2005-07-14  Derek Price  <derek@ximbiot.com>
34765
34766         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
34767         for glob symlink bug.
34768
34769 2005-07-14  Bruno Haible  <bruno@clisp.org>
34770
34771         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
34772         Instead, test for *_unlocked function declarations directly.
34773
34774 2005-07-11  Simon Josefsson  <jas@extundo.com>
34775
34776         * modules/size_max: New file.
34777
34778         * modules/xsize: Depend on size_max module for size_max.m4.
34779
34780 2005-07-11  Simon Josefsson  <jas@extundo.com>
34781
34782         * lib/size_max.h: New file.
34783
34784 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
34785
34786         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
34787         copyright symbol and the year.
34788         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
34789         (version_etc_va): Use parameterized copyright notice.
34790         Reword to conform to the current GNU coding standards.
34791
34792 2005-07-11  Karl Berry  <karl@gnu.org>
34793
34794         * doc/gnulib.texi (Quoting): new node.
34795         (Initial import): more info, from Patrice.
34796
34797 2005-07-11  Bruno Haible  <bruno@clisp.org>
34798
34799         * gnulib-tool (func_usage): Document option --avoid.
34800         (Command line options): Handle --avoid.
34801         (func_acceptable): New function.
34802         (func_modules_transitive_closure): Use it.
34803
34804 2005-07-11  Bruno Haible  <bruno@clisp.org>
34805
34806         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
34807         Reported by Jim Meyering.
34808
34809 2005-07-10  Bruno Haible  <bruno@clisp.org>
34810
34811         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
34812         Needed when size_t is smaller than 'unsigned int'.
34813         Reported by Paul Eggert.
34814
34815 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
34816
34817         * modules/argp (Depends-on): Add unlocked-io
34818
34819 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
34820
34821         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
34822         block of defines.
34823
34824 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
34825
34826         * config/srclist.txt: Comment out regcomp.c, since we have a porting
34827         fix now.
34828
34829 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
34830         and Paul Eggert  <eggert@cs.ucla.edu>
34831
34832         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
34833         in wint_t, not wchar_t.  Remove now-unnecessary cast.
34834
34835 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34836
34837         * modules/regex (Files): Add lib/regex_internal.c,
34838         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
34839         (Depends-on): Add extensions.
34840         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
34841
34842 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34843
34844         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
34845         pathconf.
34846         * m4/same.m4 (gl_SAME): Likewise.
34847         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
34848
34849         * m4/regex.m4: Adjust to new libc regex implementation.
34850         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
34851         all the .c and .h parts of (the new) regex.
34852         Quote the m4 stuff better.
34853         Check for RE_ICASE bug of old gnulib.
34854         Check for REG_STARTEND of recent libc.
34855         Rename local variables from jm_* to gl_*.
34856         Quote operand of "test -f".
34857         Say "recent enough" version of libc, not "version 2".
34858         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
34859         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
34860         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
34861         Remove check for btowc, isascii.
34862         Require AM_LANGINFO_CODESET.
34863
34864 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34865
34866         * lib/regex.c, regex.h: Sync from libc.
34867         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
34868         * lib/regexec.c:
34869         New files, synced from libc, except that regex_internal.h
34870         currently has a small porting fix.
34871
34872 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
34873
34874         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
34875         regex_internal.c, regexec.c.
34876         Add regex_internal.h too, but as a comment, since the libc version
34877         is currently broken in gnulib mode.
34878
34879 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
34880
34881         Support programs like Emacs that use gnulib but not gettext.
34882         * MODULES.html.sh (Internationalization functions): Add gettext-h.
34883         * modules/gettext-h: New file.
34884         * modules/gettext (Files): Remove lib/gettext.h.
34885         (Depends-on): Add gettext-h.
34886         (Makefile.am): Remove lib_SOURCES.
34887         * modules/argmatch, modules/c-stack, modules/closeout:
34888         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
34889         * modules/execute, modules/file-type, modules/getaddrinfo:
34890         * modules/getopt, modules/human, modules/javacomp:
34891         * modules/javaexec, modules/mkdir-p, modules/obstack:
34892         * modules/openat, modules/pagealign_alloc, modules/pipe:
34893         * modules/quotearg, modules/regex, modules/rpmatch:
34894         * modules/unicodeio, modules/userspec, modules/version-etc:
34895         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
34896         * modules/xsetenv:
34897         Depend on gettext-h, not gettext.
34898
34899 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
34900
34901         * gnulib-tool (func_import): Add support for 'public domain' license.
34902         * modules/alloca, modules/atexit, modules/memmove:
34903         Now public domain, not GPL.
34904         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
34905         * modules/realloc, modules/strerror, modules/strtod:
34906         Now LGPL, not GPL.
34907
34908 2005-07-05  Bruno Haible  <bruno@clisp.org>
34909
34910         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
34911         autoconf CVS. Needed for mingw.
34912
34913 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34914
34915         Remove the dependency of the strftime module on the tzset module.
34916         * modules/strftime (Depends-on): Remove dependency on tzset.
34917
34918 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34919
34920         Remove the dependency of the strftime module on the tzset module.
34921         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
34922         gl_FUNC_TZSET_CLOBBER.
34923
34924 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34925
34926         Remove the dependency of the strftime module on the tzset module.
34927         * lib/strftime.c (my_strftime)
34928         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
34929         Copy the input structure, to work around some of the bug with
34930         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
34931         Solaris releases, you should also use the tzset module, but we won't
34932         require it as a dependency any more since we don't want LGPLed code
34933         to depend on GPLed code.
34934
34935 2005-07-02  Jim Meyering  <jim@meyering.net>
34936
34937         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
34938         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
34939         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
34940         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
34941
34942 2005-07-02  Jim Meyering  <jim@meyering.net>
34943
34944         * lib/backupfile.c (backup_args): Change a `0' to NULL.
34945
34946 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
34947
34948         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
34949         declares only 'struct timespec;' (!).
34950
34951 2005-07-01  Jim Meyering  <jim@meyering.net>
34952
34953         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
34954         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
34955         * lib/save-cwd.c, tempname.c:
34956         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
34957         and don't include <sys/file.h>).
34958
34959 2005-06-29  Jim Meyering  <jim@meyering.net>
34960
34961         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
34962         type name.  Use the variable name instead.
34963         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
34964         Likewise.
34965
34966 2005-06-28  Simon Josefsson  <jas@extundo.com>
34967
34968         * modules/check-version (Files): Add check-version.m4.
34969
34970 2005-06-28  Simon Josefsson  <jas@extundo.com>
34971
34972         * m4/check-version.m4: New file, suggested by Jim Meyering
34973         <jim@meyering.net>.
34974
34975 2005-06-28  Simon Josefsson  <jas@extundo.com>
34976
34977         * lib/check-version.h, lib/check-version.c: New files.
34978
34979 2005-06-28  Simon Josefsson  <jas@extundo.com>
34980
34981         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
34982         collision with global variable.  Better indentation.  Don't
34983         increment buffer pointer beyond buffer end.  Based on comments
34984         from Paul Eggert <eggert@cs.ucla.edu>.
34985
34986         * lib/base64.h: Indent.
34987
34988 2005-06-28  Simon Josefsson  <jas@extundo.com>
34989
34990         * doc/gnulib.texi (Library version handling): New section.
34991
34992 2005-06-28  Jim Meyering  <jim@meyering.net>
34993
34994         * check-module (find_included_lib_files): Hard-code another
34995         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
34996         but modules/fts-lgpl (correctly) does not list those files.
34997
34998         * modules/canonicalize (Files): Add lib/pathmax.h.
34999
35000 2005-06-25  Simon Josefsson  <jas@extundo.com>
35001
35002         * modules/check-version: New file.
35003
35004 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
35005
35006         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
35007         initializer of struct addrinfo, as an indication that we don't
35008         care how many members the structure has.
35009
35010 2005-06-24  Derek Price  <derek@ximbiot.com>
35011         and Bruno Haible  <bruno@clisp.org>
35012
35013         Remove stat module & update lstat.
35014         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
35015         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35016         * m4/stat.m4: Remove this file.
35017
35018 2005-06-24  Derek Price  <derek@ximbiot.com>
35019         and Bruno Haible  <bruno@clisp.org>
35020
35021         Remove stat module & update lstat.
35022         * lib/stat.c: Remove this file...
35023         (slash_aware_lstat): ...moving this content and its support...
35024         * lib/lstat.c (rpl_lstat): ...into here.
35025         * lib/lstat.h: New file.
35026
35027 2005-06-24  Derek Price  <derek@ximbiot.com>
35028         and Bruno Haible  <bruno@clisp.org>
35029
35030         Remove stat module & update lstat.
35031         * config/srclist.txt (libc sources): Remove stat.
35032
35033 2005-06-24  Derek Price  <derek@ximbiot.com>
35034         and Bruno Haible  <bruno@clisp.org>
35035
35036         Remove stat module & update lstat.
35037         * MODULES.html.sh (stat): Remove.
35038         * MODULES.html: Regenerated.
35039         * modules/lstat (Description): Correct function name.
35040         (Files): Add "lstat.h".
35041         (Depends-on): Remove stat, add xalloc, stat-macros.
35042         * modules/stat: Remove this file.
35043         (Include): Add "lstat.h", remove <sys/stat.h>.
35044
35045 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
35046
35047         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
35048         (ranged_convert): Don't save conversion in a temporary struct.
35049         This causes a warning with GCC 4.0.0, and anyway in the typical
35050         case it's not worth the extra 100 bytes or so of code.
35051         (ranged_convert, __mktime_internal): When calling a function via a
35052         pointer P, use P () rather than (*P) (), as we now assume C89 or
35053         better.
35054
35055 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
35056
35057         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
35058         "who -r" failed to give output.  Problem reported by Tim Waugh.
35059
35060         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
35061         (xcalloc): Use it to avoid needless tests.
35062         Problem reported by Jim Meyering.
35063
35064 2005-06-20  Derek Price  <derek@ximbiot.com>
35065
35066         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
35067         unnecessary for Autoconfs > 2.59c.
35068
35069 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35070
35071         * lib/argp.h (__option_is_short): Check upper limit of
35072         __key. Isprint() requires its argument to have the value
35073         of an unsigned char or EOF.
35074
35075 2005-06-16  Jim Meyering  <jim@meyering.net>
35076
35077         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
35078         when either N or S is zero.
35079
35080 2005-06-16  Derek Price  <derek@ximbiot.com>
35081
35082         * m4/bison.m4: Declare YACC & YFLAGS precious.
35083
35084 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
35085
35086         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
35087         multibyte string or pattern, fall back on unibyte matching.
35088         Problem reported by James Youngman.
35089
35090 2005-06-08  Bruno Haible  <bruno@clisp.org>
35091
35092         * modules/csharpcomp: New file.
35093         * MODULES.html.sh (C#): Add csharpcomp.
35094
35095 2005-06-08  Bruno Haible  <bruno@clisp.org>
35096
35097         * m4/csharpcomp.m4: New file, from GNU gettext.
35098
35099 2005-06-08  Bruno Haible  <bruno@clisp.org>
35100
35101         * lib/csharpcomp.h: New file, from GNU gettext.
35102         * lib/csharpcomp.c: New file, from GNU gettext.
35103         * lib/csharpcomp.sh.in: New file, from GNU gettext.
35104
35105 2005-06-08  Bruno Haible  <bruno@clisp.org>
35106
35107         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
35108         warning on mingw.
35109
35110 2005-06-07  Derek Price  <derek@ximbiot.com>
35111
35112         Sync from CVS.
35113         * lib/glob_.h: Indent nested #ifdef.
35114
35115 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
35116
35117         Sync from coreutils.
35118         Use "file name" when talking about file names, instead of "filename"
35119         or "path", as per the GNU coding standards.
35120         * lib/mkdir-p.c: Renamed from makepath.c.
35121         (make_dir_parents): Renamed from make_path.  All callers changed.
35122         * lib/mkdir-p.h: Likewise.  All includers changed.
35123         * lib/filenamecat.c: Renamed from path-concat.c.
35124         (file_name_concat): Renamed from path_concat.  All callers changed.
35125         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
35126         * lib/filenamecat.h: Likewise.  All includers changed.
35127         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
35128         in comments or local variable names.
35129         * lib/basename.c: Likewise.
35130         * lib/canonicalize.c, canonicalize.h: Likewise.
35131         * lib/dirname.c, dirname.h: Likewise.
35132         * lib/euidaccess.c: Likewise.
35133         * lib/exclude.c: Likewise
35134         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
35135         * lib/fsusage.c, fsuage.h: Likewise.
35136         * lib/fts.c, fts_.h: Likewise.
35137         * lib/getcwd.c: Likewise.
35138         * lib/getloadavg.c: Likewise.
35139         * lib/mkstemp.c: Likewise.
35140         * lib/mountlist.c, mountlist.h: Likewise.
35141         * lib/openat.c, openat.h: Likewise.
35142         * lib/readlink-stub.c: Likewise.
35143         * lib/readutmp.c, readutmp.h: Likewise.
35144         * lib/rename.c: Likewise.
35145         * lib/rmdir.c: Likewise.
35146         * lib/same.c: Likewise.
35147         * lib/savedir.c: Likewise.
35148         * lib/stripslash.c: Likewise.
35149         * lib/tempname.c: Likewise.
35150         * lib/xreadlink.c: Likewise.
35151         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
35152         All uses changed.
35153         * lib/exclude.h: Likewise.
35154
35155         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
35156         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35157         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
35158         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35159         * lib/pathmax.h: Include <limits.h> unconditionally, since other
35160         files have been getting away with it for years (MORE/BSD 4.3
35161         is extinct now).
35162         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
35163         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35164
35165         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
35166         Define to 256, not 255, as per modern POSIX.
35167
35168 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
35169
35170         Sync from coreutils.
35171         Use "file name" when talking about file names, instead of "filename"
35172         or "path", as per the GNU coding standards.
35173         * MODULES.html.sh: mkdir-p renamed from makepath.
35174         filenamecat renamed from path-concat.
35175         * modules/filenamecat: Renamed from modules/path-concat.
35176         (Files): filenamecat.h and filenamecat.c renamed from
35177         path-concat.h and path-concat.c.
35178         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
35179         (Include): filenamecat.h, not path-concat.h.
35180         * modules/mkdir-p: Renamed from modules/makepath.
35181         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
35182         makepath.c.
35183         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
35184         (Include): mkdir-p.h, not makepath.h.
35185
35186 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
35187
35188         Sync from coreutils.
35189         * m4/mkdir-p.m4: Renamed from makepath.m4.
35190         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
35191         Rename files from makepath.c to mkdir-p.c, and from
35192         makepath.h to mkdir-p.h.
35193         * m4/filenamecat.m4: Renamed from path-concat.m4.
35194         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
35195         Rename files from path-concat.c to filenamecat.c,
35196         and from path-concat.h to filenamecat.h.
35197         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
35198         "file name" in local variables or comments.
35199         * m4/rename.m4: Likewise.
35200
35201 2005-06-01  Bruno Haible  <bruno@clisp.org>
35202
35203         * modules/csharpexec: New file.
35204         * MODULES.html.sh (C#): New section.
35205
35206 2005-06-01  Bruno Haible  <bruno@clisp.org>
35207
35208         * m4/csharp.m4: New file, from GNU gettext.
35209         * m4/csharpexec.m4: New file, from GNU gettext.
35210
35211 2005-06-01  Bruno Haible  <bruno@clisp.org>
35212
35213         * lib/csharpexec.h: New file, from GNU gettext.
35214         * lib/csharpexec.c: New file, from GNU gettext.
35215         * lib/csharpexec.sh.in: New file, from GNU gettext.
35216
35217 2005-05-31  Derek Price  <derek@ximbiot.com>
35218             Paul Eggert  <eggert@cs.ucla.edu>
35219
35220         Sync from cvs.
35221         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
35222
35223 2005-05-31  Derek Price  <derek@ximbiot.com>
35224             Paul Eggert  <eggert@cs.ucla.edu>
35225
35226         Sync from cvs.
35227         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
35228
35229 2005-05-29  Derek Price  <derek@ximbiot.com>
35230
35231         * config/srclist.txt (glob_.h, glob.c): Add these files.
35232
35233 2005-05-29  Derek Price  <derek@ximbiot.com>
35234
35235         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
35236         * modules/glob: New file.
35237         * modules/getlogin_r: Add link to POSIX spec in description.
35238
35239 2005-05-29  Derek Price  <derek@ximbiot.com>
35240             Paul Eggert  <eggert@cs.ucla.edu>
35241
35242         * m4/glob.m4: New file.
35243
35244 2005-05-29  Derek Price  <derek@ximbiot.com>
35245             Paul Eggert  <eggert@cs.ucla.edu>
35246
35247         * lib/glob_.h, lib/glob.c: New files.
35248
35249 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
35250
35251         * modules/fts (Files): Remove m4/inttypes-pri.m4.
35252         * modules/fts-lgpl (Depends-on): Remove gettext.
35253
35254 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
35255
35256         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
35257         and don't require gt_INTTYPES_PRI.
35258
35259 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
35260
35261         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
35262
35263         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
35264         the configuration hassle isn't worth it.
35265         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
35266         (LONGEST_MODIFIER, PRIuMAX): Remove.
35267
35268 2005-05-27  Bruno Haible  <bruno@clisp.org>
35269
35270         * lib/getlogin_r.h: Remove second include of <stddef.h>.
35271
35272 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
35273
35274         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
35275         _POSIX_PTHREAD_SEMANTICS for Solaris.
35276
35277 2005-05-25  Derek Price  <derek@ximbiot.com>
35278
35279         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
35280
35281 2005-05-25  Derek Price  <derek@ximbiot.com>
35282             Paul Eggert  <eggert@cs.ucla.edu>
35283
35284         * modules/getlogin_r, m4/getlogin_r.m4: New files.
35285         * lib/getlogin_r.c, getlogin_r.h: New files.
35286
35287 2005-05-25  Bruno Haible  <bruno@clisp.org>
35288             Derek Price  <derek@ximbiot.com>
35289
35290         * lib/getlogin_r.h: Simplify API documentation.
35291
35292 2005-05-23  Derek Price  <derek@ximbiot.com>
35293
35294         * modules/minmax (Files): Add m4/minmax.m4.
35295         (configure.ac): Add gl_MINMAX.
35296
35297 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
35298
35299         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
35300         so that unistd-safer.h (GPL'ed code) need not be included.
35301
35302 2005-05-22  Bruno Haible  <bruno@clisp.org>
35303
35304         * m4/minmax.m4: New file.
35305         Based on a patch by Derek Price <derek@ximbiot.com>.
35306
35307 2005-05-22  Bruno Haible  <bruno@clisp.org>
35308
35309         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
35310         (INT64_MIN): Fix definition.
35311         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
35312
35313         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
35314         NEED_SIGNED_INT_TYPES.
35315
35316         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
35317         HAVE_SYSTEM_INTTYPES.
35318
35319 2005-05-22  Bruno Haible  <bruno@clisp.org>
35320
35321         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
35322         Also include <sys/param.h> if it defines MIN, MAX.
35323         Based on a patch by Derek Price <derek@ximbiot.com>.
35324
35325 2005-05-21  Jim Meyering  <jim@meyering.net>
35326
35327         * modules/fts (Files): Add m4/inttypes-pri.m4.
35328         (Depends-on): Add lstat and remove gettext.  Alphabetize.
35329
35330 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
35331
35332         New fts module.
35333         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
35334         (setup_dir, free_dir): New functions.
35335         (enter_dir, leave_dir): Define trivial
35336         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
35337         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
35338         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
35339         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
35340         Move to fts-cycle.c.
35341         (fts_open): Use setup_dir.
35342         (fts_close): Use free_dir.
35343         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
35344         This adds a label and some gotos, but the alternatives were messier.
35345         Check for memory allocation failure when entering a dir.
35346         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
35347         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
35348         (FTS): New member fts_cycle, that is a union that contains the
35349         old active_dir_ht and cycle_state.  All uses changed to mention
35350         fts_cycle.ht and fts_cycle.state.
35351         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
35352         fts.c, with the following changes:
35353         (setup_dir, free_dir): New functions.
35354         (enter_dir): Now returns bool.  Return true if successful, false
35355         if memory exhausted.  All callers changed.
35356         Do not bother partly cleaning up on
35357         memory allocation failure; that is free_dir's job.
35358         However, free ad if hash_insert fails, to avoid memory leak.
35359         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
35360         fts->fts_options to see which union member to use.
35361
35362 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
35363
35364         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
35365         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
35366
35367 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
35368
35369         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
35370
35371 2005-05-20  Jim Meyering  <jim@meyering.net>
35372
35373         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
35374         Now a macro, to pacify GCC.
35375
35376 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
35377
35378         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
35379         of -1.
35380
35381 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
35382
35383         * lib/chown.c (rpl_chown): Return -1 on failure.
35384
35385 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
35386
35387         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
35388         Don't check for stddef.h.
35389         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
35390         don't use its results.
35391         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
35392         since we include them unconditionally.  Don't require
35393         AM_STDBOOL_H, since stdbool is a prerequisite.
35394         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
35395         since we assume C89 or better.
35396         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
35397         as we don't use their results.
35398         Don't check for fchdir, memmove, memset, strrchr, as we use
35399         them unconditionally.
35400         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
35401         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
35402
35403 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
35404
35405         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
35406         Include <stddef.h> unconditionally, since we assume C89 now.
35407         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
35408         * lib/fts.c: Include fts_.h first, to check interface.
35409         Do not include intprops.h; no longer needed.
35410         Include cycle-check.h and hash.h, since fts_.h no longer does.
35411         Remove unnecessary casts of closedir to void.
35412         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
35413         decide whether to decrement nlinks.
35414         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
35415         (FTS): Use struct hash_table * instead of Hash_table, so that
35416         we no longer need to include hash.h here.
35417
35418 2005-05-18  Jim Meyering  <jim@meyering.net>
35419
35420         * modules/dirfd (License): Change to LGPL.  Most of the code
35421         is already in the public domain.
35422
35423 2005-05-18  Jim Meyering  <jim@meyering.net>
35424
35425         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
35426         Reported by Yoann Vandoorselaere.
35427
35428 2005-05-17  Jim Meyering  <jim@meyering.net>
35429
35430         * m4/fts.m4: New file, from coreutils.
35431
35432 2005-05-17  Jim Meyering  <jim@meyering.net>
35433
35434         * lib/fts.c, lib/fts_.h: New files, from coreutils.
35435
35436 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35437
35438         Sync from coreutils.
35439         * m4/unlinkdir.m4: New file.
35440
35441 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35442
35443         Sync from coreutils.
35444         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
35445         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
35446         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
35447         White space changes only.
35448         * lib/makepath.c (make_path): Port to hosts where leading "//" is
35449         special.
35450         * lib/yesno.c: Include getline.h, not ctype.h.
35451         (yesno): Don't remove leading white space; POSIX doesn't allow it.
35452         Use getline to remove arbitrary restriction on response length.
35453
35454 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35455
35456         * config/srclist-update: Spell out "Street" in FSF postal
35457         mail address; this is the style the FSF seems to prefer.
35458
35459         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
35460         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
35461         this updates FSF postal mail address.
35462
35463         Sync from coreutils.
35464         * modules/unlinkdir: New file.
35465         * modules/yesno (Depends-on): Add getline.
35466         * MODULES.html.sh (File system functions): Add unlinkdir.
35467
35468 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
35469
35470         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
35471         lib/strsep.h:
35472         Change the initial comment to refer to GPL, not LGPL.
35473         gnulib-tool will change it to LGPL as needed.
35474
35475         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
35476         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
35477         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
35478         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
35479         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
35480         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
35481         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
35482         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
35483         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
35484         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
35485         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
35486         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
35487         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
35488         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
35489         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
35490         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
35491         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
35492         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
35493         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
35494         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
35495         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
35496         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
35497         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
35498         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
35499         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
35500         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
35501         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
35502         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
35503         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
35504         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
35505         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
35506         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
35507         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
35508         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
35509         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
35510         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
35511         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
35512         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
35513         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
35514         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
35515         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
35516         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
35517         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
35518         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
35519         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
35520         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
35521         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
35522         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
35523         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
35524         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
35525         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
35526         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
35527         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
35528         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
35529         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
35530         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
35531         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
35532         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
35533         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
35534         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
35535         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
35536         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
35537         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
35538         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
35539         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
35540         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
35541         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
35542         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
35543         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
35544         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
35545         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
35546         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
35547         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
35548         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
35549         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
35550         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
35551         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
35552         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
35553         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
35554         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
35555         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
35556         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
35557         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
35558         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
35559         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
35560         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
35561         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
35562         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
35563         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
35564         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
35565         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
35566         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
35567         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
35568         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
35569         lib/yesno.c, lib/yesno.h:
35570         Update FSF postal mail address.
35571
35572 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
35573
35574         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
35575         tests/test-memmem.c, tests/test-stpncpy.c:
35576         Update FSF postal mail address.
35577
35578 2005-05-13  Bruno Haible  <bruno@clisp.org>
35579
35580         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
35581         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
35582         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
35583         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
35584         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
35585         Add support for 64-bit integers in the MSVC compiler.
35586
35587 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35588
35589         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
35590
35591 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
35592
35593         * gnulib-tool (func_import): Sort and uniquify recommended includes.
35594
35595 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
35596
35597         * doc/getdate.texi (General date syntax): Don't say that date
35598         date --iso-8601=ns generates acceptable dates; it doesn't yet.
35599         Problem reported by Nic Ferrier.
35600
35601 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35602
35603         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
35604         specified in ai_socktype. Fix invalid ai_protocol
35605         check. ai_protocol is usually set to 0 or depending on
35606         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
35607         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
35608         ai_socktype / ai_protocol in the returned addrinfo structure.
35609
35610 2005-05-10  Simon Josefsson  <jas@extundo.com>
35611
35612         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
35613         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
35614
35615 2005-05-10  Karl Berry  <karl@gnu.org>
35616
35617         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
35618         (from http://www.gnu.org/licenses).
35619         * doc/COPYING.LIB: also rename to COPYING.LESSER.
35620         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
35621         fdl.texi suffices.
35622
35623 2005-05-10  Karl Berry  <karl@gnu.org>
35624
35625         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
35626         (COPYING.DOC): remove.
35627
35628         * config/srclist-update: new FSF address.
35629
35630 2005-05-10  Derek Price  <derek@ximbiot.com>
35631
35632         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
35633         possible.
35634
35635 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35636             Bruno Haible  <bruno@clisp.org>
35637
35638         * modules/inet_ntop: New file.
35639         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
35640         inet_ntop.
35641
35642 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35643             Bruno Haible  <bruno@clisp.org>
35644
35645         * m4/inet_ntop.m4: New file.
35646
35647 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35648             Bruno Haible  <bruno@clisp.org>
35649
35650         * lib/inet_ntop.h: New file.
35651         * lib/inet_ntop.c: New file, from glibc with modifications.
35652
35653 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
35654
35655         * modules/time_r (License): Change to LGPL.
35656         * modules/extensions (License): Change to LGPL.  Actually,
35657         the license is more permissive than that, but currently gnulib-tool
35658         doesn't know how to handle more-permissive licenses.
35659
35660         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
35661         Problem reported by Dave Love.
35662
35663 2005-05-08  Jim Meyering  <jim@meyering.net>
35664
35665         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
35666         blank.
35667
35668 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
35669
35670         * modules/argmatch (Depends-on): Add stdbool.
35671         * modules/backupfile (Depends-on): Likewise.
35672         * modules/chdir-long (Depends-on): Likewise.
35673         * modules/closeout (Depends-on): Likewise.
35674         * modules/cycle-check (Depends-on): Likewise.
35675         * modules/dirname (Depends-on): Likewise.
35676         * modules/fnmatch (Depends-on): Likewise.
35677         * modules/fsusage (Depends-on): Likewise.
35678         * modules/fwriteerror (Depends-on): Likewise.
35679         * modules/getcwd (Depends-on): Likewise.
35680         * modules/getloadavg (Depends-on): Likewise.
35681         * modules/hard-locale (Depends-on): Likewise.
35682         * modules/makepath (Depends-on): Likewise.
35683         * modules/mountlist (Depends-on): Likewise.
35684         * modules/nanosleep (Depends-on): Likewise.
35685         * modules/posixtm (Depends-on): Likewise.
35686         * modules/quotearg (Depends-on): Likewise.
35687         * modules/readtokens (Depends-on): Likewise.
35688         * modules/readtokens0 (Depends-on): Likewise.
35689         * modules/readutmp (Depends-on): Likewise.
35690         * modules/save-cwd (Depends-on): Likewise.
35691         * modules/strftime (Depends-on): Likewise.
35692         * modules/userspec (Depends-on): Likewise.
35693         * modules/utimecmp (Depends-on): Likewise.
35694         * modules/xgetcwd (Depends-on): Likewise.
35695         * modules/xnanosleep (Depends-on): Likewise.
35696         * modules/xstrtod (Depends-on): Likewise.
35697         * modules/yesno (Depends-on): Likewise.
35698
35699 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
35700
35701         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
35702         needless checks.
35703
35704 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35705
35706         Merge from coreutils.  Among other things,
35707         add bulletproofing for cases where stdin, stdout, or stderr are closed.
35708         * lib/fd-safer.c: New file.
35709         * lib/fcntl-safer.h, open-safer.c: Remove.
35710         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
35711         * lib/dup-safer.c: Include unistd-safer.h first.
35712         Don't include errno.h.
35713         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
35714         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
35715         * lib/file-type.c: Rely on file-type.h change.
35716         * lib/getloadavg.c: Include unistd-safer.h.
35717         (getloadavg): Use safer open.
35718         * lib/getusershell.c: Include "stdio-safer.h".
35719         (getusershell): Use safer fopen.
35720         * lib/long-options.c (long_options): Use NULL rather than 0.
35721         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
35722         'free'.
35723         * lib/modechange.c: Likewise.
35724         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
35725         (MODE_DONE): New constant.
35726         (struct mode_change): Remove 'next' member.
35727         (make_node_op_equals): New function; like the old one of the
35728         same name, except it allocates an array.
35729         (mode_compile, mode_create_from_ref): Use it.
35730         (mode_compile): Allocate result as an array, not a linked list.
35731         Parse octal string ourself, so that we catch mistakes like "+0".
35732         (mode_adjust): Arg is an array, not a linked list.
35733         * lib/modechange.c: Include stat-macros.h, xalloc.h.
35734         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
35735         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
35736         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
35737         Remove.  This is now stat-macros.h's job.
35738         (talloc): Remove.  All callers replaced by xalloc, so that
35739         our invokers don't have to worry about reporting memory failures.
35740         (make_node_op_equals): Remove.
35741         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
35742         New constants.
35743         (struct mode_change): Moved here from modechange.h.
35744         (mode_append_entry): Remove.
35745         (mode_compile): Remove MASKED_OPS arg, since it encouraged
35746         apps to have incorrect behavior.  Use simpler algorithm for head
35747         and tail.  Don't futz with umask; that's now the job of mode_adjust.
35748         Detect more invalid usages rather than having somewhat-random behavior.
35749         Don't insert an "a=" action, as that leads to incorrect behavior.
35750         (mode_compile, mode_create_from_ref): Return NULL on error instead
35751         of an enum, since now there's only one way to have an error.  All
35752         callers changed.
35753         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
35754         at the correct time.  Simplify calculation of "+u" and its ilk.
35755         Don't mishandle "+X".
35756         (mode_free): Remove "register" and localize decls.
35757         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
35758         (struct mode_change): Move to modechange.c; callers don't
35759         need to see this stuff.
35760         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
35761         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
35762         (mode_change, mode_adjust): Reflect the new signatures noted above.
35763         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
35764         that might redefine system include files.
35765         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
35766         (my_usleep): Use NULL rather than (void *) 0.
35767         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
35768         Use siginterrupt to specify that system calls should be interrupted.
35769         (rpl_nanosleep): Move initialization of suspended closer to call of
35770         my_usleep.
35771         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
35772         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
35773         (desirable_utmp_entry): New function.
35774         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
35775         using x2nrealloc, to simplify logic.
35776         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
35777         size calculation.  Do not assume utmp file is a regular file.
35778         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
35779         (READ_UTMP_CHECK_PIDS): New constant.
35780         * lib/save-cwd.c: Include unistd-safer.h.
35781         (save_cwd): Use fd_safer.
35782         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
35783         [!_LIBC] Include "stat-macros.h" instead.
35784         * lib/unistd-safer.h (fd_safer): New decl.
35785
35786 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35787
35788         * modules/getloadavg (Depends-on): Add unistd-safer.
35789         * modules/getusershell (Depends-on): Add stdio-safer.
35790         * modules/lstat (Depends-on): Remove xalloc.
35791         * modules/mkstemp (Depends-on): Add stat-macros.
35792         * modules/modechange (Depends-on): Remove xstrtol.
35793         Add stat-macros, xalloc.
35794         * modules/save-cwd (Depends-on): Add unistd-safer.
35795         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
35796         * modules/unistd-safer (Files): Add lib/fd-safer.c
35797         (Makefile.am): Remove lib_SOURCES.
35798
35799         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
35800         Remove fcntl-safer; unistd-safer supersedes it.
35801
35802 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35803
35804         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
35805         AC_HEADER_STAT.
35806         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
35807         (gl_PREREQ_CHOWN): Remove.
35808         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
35809         it.  Don't require AC_HEADER_STAT.
35810         (gl_PREREQ_LSTAT): Remove.
35811         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
35812         Don't require AC_HEADER_STAT.
35813         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
35814         (gl_PREREQ_RMDIR): Remove.
35815         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
35816         mention stat-macros.h or AC_HEADER_STAT, since we'll make
35817         the stat-macros module a prerequisite.
35818         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
35819         * m4/filemode.m4 (gl_FILEMODE): Likewise.
35820         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
35821         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
35822         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
35823         variable names.
35824         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
35825         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
35826         variable prefixes.
35827         * m4/fcntl-safer.m4: Remove.
35828         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
35829         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
35830         Invoke gl_PREREQ_FD_SAFER.
35831         (gl_PREREQ_FD_SAFER): New macro.
35832         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
35833         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
35834         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
35835         Remove duplicate call to AC_LIBOBJ(readutmp).
35836         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
35837
35838         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
35839         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
35840
35841 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
35842
35843         * MODULES.html.sh (Misc): Add byteswap.
35844
35845 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35846
35847         * modules/getcwd (Depends-on): Add extensions.
35848         * modules/openat (Depends-on): Likewise.
35849
35850 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35851
35852         * modules/byteswap: New file.
35853
35854 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35855
35856         * m4/byteswap.m4: New file.
35857
35858 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
35859
35860         * lib/byteswap_.h: New file.
35861
35862 2005-04-25  Karl Berry  <karl@gnu.org>
35863
35864         * m4/gettext.m4: Update from GNU gettext 0.14.4.
35865
35866 2005-04-25  Albert Chin  <china@thewrittenword.com>
35867
35868         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
35869         Toolkit C bug.
35870
35871 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
35872
35873         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
35874         (func_ln_if_changed) Remove forcibly for no error message
35875         in case file does not exist.
35876
35877 2005-04-19  Simon Josefsson  <jas@extundo.com>
35878
35879         * gnulib-tool (Options): Make --symlink mean --symbolic.
35880
35881 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
35882
35883         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
35884
35885 2005-04-16  Simon Josefsson  <jas@extundo.com>
35886
35887         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
35888
35889 2005-04-15  Simon Josefsson  <jas@extundo.com>
35890
35891         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
35892
35893 2005-04-15  Simon Josefsson  <jas@extundo.com>
35894
35895         * gnulib-tool: Rename --symlink to --symbolic.
35896
35897 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
35898
35899         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
35900         symbolic links to files instead of copying/moving.  Add --aux-dir,
35901         specifying directory relative --dir where auxiliary build tools
35902         are placed.
35903
35904 2005-04-14  Bruno Haible  <bruno@clisp.org>
35905
35906         * modules/allocsa (License): Change to LGPL.
35907         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
35908
35909 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
35910
35911         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
35912         that "UTC +1 second" continues to work.  Problem reported
35913         by Dmitry V. Levin.
35914         (relunit_snumber): New rule.
35915         (relunit): Use it.
35916
35917 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
35918
35919         * lib/getdate.y (universal_time_zone_table): New constant.
35920         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
35921         universal_time_zone_table.
35922         (lookup_zone): Prefer universal_time_zone_table to
35923         local_time_zone_table, so that "GMT" time stamps are allowed in
35924         London during the summer.  Problem reported by Ian Abbott.
35925
35926 2005-04-12  Jim Meyering  <jim@meyering.net>
35927
35928         * lib/human.c (humblock): Set *options even when returning due to
35929         xstrtoumax conversion failure.  Thanks to a used-uninitialized
35930         warning from gcc-4.
35931
35932 2005-04-09  Jim Meyering  <jim@meyering.net>
35933
35934         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
35935         -Wuninitialized: initialize tm0.tm_year.
35936
35937 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
35938
35939         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
35940         count, since there's no maximum.  All uses changed.
35941         Add member dsts_seen.
35942         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
35943         not being INT_MAX.
35944         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
35945         Use pc_rels_seen to decide whther a date is absolute.
35946
35947         * lib/getdate.y (number): Don't overwrite year.
35948         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
35949         check.
35950
35951 2005-04-02  Simon Josefsson  <jas@extundo.com>
35952
35953         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
35954         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
35955
35956 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
35957
35958         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
35959         where no absolute path name can be longer than PATH_MAX.
35960
35961 2005-03-27  Jim Meyering  <jim@meyering.net>
35962
35963         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
35964
35965 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
35966
35967         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
35968         "one's complement" -> "ones' complement" in comment, as per Knuth.
35969         "value of type" -> "type or expression" in comment.
35970         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
35971
35972 2005-03-26  Jim Meyering  <jim@meyering.net>
35973
35974         Comment nits.
35975         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
35976         Correct typos: s/or/of/.
35977
35978 2005-03-26  Jim Meyering  <jim@meyering.net>
35979
35980         * modules/check-include-files: Move to ../ and rename to...
35981         * check-module: ...this.
35982
35983 2005-03-25  Jim Meyering  <jim@meyering.net>
35984
35985         * modules/xvasprintf (Files): Add xalloc.h.
35986
35987 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
35988
35989         * modules/gettext (Files): config/config.rpath ->
35990         build-aux/config.rpath
35991         * modules/iconv (Files): Likewise.
35992         Problem reported by Oskar Liljeblad.
35993
35994 2005-03-23  Jim Meyering  <jim@meyering.net>
35995
35996         * modules/check-include-files: New script to check for
35997         missing dependencies, multiple includes, etc.
35998
35999         * modules/c-strtold (Depends-on): Add xalloc.
36000         * modules/c-strtod (Depends-on): Add xalloc.
36001         * modules/hash (Depends-on): Add xalloc.
36002         (Files): Remove lib/xalloc.h.
36003
36004         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
36005         * modules/userspec (Files): Add lib/inttostr.h.
36006
36007 2005-03-23  Jim Meyering  <jim@meyering.net>
36008
36009         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
36010
36011 2005-03-22  Jim Meyering  <jim@meyering.net>
36012
36013         * modules/stat-macros: New module.
36014         * modules/canonicalize, modules/euidaccess, modules/file-type,
36015         * modules/filemode, modules/lchown, modules/makepath,
36016         * modules/rmdir, modules/stat: Depend on new stat-macros module
36017         rather than listing lib/stat-macros.h manually.
36018         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
36019
36020 2005-03-22  Jim Meyering  <jim@meyering.net>
36021
36022         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
36023
36024 2005-03-22  Bruno Haible  <bruno@clisp.org>
36025
36026         * config/srclist.txt: Replace target directory 'config' with
36027         'build-aux'.
36028         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
36029         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
36030         ../build-aux/.
36031
36032 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
36033
36034         * modules/chdir-long (Depends-on): Add mempcpy.
36035
36036         * modules/acl, modules/backupfile, modules/c-strtod,
36037         modules/c-strtold, modules/canon-host, modules/canonicalize,
36038         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
36039         modules/exclude, modules/exitfail, modules/file-type,
36040         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
36041         modules/getdate, modules/getline, modules/getpagesize,
36042         modules/getpass, modules/getugroups, modules/group-member,
36043         modules/hard-locale, modules/hash, modules/human, modules/idcache,
36044         modules/inttostr, modules/long-options, modules/makepath,
36045         modules/md5, modules/memcasecmp, modules/memcoll,
36046         modules/modechange, modules/mountlist, modules/path-concat,
36047         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
36048         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
36049         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
36050         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
36051         modules/strftime, modules/strndup, modules/strverscmp,
36052         modules/timespec, modules/unlocked-io, modules/userspec,
36053         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
36054         modules/yesno:
36055         Remove lib_SOURCES line from Makefile.am section, as this is now
36056         done automatically by the corresponding Autoconf macro.
36057
36058 2005-03-21  Jim Meyering  <jim@meyering.net>
36059
36060         Changes imported from coreutils.
36061
36062         * lib/cycle-check.c: Don't include xalloc.h.
36063
36064         * lib/path-concat.c: Don't include assert.h.
36065         (path_concat): Remove assertion that would have triggered
36066         for ABASE starting with more than one slash.
36067         Reported by Andreas Schwab.
36068
36069         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
36070         properly when ABASE is an absolute file name.
36071         Correct the description of this function.
36072         Include <assert.h>.
36073         Add an assertion and a test driver.
36074         This fixes a bug introduced on 2004-07-02.
36075         Andreas Schwab reported the resulting failure of cp --parents:
36076         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
36077
36078 2005-03-21  Jim Meyering  <jim@meyering.net>
36079
36080         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
36081         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
36082
36083 2005-03-21  Jim Meyering  <jim@meyering.net>
36084         and  Paul Eggert  <eggert@cs.ucla.edu>
36085
36086         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
36087         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
36088         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
36089         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
36090         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
36091         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
36092         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
36093         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
36094         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
36095         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
36096         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
36097         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
36098         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
36099         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
36100         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
36101         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
36102         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
36103         for these modules.
36104
36105 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
36106
36107         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
36108         (which shouldn't happen), generate nothing instead of returning 0
36109         immediately, so that nstrftime (NULL, ...) doesn't return 0.
36110
36111 2005-03-16  Bruno Haible  <bruno@clisp.org>
36112
36113         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
36114         HAVE_LONGLONG_64BIT.
36115
36116 2005-03-16  Bruno Haible  <bruno@clisp.org>
36117
36118         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
36119         HAVE_LONGLONG_64BIT.
36120
36121 2005-03-16  Bruno Haible  <bruno@clisp.org>
36122
36123         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
36124         HAVE_LONGLONG_64BIT.
36125
36126 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
36127
36128         * lib/strftime.c (my_strftime): Prepend space to format so that we can
36129         reliably distinguish strftime failure from empty output on POSIX
36130         hosts.
36131
36132 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
36133
36134         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
36135         (iconv_string): Don't guess a size-zero buffer, as that might cause
36136         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
36137         result would be 'too large', where 'too large' is (heuristically)
36138         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
36139         overflow concerns.  This will prevent some unwanted malloc failures
36140         when the inputs are very large.
36141
36142 2005-03-15  Karl Berry  <karl@gnu.org>
36143
36144         * config/srclist.txt (config.rpath): from gettext.
36145         * config/config.rpath: update.
36146
36147 2005-03-15  Bruno Haible  <bruno@clisp.org>
36148
36149         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
36150         to 'negate'.
36151
36152         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
36153         variable.
36154
36155         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
36156         results.
36157
36158 2005-03-14  Simon Josefsson  <jas@extundo.com>
36159
36160         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
36161         <fx@gnu.org>.
36162
36163 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
36164
36165         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
36166         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
36167         intprops.h.
36168         * lib/strtol.c: Likewise.
36169
36170 2005-03-14  Jim Meyering  <jim@meyering.net>
36171
36172         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
36173         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
36174         to be nonzero so that we (and caller) can detect the difference
36175         between a valid zero-length expansion and an error return, even
36176         when the underlying strftime fails before writing anything into
36177         that location.
36178
36179 2005-03-14  Bruno Haible  <bruno@clisp.org>
36180
36181         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
36182         Update from GNU gettext 0.14.3.
36183
36184 2005-03-10  Jim Meyering  <jim@meyering.net>
36185
36186         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
36187
36188 2005-03-10  Jim Meyering  <jim@meyering.net>
36189
36190         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
36191         so that this module works on systems without fchdir.
36192
36193 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
36194
36195         Factor int-properties macros into a single file, except for
36196         glibc-related files.
36197         * lib/intprops.h: New file.
36198         * lib/getloadavg.c: Include it instead of limits.h.
36199         (INT_STRLEN_BOUND): Remove.
36200         * lib/human.c: Include intprops.h.
36201         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
36202         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
36203         302/1000.
36204         * lib/inttostr.h: Include intprops.h instead of limits.h.
36205         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
36206         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
36207         for consistency with intprops.h.
36208         (time_t_is_integer, twos_complement_arithmetic): Use them.
36209         * lib/sig2str.h: Include <signal.h>, intprops.h.
36210         (INT_STRLEN_BOUND): Remove.
36211         * lib/strftime.c (TYPE_SIGNED): Remove.
36212         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
36213         * lib/strtol.c: Adjust comments to match intprops.h.
36214         * lib/userspec.c: Include intprops.h.
36215         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
36216         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
36217         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
36218         instead of rolling our own expressions.
36219         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
36220
36221         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
36222         instead of int.
36223         (my_strftime): Do not mishandle years close to INT_MAX, by doing
36224         the right thing even if adding 1900 would overflow.  Similarly
36225         for tm_mon + 1 and tm_yday + 1.
36226         Make %Y always equivalent to %C%y, and similarly for %G and %g.
36227         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
36228         (DO_SIGNED_NUMBER): New macro.
36229         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
36230
36231 2005-03-07  Bruno Haible  <bruno@clisp.org>
36232
36233         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
36234
36235 2005-03-07  Bruno Haible  <bruno@clisp.org>
36236
36237         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
36238
36239 2005-03-04  Derek R. Price  <derek@ximbiot.com>
36240
36241         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
36242         (func_import): Only replace files via --import when they have actually
36243         changed.
36244
36245 2005-03-03  Derek R. Price  <derek@ximbiot.com>
36246
36247         * m4/mmap-anon.m4: New file.
36248         * m4/pagealign_alloc.m4: New file.
36249
36250 2005-03-03  Derek R. Price  <derek@ximbiot.com>
36251             Bruno Haible  <bruno@clisp.org>
36252
36253         * modules/pagealign_alloc: New file.
36254         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
36255
36256 2005-03-03  Derek R. Price  <derek@ximbiot.com>
36257             Bruno Haible  <bruno@clisp.org>
36258
36259         * lib/pagealign_alloc.h: New file.
36260         * lib/pagealign_alloc.c: New file.
36261
36262 2005-03-03  Bruno Haible  <bruno@clisp.org>
36263
36264         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
36265         Use an all-permissive copyright notice, recommended by RMS.
36266
36267 2005-03-02  Bruno Haible  <bruno@clisp.org>
36268
36269         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
36270         of AIX, the replacement has to be done only after <string.h> is
36271         included, therefore not in config.h. stpncpy.h does the replacement,
36272         and stpncpy.c uses it.
36273
36274 2005-03-02  Bruno Haible  <bruno@clisp.org>
36275
36276         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
36277         stpncpy.c uses it.
36278
36279 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36280
36281         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
36282         The workaround isn't strictly needed for POSIX conformance, and
36283         it's too much of a pain to configure and maintain.  We'll ask
36284         people to fix their kernels instead.
36285         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
36286         (NANOSLEEP_BUG_WORKAROUND): Remove.
36287         (xnanosleep): Remove the workaround.
36288
36289 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36290
36291         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
36292         Reported by Derek Price.
36293         (Include): Add "timespec.h".
36294
36295         * modules/xnanosleep (Depends-on): Remove gethrxtime.
36296
36297 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36298
36299         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
36300         to detect nanosleep bug.
36301
36302 2005-03-01  Bruno Haible  <bruno@clisp.org>
36303
36304         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
36305
36306 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
36307
36308         * modules/gethrxtime: New file.
36309         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
36310         (Depends-on): Add gethrxtime.
36311         (configure.ac): Add gl_XNANOSLEEP.
36312         (Makefile.am): Remove lib_SOURCES line.
36313
36314 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
36315
36316         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
36317         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
36318
36319 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
36320
36321         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
36322         * lib/timespec.h (gettime): Return void, since it always
36323         succeeds now.  All uses changed.
36324         * lib/gettime.c (gettime) Likewise.
36325         [HAVE_NANOTIME]: Prefer nanotime.
36326         Assume gettimeofday succeeds, as POSIX requires.
36327         Assime time () succeeds, since other code already does.
36328         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
36329         (timespec_subtract): Remove.
36330         (NANOSLEEP_BUG_WORKAROUND): New constant.
36331         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
36332         things considerably.  Use it only on GNU/Linux hosts, since the
36333         workaround shouldn't be needed elsewhere.
36334
36335 2005-02-24  Bruno Haible  <bruno@clisp.org>
36336
36337         * modules/gettext (Files): Add m4/glibc2.m4.
36338
36339 2005-02-24  Bruno Haible  <bruno@clisp.org>
36340
36341         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
36342         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
36343         * m4/progtest.m4:
36344         Update from GNU gettext 0.14.2.
36345         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
36346
36347 2005-02-24  Bruno Haible  <bruno@clisp.org>
36348
36349         * lib/localcharset.c: Update from GNU gettext 0.14.2.
36350         * lib/config.charset: Update from GNU gettext 0.14.2.
36351
36352 2005-02-24  Bruno Haible  <bruno@clisp.org>
36353
36354         * lib/gettext.h: Update from GNU gettext 0.14.2.
36355
36356 2005-02-23  Simon Josefsson  <jas@extundo.com>
36357
36358         * m4/iconvme.m4: New file.
36359
36360 2005-02-23  Jim Meyering  <jim@meyering.net>
36361
36362         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
36363         change.
36364         Thanks to Bruno Haible for catching it.
36365
36366 2005-02-22  Simon Josefsson  <jas@extundo.com>
36367
36368         * modules/iconvme: New file.
36369
36370         * MODULES.html.sh: Add iconvme.
36371
36372 2005-02-22  Simon Josefsson  <jas@extundo.com>
36373
36374         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
36375
36376 2005-02-22  Simon Josefsson  <jas@extundo.com>
36377
36378         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
36379
36380 2005-02-22  Jim Meyering  <jim@meyering.net>
36381
36382         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
36383         s/ifndef/ifdef/.
36384
36385 2005-02-20  Neil Conway  <neilc@samurai.com>
36386
36387         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
36388         returned by OSX/Darwin if the specified buffer is not large
36389         enough for the hostname.
36390
36391 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36392
36393         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
36394         pass it to _help, otherwise the latter coredumps trying to
36395         dereference state.root_argp.
36396
36397 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36398
36399         * modules/chdir-long (Depends-on): Add memrchr.
36400         * modules/memrchr (Files): Add lib/memrchr.h.
36401         (Include): "memrchr.h".
36402
36403 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36404
36405         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
36406
36407 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
36408
36409         * lib/memrchr.h: New file.
36410         * lib/chdir-long.c: Include it.
36411         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
36412         Don't bother including stddef.h.
36413
36414 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
36415
36416         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
36417         inclusion.
36418         Include <sys/types.h>, for dev_t.
36419         (ME_DUMMY, ME_REMOTE): Move from here....
36420         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
36421         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
36422         Dmitry V. Levin.
36423         Include mountlist.h first, to test the interface.
36424
36425 2005-01-29  Bruno Haible  <bruno@clisp.org>
36426
36427         * lib/progname.c (program_name): Initialize.
36428         Needed when linking statically on MacOS X.
36429
36430 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
36431
36432         Sync from coreutils.
36433         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
36434         (Depends-on): Add c-strtod.
36435         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
36436
36437 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
36438
36439         Sync from coreutils.
36440         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
36441
36442         Remove files that are specific to coreutils.
36443         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
36444
36445 2005-01-28  Bruno Haible  <bruno@clisp.org>
36446
36447         * modules/javacomp: New file.
36448         * MODULES.html.sh (Java): Add javacomp.
36449
36450 2005-01-28  Bruno Haible  <bruno@clisp.org>
36451
36452         * m4/javacomp.m4: New file, from GNU gettext.
36453
36454 2005-01-28  Bruno Haible  <bruno@clisp.org>
36455
36456         * lib/javacomp.sh.in: New file, from GNU gettext.
36457         * lib/javacomp.h: New file, from GNU gettext.
36458         * lib/javacomp.c: New file, from GNU gettext.
36459
36460 2005-01-26  Simon Josefsson  <jas@extundo.com>
36461
36462         * lib/gai_strerror.c: Use GPL in header.
36463
36464 2005-01-26  Bruno Haible  <bruno@clisp.org>
36465
36466         * modules/javaexec: New file.
36467         * MODULES.html.sh (Java): Add javaexec.
36468
36469 2005-01-26  Bruno Haible  <bruno@clisp.org>
36470
36471         * m4/javaexec.m4: New file, from GNU gettext.
36472
36473 2005-01-26  Bruno Haible  <bruno@clisp.org>
36474
36475         * lib/javaexec.sh.in: New file, from GNU gettext.
36476         * lib/javaexec.h: New file, from GNU gettext.
36477         * lib/javaexec.c: New file, from GNU gettext.
36478
36479 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36480
36481         * modules/lchown (Depends-on): Remove lchown.h
36482
36483 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36484
36485         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
36486         must be defined if the header file was not found, in order
36487         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
36488
36489 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36490
36491         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
36492         initializers for struct pentry_state.
36493         (__argp_error): Check return value of __asprintf
36494         (__argp_failure): Translate error message
36495
36496         * lib/argp-parse.c: Removed braces around the expansion of N_()
36497
36498 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
36499
36500         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
36501         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
36502         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
36503         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
36504         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
36505         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
36506         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
36507         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
36508         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
36509         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
36510         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
36511         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
36512         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
36513         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
36514         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
36515         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
36516         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
36517         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
36518         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
36519         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
36520         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
36521         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
36522         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
36523         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
36524         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
36525         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
36526         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
36527         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
36528         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
36529         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
36530         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
36531         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
36532         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
36533         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
36534         xstrtol.m4, xstrtoumax.m4, yesno.m4:
36535         Use an all-permissive copyright notice, recommended by RMS.
36536
36537 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
36538
36539         * modules/chdir-long (Depends-on): Remove mempcpy.
36540
36541 2005-01-21  Jim Meyering  <jim@meyering.net>
36542
36543         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
36544         same value as for Solaris 9.
36545
36546         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
36547         component length.  This included changing the parameter to be
36548         of type `char *' rather than `char const *'.
36549         * lib/chdir-long.h (chdir_long): Update prototype.
36550
36551         * lib/openat.c (fdopendir, fstatat): New functions.
36552         * lib/openat.h: Include headers required for use of DIR and struct
36553         stat.
36554         [AT_SYMLINK_NOFOLLOW]: Define.
36555         (fdopendir, fstatat): Add prototypes.
36556
36557 2005-01-21  Bruno Haible  <bruno@clisp.org>
36558
36559         * modules/classpath: New file.
36560         * MODULES.html.sh (Java): Add classpath.
36561
36562 2005-01-21  Bruno Haible  <bruno@clisp.org>
36563
36564         * lib/classpath.h: New file, from GNU gettext.
36565         * lib/classpath.c: New file, from GNU gettext.
36566
36567 2005-01-20  Simon Josefsson  <jas@extundo.com>
36568
36569         * modules/version-etc-fsf: New file.
36570
36571 2005-01-20  Simon Josefsson  <jas@extundo.com>
36572
36573         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
36574         * lib/version-etc.c: Remove version_etc_copyright.
36575         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
36576         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
36577
36578 2005-01-20  Simon Josefsson  <jas@extundo.com>
36579
36580         * lib/base64.h (isbase64): Add.
36581
36582         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
36583         using a unsigned prototype, don't inline.
36584         (base64_decode): Use it.
36585
36586 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36587
36588         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
36589         it.
36590
36591 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36592
36593         * lib/save-cwd.c (save_cwd): Remove code to support the case
36594         where fchdir is missing or flaky.
36595
36596 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36597
36598         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
36599
36600 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
36601
36602         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
36603         AC_LIBSOURCES now does this.
36604         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
36605         with new ullong_max module.
36606
36607 2005-01-19  Bruno Haible  <bruno@clisp.org>
36608
36609         * modules/sh-quote: New file.
36610         * MODULES.html.sh (Executing programs): Add sh-quote.
36611
36612 2005-01-19  Bruno Haible  <bruno@clisp.org>
36613
36614         * lib/sh-quote.h: New file, from GNU gettext.
36615         * lib/sh-quote.c: New file, from GNU gettext.
36616
36617 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36618
36619         Merge from coreutils.
36620         * m4/ullong_max.m4: New file.
36621         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
36622         (gl_MACROS): Assume localeconv exists.
36623
36624 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36625
36626         Merge changes from coreutils, as described below in several
36627         changelogs dated today.
36628
36629         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
36630         (O_DIRECTORY): Remove; not needed here, since "." must be
36631         a directory.  All uses removed.
36632         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
36633         universal on Suns, and we also need to test for IRIX.
36634         Revamp code to use 'if' rather than '#if'.
36635         Avoid unnecessary comparison of cwd->desc to 0.
36636
36637         * lib/utimens.c (futimens): Robustify the previous patch, by checking
36638         for known valid error numbers rather than observed invalid ones.
36639
36640 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
36641
36642         * modules/ullong_max: New file.
36643
36644         * modules/chdir-long, modules/openat: New files.
36645         * modules/save-cwd (Depends-on): Depend on chdir-long.
36646         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
36647
36648 2005-01-18  Jim Meyering  <jim@meyering.net>
36649
36650         Merge from coreutils.
36651         * m4/chdir-long.m4, m4/openat.m4: New files.
36652         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
36653         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
36654         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
36655         is sane and DOES follow symlinks.  Besides, testing 20 different
36656         systems found no broken chown implementations.
36657         Prompted by a change in rsync's copy of this macro.
36658         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
36659
36660         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
36661
36662         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
36663         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
36664         NULL-means-set-to-current-time semantics.
36665         Remove temporary file immediately, rather than waiting
36666         for configure's at-exit trap code to do it.
36667
36668 2005-01-18  Jim Meyering  <jim@meyering.net>
36669
36670         * lib/version-etc.c (version_etc_copyright): Update copyright date.
36671
36672         * lib/utimens.c (futimens): Account for the fact that futimes
36673         can also fail with errno == ENOSYS or errno == ENOENT.
36674         Patch from Dmitry V. Levin.
36675
36676         Change the name of the robust chdir function from chdir to chdir_long.
36677         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
36678         (restore_cwd): Use chdir_long, not chdir.
36679         * lib/chdir-long.c: Renamed from chdir.c.
36680         * lib/chdir-long.h: Renamed from chdir.h.
36681         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
36682         Hurd.
36683
36684 2005-01-18  Bruno Haible  <bruno@clisp.org>
36685
36686         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
36687         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
36688         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
36689         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
36690         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
36691         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
36692         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
36693         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
36694         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
36695         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
36696         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
36697         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
36698         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
36699         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
36700         Use an all-permissive copyright notice, recommended by RMS.
36701
36702 2005-01-18  Bob Proulx  <bob@proulx.com>
36703
36704         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
36705         simplify offsetof() macro construct to avoid compile failure with
36706         native HP-UX 11.0 ANSI C compiler.
36707
36708 2005-01-17  Bruno Haible  <bruno@clisp.org>
36709
36710         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
36711         redundant because stpncpy.m4 takes care of it.
36712
36713 2005-01-17  Bruno Haible  <bruno@clisp.org>
36714
36715         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
36716
36717 2005-01-17  Bruno Haible  <bruno@clisp.org>
36718
36719         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
36720         used.
36721
36722 2005-01-17  Bruno Haible  <bruno@clisp.org>
36723
36724         * lib/fwriteerror.h (fwriteerror): Change specification to include
36725         fclose.
36726         * lib/fwriteerror.c: Include <stdbool.h>.
36727         (fwriteerror): At the end, close the file stream. Record whether
36728         stdout was already closed.
36729
36730 2005-01-17  Bruno Haible  <bruno@clisp.org>
36731
36732         * lib/execute.c (environ): Declare if needed.
36733         * lib/pipe.c (environ): Likewise.
36734         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
36735
36736 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36737
36738         * modules/argp: Depend on vsnprintf
36739
36740 2005-01-10  Jim Meyering  <jim@meyering.net>
36741
36742         * modules/closeout (Depends-on): Add atexit.
36743
36744 2005-01-06  Bruno Haible  <bruno@clisp.org>
36745
36746         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
36747
36748 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
36749
36750         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
36751         definitions to be after all include files, to avoid collisions.
36752         Problem reported by Bob Proulx.
36753
36754 2005-01-04  Jim Meyering  <jim@meyering.net>
36755
36756         Changes imported from coreutils.
36757         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
36758         as the mkstemp template, use a temporary directory and an
36759         8.3-friendly template to avoid trouble on systems like DJGPP.
36760         Reported by Juan M. Guerrero via Stepan Kasal.
36761         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
36762         close. Remove the temporary directory right away, rather than waiting
36763         for configure's at-exit trap code to do it.
36764         Suggestion from Stepan Kasal.
36765
36766 2005-01-01  Simon Josefsson  <jas@extundo.com>
36767
36768         * gnulib-tool: Print #include directives when --import'ing.
36769
36770 2004-12-28  Simon Josefsson  <jas@extundo.com>
36771
36772         * tests/test-base64.c: Include required header files.  Remove
36773         unused variables.
36774
36775 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
36776
36777         * modules/error (Depends-on): Remove gettext.
36778
36779 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
36780
36781         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
36782         not needed.  This removes a dependency on the gettext module.
36783         [defined _LIBC]: Do not include <libintl.h>; not needed.
36784
36785 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
36786
36787         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
36788         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
36789
36790 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
36791
36792         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
36793         HAVE_DECL_STRTOLD.
36794
36795 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36796
36797         * modules/getdate (Depends-on): Remove alloca-opt.
36798
36799 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36800
36801         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
36802
36803 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
36804
36805         * lib/argp-parse.c: Include <stddef.h>.
36806         (alignof, alignto): New macros.
36807         (parser_init): Don't assume that void * is aligned sufficiently
36808         for struct option.
36809
36810         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
36811         need to extend the stack.
36812         (YYINITDEPTH): New macro, so that the initial stack isn't overly
36813         large.
36814
36815 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36816
36817         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
36818
36819 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
36820
36821         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
36822         (2004-10-24) change.  Apparently this was a false alarm.
36823
36824         * modules/getdate: Depend on alloca-opt, not alloca.
36825
36826 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
36827
36828         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
36829         Remove now-obsolete comment about AIX.
36830         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
36831         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
36832         (YYMAXDEPTH): New macro.
36833
36834 2004-12-18  Simon Josefsson  <jas@extundo.com>
36835
36836         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
36837
36838 2004-12-18  Bruno Haible  <bruno@clisp.org>
36839
36840         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
36841
36842 2004-12-18  Bruno Haible  <bruno@clisp.org>
36843
36844         * lib/fatal-signal.c (fatal_signals): Make non-const.
36845         (init_fatal_signals): New function.
36846         (uninstall_handlers, install_handlers): Ignore signals that were set to
36847         SIG_IGN.
36848         (at_fatal_signal): Call init_fatal_signals.
36849         (init_fatal_signal_set): Likewise. Ignore signals that were set to
36850         SIG_IGN.
36851         Reported by Paul Eggert.
36852
36853 2004-12-18  Bruno Haible  <bruno@clisp.org>
36854
36855         * doc/alloca.texi: New file.
36856         * doc/alloca-opt.texi: New file.
36857
36858 2004-12-17  Jim Meyering  <jim@meyering.net>
36859
36860         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
36861         Otherwise, install-sh could exit with improper exit status when
36862         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
36863
36864 2004-12-16  Simon Josefsson  <jas@extundo.com>
36865
36866         * tests/test-base64.c: Add license.
36867
36868 2004-12-15  Stepan Kasal  <address@hidden>
36869
36870         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
36871
36872 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
36873
36874         * modules/getcwd (Files): Add m4/d-ino.m4.
36875         Suggested by Mark D. Baushke.
36876
36877 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
36878
36879         * lib/getdate.y (textint): New member "negative".
36880         (time_zone_hhmm): New function.
36881         Expect 14 shift-reduce conflicts, not 13.
36882         (o_colon_minutes): New rule.
36883         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
36884         (yylex): Set the "negative" member of signed numbers.
36885
36886 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
36887
36888         * doc/getdate.texi (Time of day items, Time zone items):
36889         Describe new formats +00:00, UTC+00:00.
36890
36891 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
36892
36893         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
36894         spurious "-l"s.  Problem reported by Stepan Kasal.
36895
36896 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
36897
36898         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
36899         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
36900
36901 2004-12-04  Simon Josefsson  <jas@extundo.com>
36902
36903         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
36904         Vandoorselaere <yoann@prelude-ids.org>.
36905
36906 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36907
36908         Changes imported from coreutils.
36909         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
36910         exist.
36911         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
36912
36913 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36914
36915         Changes imported from coreutils.
36916         * lib/hard-locale.c: Assume <locale.h> exists.
36917         Include "strdup.h".
36918         (GLIBC_VERSION): New macro.
36919         (hard_locale): Assume setlocale exists.
36920         Rewrite to avoid #ifdef.
36921         Use strdup rather than malloc + strcpy.
36922         * lib/human.c: Assume <locale.h> exists.
36923         (human_readable): Assume localeconv exists.
36924
36925 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
36926
36927         * modules/hard-locale (Depends-on): Add strdup.
36928
36929 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
36930
36931         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
36932         convert T2, not T.  (Imported from libc.)
36933
36934 2004-11-30  Simon Josefsson  <jas@extundo.com>
36935
36936         * modules/restrict (License): Change to LGPL.
36937
36938 2004-11-30  Simon Josefsson  <jas@extundo.com>
36939
36940         * m4/restrict.m4: Add copyright and copying conditions.
36941
36942 2004-11-30  Simon Josefsson  <jas@extundo.com>
36943
36944         * m4/base64.m4: New file.
36945
36946 2004-11-30  Simon Josefsson  <jas@extundo.com>
36947
36948         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
36949         base64.
36950
36951         * tests/test-base64.c: New file.
36952
36953         * modules/base64: New file.
36954
36955 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
36956
36957         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
36958         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
36959
36960         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
36961
36962 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
36963
36964         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
36965         (__getcwd.c): Don't restore errno; glibc doesn't.
36966         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
36967         first, falling back to our code only if its results look suspicious.
36968         Ensure that the resulting buffer is only as large as necessary.
36969
36970         * lib/readutmp.c: Include readutmp.h first.
36971         Include <errno.h>, since readutmp.h no longer does that.
36972         * lib/readutmp.h: Don't include <errno.h>,
36973         <sys/param.h>, <time.h>; not needed to establish interface.
36974         (errno): Remove decl.
36975         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
36976         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
36977         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
36978
36979 2004-11-28  Simon Josefsson  <jas@extundo.com>
36980
36981         * lib/base64.h, base64.c: New file.
36982
36983 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
36984
36985         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
36986
36987 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
36988
36989         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
36990         (Depends-on): Remove pathmax, same.  Add mempcpy.
36991         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
36992         (Makefile.am): Append getcwd.h to lib_SOURCES.
36993         (Include): Add getcwd.h.
36994         (Maintainer): Change from Jim Meyering to "all, glibc",
36995         since getdate now uses intended-for-glibc code.
36996         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
36997         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
36998
36999 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37000
37001         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
37002         HP's ANSI C compiler.
37003         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
37004         Declaring int functions causes warnings on some modern systems and
37005         shouldn't be needed to compile on ancient ones.
37006         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
37007         defined.
37008
37009         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
37010         with the following changes.
37011         (__set_errno): Parenthesize properly.
37012         Include <stdbool.h>.
37013         (MIN, MAX, MATCHING_INO): New macros.
37014         (__getcwd): Define with prototype, not K&R form.
37015         Use heuristics to allocate default buffer on stack if possible.
37016         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
37017         behavior, and to avoid the PATH_MAX limit when computing
37018         ../../../../...
37019         Use MATCHING_INO to compare inode number to file.
37020         Check for arithmetic overflow in size calculations.
37021         Fix bug in reallocation of dot array that caused getcwd to fail
37022         on directories nested deeper than 75.
37023         Be more careful about saving errno on error.
37024         Do not use realloc; use only free+malloc, as this is a bit
37025         more flexible and avoids a needless copy operation.
37026         Do not inspect st_dev and st_ino for symbolic links; POSIX
37027         doesn't specify the latter.
37028         Check for closedir errors.
37029         Avoid needless casts.
37030         Use "#ifdef weak_alias" around weak_alias, to be like other
37031         glibc code.
37032         The following changes to getcwd.c have effect only when used in
37033         gnulib; they have no effect inside glibc proper.
37034         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
37035         as alloca isn't used.
37036         (alloca, __alloca): Likewise.
37037         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
37038         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
37039         unconditionally, as gnulib assumes C89 or better.
37040         Do not include <sys/param.h>.
37041         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
37042         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
37043         better.
37044         (NULL) [!defined NULL]: Remove; we assume C89 or better.
37045         Include <dirent.h> in a way that is compatible with modern Autoconf.
37046         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
37047         New macros, if not already defined.
37048         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
37049         Use "_LIBC", not "defined _LIBC", for consistency.
37050         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
37051         a mempcpy module.
37052         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
37053         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
37054         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
37055         credit only to Jim Meyering and adjust the copyright dates.
37056         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
37057         <stdlib.h>, <unistd.h>, "pathmax.h".
37058         Instead, include "xgetcwd.h" (first) and "getcwd.h".
37059         (INITIAL_BUFFER_SIZE): Remove.
37060         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
37061
37062 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37063
37064         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
37065         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
37066         Use the _ONCE methods, for efficiency.
37067         Check for fcntl.h.  In test program, include <errno.h>
37068         and <fcntl.h> if available.  Remove old K&R cruft from
37069         test program.  Check for common errors in GNU/Linux,
37070         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
37071         don't do AC_LIBOBJ, as that's getcwd.m4's job.
37072         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
37073         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
37074         name accordingly.
37075         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
37076         accommodate new getcwd.c.
37077         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
37078         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
37079         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
37080         that's all we need now.
37081
37082 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37083
37084         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
37085         argp-parse.c depends on getopt internals, that means we should
37086         always use our getopt, to be on the safe side.
37087         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
37088         order not to spoil the result of an eventual previous invocation
37089         of gl_GETOPT_SUBSTITUTE.
37090
37091 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37092
37093         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
37094         redefinition warnings. To avoid them, include the defines
37095         in `#if !defined __need_getopt ... #endif'. The only place
37096         where __getopt_argv_const is used is in definitions
37097         of getopt_long and getopt_long_only below, which are as well
37098         protected by `#ifndef __need_getopt'.
37099         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
37100         __need_getopt after including <stdio.h> and <unistd.h> These
37101         headers might have defined it.
37102
37103 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
37104
37105         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
37106
37107 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
37108
37109         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
37110         (futimens): New function, which uses futimes if available.
37111         (futimens, utimens): Support timespec==NULL, with same semantics
37112         as utime and utimens.
37113         * lib/utimens.h (futimens): New decl.
37114
37115 2004-11-23  Jim Meyering  <jim@meyering.net>
37116
37117         * lib/getopt_.h: Remove trailing blanks.
37118
37119 2004-11-23  Jim Meyering  <jim@meyering.net>
37120
37121         * lib/__fpending.c: Add comment.
37122
37123 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
37124
37125         * modules/canonicalize (Depends-on): Add xreadlink.
37126         Problem reported by James Youngman.
37127
37128 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
37129
37130         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
37131         New macros.
37132         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
37133         optopt): Use them instead of invoking ## directly; otherwise, the
37134         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
37135
37136 2004-11-19  Bruno Haible  <bruno@clisp.org>
37137
37138         * lib/strtok_r.c: Move comments from here...
37139         * lib/strtok_r.h: ... to here.
37140
37141 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
37142
37143         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
37144         implementations that mishandle size_t overflow.
37145
37146 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
37147
37148         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
37149         might fail.  Problem reported by Yoann Vandoorselaere.
37150         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
37151         implementations that mishandle size_t overflow.
37152
37153 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37154
37155         * modules/canon-host (Depends-on): Add strdup.
37156
37157 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37158
37159         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
37160
37161 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37162
37163         * lib/canon-host.c: Include "strdup.h".
37164         (canon_host): Use getaddrinfo if available, so that IPv6 works.
37165         Use strdup instead of malloc/strcpy to duplicate strings.
37166
37167         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
37168         (human_space_before_unit): New constant.
37169         * lib/human.c (human_readable): Support it.
37170
37171         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
37172         (xgetcwd): Set errno correctly when failing.
37173         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
37174         the failure is actually due to a PATH_MAX problem.
37175
37176         Further getopt changes to make it more likely that glibc will
37177         buy the changes back.
37178         * lib/getopt.c (POSIXLY_CORRECT): New constant.
37179         (getopt): Use it, so to preserve glibc semantic
37180         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
37181         when compiling for libc.
37182         * lib/getopt_.h (__getopt_argv_const): Bring it back.
37183         (getopt_long, getopt_long_only): Use it.
37184
37185         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
37186         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
37187         (getopt): Argv is now char * const *, as per standard.
37188         (_getopt_internal_r, _getopt_internal): Argv is now char **,
37189         not char *__getopt_argv_const *.
37190         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
37191         _getopt_long_only_r): Likewise.
37192         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
37193         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
37194         _getopt_long_r, _getopt_long_only_r): Likewise.
37195         * lib/getopt_.h (__getopt_argv_const): Remove.
37196         (getopt): Argv is now char * const *, as per standard.
37197
37198         * lib/getdate.y (tORDINAL): New token.
37199         (day, relunit): Allow it for relative times.
37200         (relative_time_table): Use tORDINAL for ordinals.
37201
37202 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37203
37204         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
37205         Document that "second" isn't allowed as an ordinal number.
37206
37207 2004-11-16  Jim Meyering  <jim@meyering.net>
37208
37209         * modules/closeout (Depends-on): Add fpending.
37210
37211 2004-11-15  Jim Meyering  <jim@meyering.net>
37212
37213         * lib/closeout.c: Include "__fpending.h" once again.
37214         Include <stdbool.h>.
37215         (close_stdout): Don't fail just because stdout was closed initially,
37216         since some programs don't write to stdout in the normal course of
37217         operation (other than --version and --help), and we don't want this
37218         function to make e.g. `touch file >&-' fail.
37219         But do fail if it was closed and someone has tried to write to it.
37220         E.g., `printf foo >&-' must fail.
37221
37222 2004-11-13  Jim Meyering  <jim@meyering.net>
37223
37224         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
37225
37226 2004-11-12  Simon Josefsson  <jas@extundo.com>
37227
37228         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
37229         small doc fix is still pending.
37230
37231 2004-11-11  Simon Josefsson  <jas@extundo.com>
37232
37233         * modules/strtok_r: New file.
37234
37235         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
37236         strtok_r.
37237
37238 2004-11-11  Simon Josefsson  <jas@extundo.com>
37239
37240         * m4/strtok_r.m4: New file.
37241
37242         * m4/getopt.m4: Replace opterr.
37243
37244 2004-11-11  Simon Josefsson  <jas@extundo.com>
37245
37246         * lib/strtok_r.h, strtok_r.c: New file.
37247
37248 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
37249
37250         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
37251         of replacing opterr, getopt, etc.  This should handle the
37252         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
37253
37254 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
37255
37256         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
37257         we can stop lying to compilers about the constness of argv when we
37258         are compiled outside glibc.
37259         (getopt, getopt_long, getopt_long_only): Use it.
37260         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
37261         _getopt_internal, getopt): Likewise.
37262         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
37263         _getopt_long_only_r): Likewise.
37264         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
37265         _getopt_long_r, _getopt_long_only_r): Likewise.
37266
37267         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
37268         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
37269         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
37270         the other external symbols.
37271         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
37272         declaration, since the above renaming now works around collisions.
37273
37274 2004-11-11  Jim Meyering  <jim@meyering.net>
37275
37276         * lib/linebreak.c: Remove trailing blanks.
37277         * lib/alloca_.h: Likewise.
37278         * lib/acosl.c: Likewise.
37279         * lib/euidaccess.c: Likewise.
37280         * lib/allocsa.h: Likewise.
37281
37282 2004-11-10  Simon Josefsson  <jas@extundo.com>
37283
37284         * m4/getaddrinfo.m4: New file.
37285
37286 2004-11-10  Simon Josefsson  <jas@extundo.com>
37287
37288         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
37289
37290 2004-11-10  Simon Josefsson  <jas@extundo.com>
37291
37292         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
37293         getaddrinfo.
37294
37295         * modules/getaddrinfo: New file.
37296
37297 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37298
37299         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
37300
37301 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37302
37303         * lib/mktime.c (SHR): New macro, which is a portable
37304         substitute for >> that should work even on Crays.
37305         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
37306         Problem reported by Mark D. Baushke in
37307         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
37308         * lib/getdate.y (SHR): Likewise.
37309         (tm_diff): Use it.
37310         * lib/strftime.c (SHR): Likewise.
37311         (tm_diff): Use it.
37312         * lib/quotearg.c (struct quoting_options): Use unsigned int for
37313         quote_these_too, so that right shifts are well defined.  All uses
37314         changed.
37315
37316 2004-11-10  Jim Meyering  <jim@meyering.net>
37317
37318         Ensure that no close failure goes unreported.
37319         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
37320         return early when it seems there's nothing to flush.
37321         Don't include __fpending.h.
37322
37323 2004-11-10  Jim Meyering  <jim@meyering.net>
37324
37325         * modules/closeout (Depends-on): Remove fpending.
37326
37327 2004-11-10  Jim Meyering  <jim@meyering.net>
37328
37329         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
37330
37331 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
37332
37333         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
37334         gl_FUNC_STRFTIME.
37335         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
37336         and AC_REQUIRE when possible, to avoid duplicate checks.
37337         Check for <wchar.h>.
37338
37339 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
37340
37341         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
37342
37343 2004-11-09  Bruno Haible  <bruno@clisp.org>
37344
37345         * m4/sockpfaf.m4: New file.
37346
37347 2004-11-05  Bruno Haible  <bruno@clisp.org>
37348
37349         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
37350         Reported by Mark D. Baushke <mdb@cvshome.org>.
37351
37352 2004-11-04  Bruno Haible  <bruno@clisp.org>
37353
37354         2004-09-11  Bruno Haible  <bruno@clisp.org>
37355                 * allocsa.valgrind: New file.
37356         2004-02-06  Bruno Haible  <bruno@clisp.org>
37357                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
37358                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
37359                 Reported by Christopher Seip <chris.seip@hp.com>.
37360
37361 2004-11-04  Bruno Haible  <bruno@clisp.org>
37362
37363         * modules/allocsa (Files): Add lib/allocsa.valgrind.
37364         (Makefile.am): Distribute it.
37365
37366 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
37367
37368         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
37369         with errno == ERANGE if the buffer is too small.
37370         Problem reported by Mark D. Baushke.
37371
37372 2004-11-03  Albert Chin  <china@thewrittenword.com>
37373             Paul Eggert  <eggert@cs.ucla.edu>
37374
37375         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
37376         equivalent, substitute $ac_type for equivalent type rather than
37377         blindly using uint32_t *always* which won't work if uint32_t is not
37378         available.  Define _UINT32_T to work around typedef of uint32_t if
37379         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
37380         2.5.1.
37381
37382 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
37383
37384         * m4/jm-macros.m4: Sync from coreutils.
37385         (gl_MACROS): Check for mbrlen, for pathchk.
37386         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
37387
37388 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
37389
37390         * lib/xreadlink.c (MAXSIZE): New macro.
37391         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
37392         size does not exceed MAXSIZE.  Avoid cast.
37393         As suggested by Mark D. Baushke in
37394         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
37395         if readlink fails with buffer size just under MAXSIZE, try again
37396         with MAXSIZE.
37397
37398 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
37399
37400         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
37401
37402 2004-11-02  Derek R. Price  <derek@ximbiot.com>
37403         and  Paul Eggert  <eggert@cs.ucla.edu>
37404
37405         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
37406         (get_date): Overparenthesize to avoid GCC warning.
37407
37408 2004-11-02  Bruno Haible  <bruno@clisp.org>
37409
37410         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
37411         returns void.
37412
37413 2004-11-02  Bruno Haible  <bruno@clisp.org>
37414
37415         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
37416         function returns void.
37417
37418 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
37419
37420         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
37421         fflush_unlocked, flockfile, funlockfile, funlockfile,
37422         fputs_unlocked, putc_unlocked.
37423
37424 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
37425
37426         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
37427         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
37428         already declared.
37429
37430 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37431
37432         * modules/getdate (Files): Add doc/getdate.texi.
37433         (Depends-on): Add setenv, xalloc.
37434
37435 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37436
37437         * lib/getdate.y: Add support for TZ="foo" within a date string.
37438         Fix some bugs near time_t boundaries.  Reject dates with
37439         out-of-range components, e.g., "Sept 31".
37440         Include <stdlib.h>, "setenv.h", "xalloc.h".
37441         (ISDIGIT_LOCALE): Remove; unused.
37442         Note that the TZ and time functions used here are not reentrant.
37443         (mktime_ok, get_tz): New functions.
37444         (TZBUFSIZE): New constant.
37445         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
37446         This requires that we sometimes generate our own TZ="XXX..." setting.
37447
37448 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37449
37450         * doc/getdate.texi: New file, from coreutils with modifications for
37451         the new TZ parsing.
37452
37453 2004-10-27  Derek R. Price  <derek@ximbiot.com>
37454
37455         * lib/mktime.c (not_equal_tm): Remove redundant check.
37456
37457 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
37458
37459         * modules/regex (lib_SOURCES): Add regex.c.
37460         Reported by James Youngman in
37461         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
37462
37463 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
37464
37465         * lib/getdate.y: Use Bison 1.875 features, and some minor
37466         code cleanups.  This change does not affect semantics.
37467         Don't include <stdlib.h>; no longer needed.
37468         Don't include unlocked-io.h; only the "#if TEST" code uses
37469         stdio, and performance isn't crucial there.
37470         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
37471         Bison 1.875 features as described below.
37472         All uses of "PC." replaced by "pc->".
37473         (YYSTYPE): Add a forward declaration.
37474         (yylex, yyerror): Use full prototypes in forward decls.
37475         Use "%pure-parser" rather than obsolescent "%pure_parser".
37476         Use %parse-param and %lex-param instead of obsolescent
37477         YYPARSE_PARAM and YYLEX_PARAM.
37478         (meridian_table, month_and_day_table, time_units_table,
37479         relative_time_table, time_zone_table, military_table,
37480         lookup_zone, lookup_word, get_date):
37481         Use NULL instead of 0 where appropriate.
37482         (to_hour): Avoid abort (), to avoid a dependency on
37483         stdlib.h.
37484         (yyerror, yylex): Now accepts parser_control * arg.
37485         (main) [TEST]: Use '\0' rather than 0 for char.
37486
37487 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
37488
37489         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
37490
37491 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
37492
37493         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
37494         It's now the caller's responsibility to handle the case where
37495         !HAVE_GETPAGESIZE && !defined getpagesize.
37496
37497         * lib/mktime.c (leapyear): Arg is long int, not int.
37498
37499 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
37500
37501         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
37502
37503 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
37504
37505         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
37506         missing.  Problem reported by James Youngman.
37507
37508 2004-10-16  Simon Josefsson  <jas@extundo.com>
37509
37510         * gnulib-tool: Fix comments.  Fix parse problem.
37511         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
37512
37513 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
37514
37515         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
37516         implementation of getopt_long.  Problem reported by Alexander Taler in:
37517         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
37518
37519 2004-10-15  Bruno Haible  <bruno@clisp.org>
37520
37521         * gnulib-tool: Untabify. Initialize supplied_libname.
37522         (func_usage): More homogenous output.
37523         (func_modules_transitive_closure, func_modules_to_filelist,
37524         func_emit_lib_Makefile_am): New functions.
37525         (func_import): New function, extracted from big case statement. Use
37526         func_get_license, func_modules_transitive_closure,
37527         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
37528         opt_lgpl. Don't use test -a, as it's not portable.
37529         (func_create_testdir): Use func_modules_transitive_closure,
37530         func_modules_to_filelist, func_emit_lib_Makefile_am.
37531
37532 2004-10-15  Bruno Haible  <bruno@clisp.org>
37533
37534         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
37535
37536 2004-10-15  Bruno Haible  <bruno@clisp.org>
37537
37538         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
37539         the portions belonging to each module.
37540         Suggested by Derek Robert Price <derek@ximbiot.com>.
37541
37542 2004-10-12  Simon Josefsson  <jas@extundo.com>
37543
37544         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
37545         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
37546         to real functions.
37547
37548 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37549
37550         * modules/vsnprintf: New file.
37551
37552 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37553
37554         * m4/vsnprintf.m4: New file.
37555
37556 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37557
37558         * lib/vsnprintf.h: New file.
37559         * lib/vsnprintf.c: New file.
37560
37561 2004-10-11  Bruno Haible  <bruno@clisp.org>
37562
37563         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
37564         vsnprintf.
37565
37566 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
37567
37568         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
37569
37570 2004-10-07  Bruno Haible  <bruno@clisp.org>
37571
37572         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
37573         fits into the provided buffer.
37574
37575 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
37576
37577         * lib/diacrit.c, diacrit.h: Add GPL notice.
37578
37579         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
37580         notice.
37581         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
37582         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
37583         This avoids a potential constant-folding bug.
37584
37585 2004-10-05  Bruno Haible  <bruno@clisp.org>
37586
37587         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
37588         for the declaration of strsep.
37589
37590 2004-10-05  Bruno Haible  <bruno@clisp.org>
37591
37592         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
37593
37594 2004-10-04  Simon Josefsson  <jas@extundo.com>
37595
37596         * modules/memmem: New file.
37597         * tests/test-memmem.c: New file.
37598         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
37599
37600 2004-10-04  Simon Josefsson  <jas@extundo.com>
37601
37602         * m4/memmem.m4: New file.
37603
37604 2004-10-04  Simon Josefsson  <jas@extundo.com>
37605
37606         * lib/memmem.h: New file.
37607         * lib/memmem.c: New file, taken from glibc.
37608
37609 2004-10-04  Simon Josefsson  <jas@extundo.com>
37610
37611         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
37612         '#ifdef USE_UNLOCKED_IO'.
37613
37614 2004-10-04  Simon Josefsson  <jas@extundo.com>
37615
37616         * config/srclist.txt: Add memmem from glibc.
37617
37618 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37619
37620         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
37621
37622         * modules/argmatch, modules/argp, modules/closeout, modules/error,
37623         modules/exclude, modules/getdate, modules/getline,
37624         modules/getndelim2, modules/getpass, modules/getpass-gnu,
37625         modules/getusershell, modules/linebuffer, modules/md5,
37626         modules/mountlist, modules/posixtm, modules/readtokens,
37627         modules/readutmp, modules/regex, modules/sha1,
37628         modules/version-etc, modules/yesno:
37629         Remove dependency on unlocked-io.
37630
37631 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37632
37633         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
37634
37635         * m4/unlocked-io.m4: Add copyright notice.
37636         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
37637
37638 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37639
37640         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
37641         * lib/xmalloc.c (xmemdup): Likewise.
37642         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
37643         XFREE): Remove these long-obsolescent macros.
37644         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
37645         * lib/xstrdup.c: Remove.
37646
37647         * lib/regex.c (re_comp): Cast gettext return value to char *,
37648         Problem reported by Martin Neitzel via Mark D. Baushke.
37649
37650 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
37651
37652         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
37653         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
37654         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
37655         regex.c, sha1.c, version-etc.c, yesno.c:
37656         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
37657         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
37658         the includer's responsibility.
37659
37660         Sync from coreutils.
37661
37662         * lib/modechange.c (mode_compile): Don't decrement a pointer that
37663         points to the start of a string, as the C Standard says the
37664         resulting behavior is undefined.
37665
37666         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
37667         simple -> simple_backups, numbered_existing ->
37668         numbered_existing_backups, numbered -> numbered_backups
37669         to avoid shadowing problems.  All uses changed.
37670         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
37671         * lib/backupfile.c (check_extension, numbered_backup):
37672         Rename locals to avoid shadowing 'basename'.
37673         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
37674         once.
37675
37676         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
37677         * lib/.cvsignore: Add getopt.h.
37678
37679 2004-10-04  Bruno Haible  <bruno@clisp.org>
37680
37681         * modules/README: New file.
37682         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
37683         not a module.
37684
37685 2004-10-02  Jim Meyering  <jim@meyering.net>
37686
37687         * lib/dirfd.h, getpagesize.h: Add copyright notice.
37688
37689 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37690
37691         * modules/strsep: New file.
37692
37693 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37694
37695         * m4/strsep.m4: New file.
37696
37697 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
37698
37699         * lib/strsep.h: New file.
37700         * lib/strsep.c: New file.
37701
37702 2004-10-01  Simon Josefsson  <jas@extundo.com>
37703
37704         * lib/snprintf.c (snprintf): Handle size==0.
37705
37706 2004-10-01  Simon Josefsson  <jas@extundo.com>
37707             Bruno Haible  <bruno@clisp.org>
37708
37709         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
37710         (snprintf): Declare 'args'.
37711
37712 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
37713
37714         * lib/snprintf.c: Remove comments as to why each header is needed.
37715
37716 2004-10-01  Bruno Haible  <bruno@clisp.org>
37717
37718         * MODULES.html.sh: Add strsep.
37719
37720 2004-09-30  Simon Josefsson  <jas@extundo.com>
37721
37722         * modules/snprintf: New file.
37723
37724 2004-09-30  Simon Josefsson  <jas@extundo.com>
37725
37726         * m4/snprintf.m4: New file.
37727
37728 2004-09-30  Simon Josefsson  <jas@extundo.com>
37729
37730         * lib/snprintf.h, lib/snprintf.c: New files.
37731
37732 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37733
37734         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
37735         (hol_entry_help): Never translate an empty string.
37736         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
37737         * lib/argp.h (OPTION_NO_TRANS): New option.
37738
37739 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37740
37741         * modules/argp (Maintainer): Replace Simon Josefsson
37742         by Sergey Poznyakoff.
37743
37744 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37745
37746         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
37747         changes merged back into glibc.
37748
37749 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
37750
37751         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
37752
37753 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
37754
37755         * lib/xvasprintf.c: Include xalloc.h.
37756         (xvasprintf): Use xalloc_die, not xmalloc_die.
37757
37758 2004-09-29  Bruno Haible  <bruno@clisp.org>
37759
37760         * modules/alloca-opt: New file, derived from modules/alloca.
37761         * modules/allocsa: Depend on alloca-opt instead of alloca.
37762         * modules/setenv: Likewise.
37763         * modules/vasnprintf: Likewise.
37764         * MODULES.html.sh: Add alloca-opt.
37765
37766 2004-09-28  Simon Josefsson  <jas@extundo.com>
37767
37768         * gnulib-tool: New parameter --lgpl, to asseert that modules are
37769         LGPL, and to replace license template from GPL to LGPL.
37770
37771 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
37772
37773         * modules/dummy: Change license to LGPL.
37774
37775 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
37776
37777         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
37778
37779 2004-09-24  Simon Josefsson  <jas@extundo.com>
37780
37781         * modules/minmax (License): Change from GPL to LGPL.
37782
37783 2004-09-23  Simon Josefsson  <jas@extundo.com>
37784
37785         * gnulib-tool (--import): Typo.
37786
37787 2004-09-23  Simon Josefsson  <jas@extundo.com>
37788
37789         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
37790
37791 2004-09-22  Bruno Haible  <bruno@clisp.org>
37792
37793         * modules/*: Add 'License' field.
37794         * gnulib-tool: Accept --extract-license option.
37795         (func_get_license): New function.
37796
37797 2004-09-21  Bruno Haible  <bruno@clisp.org>
37798
37799         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
37800         Reported by Simon Josefsson.
37801
37802 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
37803
37804         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
37805         gl_AC_TYPE_LONG_LONG.
37806
37807 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
37808
37809         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
37810
37811 2004-09-18  Simon Josefsson  <jas@extundo.com>
37812         and  Paul Eggert  <eggert@cs.ucla.edu>
37813
37814         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
37815         calls with autoreconf.  Define GL_LIB.
37816
37817 2004-09-14  Karl Berry  <karl@gnu.org>
37818
37819         * config/srclist.txt: unsync setenv.c, sigh.
37820
37821 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
37822
37823         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
37824         Problem reported by Bruno Haible in:
37825         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
37826
37827 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
37828
37829         * config/srclist.txt: Comment out argp-pvh.c.
37830
37831 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
37832
37833         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
37834         in case some system header has #define'd it.  Problem reported by
37835         Soeren D. Schulze in
37836         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
37837
37838 2004-09-09  Karl Berry  <karl@gnu.org>
37839
37840         * regex.[ch]: delete from the root.  These were supposed to be
37841                 synced with emacs cvs, but this has not happened for about
37842                 a year, and anyway nothing else uses emacs regex.[ch].
37843                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
37844                 lib/regex[.ch] is untouched.
37845
37846 2004-09-09  Bruno Haible  <bruno@clisp.org>
37847
37848         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
37849
37850 2004-09-09  Bruno Haible  <bruno@clisp.org>
37851
37852         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
37853         modifications.
37854         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
37855
37856 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
37857
37858         * modules/xvasprintf: New file.
37859         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
37860
37861 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
37862
37863         * lib/xvasprintf.h: New file.
37864         * lib/xvasprintf.c: New file.
37865         * lib/xasprintf.c: New file.
37866
37867 2004-09-08  Bruno Haible  <bruno@clisp.org>
37868
37869         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
37870
37871 2004-09-08  Bruno Haible  <bruno@clisp.org>
37872
37873         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
37874         length is > INT_MAX.
37875         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
37876         more.
37877
37878 2004-09-08  Bruno Haible  <bruno@clisp.org>
37879
37880         * lib/stdint_.h: New file, taken from GNU clisp.
37881
37882 2004-09-08  Bruno Haible  <bruno@clisp.org>
37883             Oskar Liljeblad  <oskar@osk.mine.nu>
37884
37885         * modules/stdint: New file.
37886         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
37887
37888 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37889
37890         Import from coreutils.
37891         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
37892         strings on unbounded length.  alloca's performance benefits aren't
37893         that important here.
37894         (V_STRDUP): Remove.
37895         (parse_with_separator): New function, with most of the internals
37896         of the old parse_user_spec.  Allow user to omit both user and group,
37897         for compatibility with FreeBSD.
37898         Clone only the user name, not the entire spec.
37899         Do not set *uid, *gid unless entirely successful.
37900         Avoid memory leak in some failing cases.
37901         Fix regression for USER.GROUP reported by Dmitry V. Levin in
37902         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
37903         (parse_user_spec): Rewrite to use parse_with_separator.
37904
37905 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37906
37907         * modules/userspec: Don't depend on alloca.
37908
37909 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
37910
37911         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
37912
37913 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
37914
37915         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
37916         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
37917         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
37918
37919 2004-08-16  Simon Josefsson  <jas@extundo.com>
37920
37921         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
37922         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
37923         Add --dry-run for --import.
37924         Let user provided command line parameters override configure.ac
37925         settings.
37926
37927 2004-08-12  Simon Josefsson  <jas@extundo.com>
37928
37929         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
37930         as discussed with Paul Eggert in threads rooted at
37931         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
37932         and
37933         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
37934         Before, the test was empty, and relied on ELIDE_CODE in source
37935         code.)
37936         (gl_PREREQ_GETOPT): New macro.
37937         (gl_GETOPT): Use them.
37938
37939 2004-08-12  Simon Josefsson  <jas@extundo.com>
37940
37941         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
37942         * lib/getopt_.h: Renamed from getopt.h.
37943
37944 2004-08-12  Simon Josefsson  <jas@extundo.com>
37945
37946         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
37947         Change default library name from libfoo to libgnu.
37948         Now, if you have a configure.ac that says:
37949                 gl_SOURCE_BASE(gl)
37950                 gl_M4_BASE(gl/m4)
37951                 gl_MODULES(error getopt etcetera)
37952                 gl_INIT
37953         you can import all you need by running:
37954                 ../gnulib/gnulib-tool --import
37955
37956         * modules/getopt (Files): Rename getopt.h to getopt_.h.
37957         (Makefile.am): Rewrite, use logic from argz.
37958         (Include): Use <getopt.h> instead of "getopt.h".
37959
37960 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37961
37962         * modules/argp (Files): Add m4/unlocked-io.m4.
37963         (Depends-on): Add extensions.
37964
37965 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37966
37967         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
37968         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
37969         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
37970         Check for program_invocation_name, program_invocation_short_name,
37971         flockfile, funlockfile, features.h, _getopt_long_only_r.
37972
37973 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37974
37975         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
37976         its complicated substitute.
37977         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
37978         and program_invocation_name.
37979         (__argp_basename) [!_LIBC]: Remove; the only use was
37980         replaced by its body.
37981         (__argp_short_program_name): Change condition from
37982         !defined __argp_short_program_name to
37983         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
37984         to match argp-namefrob.h.
37985         (__argp_failure): Don't assume strerror_r returns char *.
37986         * lib/argp-parse.c (N_): Define unconditionally.
37987         (argp_default_options): Fill out initializers with 0 to avoid
37988         gcc warnings.
37989
37990 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
37991
37992         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
37993         getopt1.c.
37994
37995 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
37996
37997         Merge from coreutils.
37998
37999         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
38000
38001         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
38002         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
38003
38004 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
38005
38006         Merge from coreutils.
38007
38008         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
38009         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
38010         for Reliant Unix 5.43.
38011
38012         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
38013         (union fooround): Use uintmax_t, not long int.
38014         The rest is a merge from libc:
38015         [defined _LIBC]: Include <shlib-compat.h>.
38016         (_obstack) [defined _LIBC]: Remove after 2.3.4.
38017
38018         * lib/settime.c (settime): Recode to avoid warning with
38019         Sun Forte C 6U2.
38020
38021         * lib/strverscmp.c: Convert to UTF-8.
38022
38023 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
38024
38025         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
38026         m4/uintmax_t.m4.
38027
38028 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38029
38030         * modules/xalloc-die: New file.
38031         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
38032
38033         * modules/md5 (Files): Add m4/uint32_t.m4.
38034         * modules/sha1: Renamed from modules/sha.
38035         (Files):
38036         Rename lib/sha.h to lib/sha1.h.
38037         Rename lib/sha.c to lib/sha1.c.
38038         Rename m4/sha.m4 to m4/sha1.m4.
38039         (lib_SOURCES): Likewise.
38040         (configure.ac): Rename gl_SHA to gl_SHA1.
38041         (Include): sha.h -> sha1.h.
38042
38043 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38044
38045         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
38046         * m4/sha1.m4: Renamed from sha.m4.
38047         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
38048
38049 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38050
38051         * lib/obstack.h (obstack_empty_p):
38052         Don't assume that chunk->contents is suitably aligned.
38053         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
38054         Likewise. Problem reported by Benno in
38055         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
38056
38057         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
38058         readable.  This could be improved further but it'd take some work.
38059
38060 2004-08-08  Simon Josefsson  <jas@extundo.com>
38061
38062         * modules/xgethostname (Depends-on): Remove exit and error (not
38063         used).
38064
38065         * modules/getpass-gnu: Add getpass.h.
38066         (Depends-on): Add stdbool.
38067         * modules/getpass: Add getpass.h.
38068
38069 2004-08-08  Simon Josefsson  <jas@extundo.com>
38070
38071         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
38072         Check getpass declaration.
38073
38074 2004-08-08  Simon Josefsson  <jas@extundo.com>
38075
38076         * lib/xgethostname.c: Don't include error.h (not used).
38077
38078         * lib/getpass.h: Add.
38079         * lib/getpass.c: Include getpass.h first.
38080
38081 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
38082
38083         * lib/xalloc-die.c: New file.
38084         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
38085         All uses removed.
38086         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
38087         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
38088         xalloc-die.c.
38089         (_, N_, xalloc_die): Move to xalloc-die.c.
38090         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
38091         so that we needn't mess with xalloc_msg_memory_exhausted.
38092
38093         * lib/sha1.h: Renamed from sha.h.
38094         (SHA1_H): Renamed from _SHA_H.
38095         (sha1_ctx): Renamed from sha_ctx.
38096         (sha1_init_ctx): Renamed from sha_init_ctx.
38097         (sha1_process_block): Renamed from sha_process_block.
38098         (sha1_process_bytes): Renamed from sha_process_bytes.
38099         (sha1_finish_ctx): Renamed from sha_finish_ctx.
38100         (sha1_read_ctx): Renamed from sha_read_ctx.
38101         (sha1_stream): Renamed from sha_stream.
38102         (sha1_buffer): Renamed from sha_buffer.
38103         * lib/sha1.c: Likewise; renamed from sha.c.
38104         Do not include <sys/types.h>.
38105         Include <stddef.h> rather than <stdlib.h>.
38106
38107 2004-08-08  Bruno Haible  <bruno@clisp.org>
38108
38109         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
38110         FILESYSTEM_PREFIX_LEN.
38111         * lib/progreloc.c: Likewise.
38112         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
38113
38114 2004-08-06  Simon Josefsson  <jas@extundo.com>
38115
38116         * modules/progname (Depends-on): Don't depend on stdbool.
38117
38118 2004-08-06  Simon Josefsson  <jas@extundo.com>
38119
38120         * modules/getsubopt: New file.
38121         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38122         getsubopt.
38123
38124 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38125
38126         More merge from coreutils.
38127
38128         * m4/utimens.m4, m4/utimecmp.m4: New files.
38129         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
38130         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
38131         prereq.m4, sha.m4: Import changes from coreutils.
38132
38133 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38134
38135         More merge from coreutils.
38136         * modules/raise, modules/readtokens0, modules/utimens:
38137         * modules/utimecmp, module/xnanosleep: New files.
38138         * modules/strftime: Add lib/strftime.h.
38139         Change include from <time.h> to "strftime.h".
38140         * modules/yesno: Add lib/yesno.h.
38141         * modules/backupfile: Remove lib/addext.c.
38142         * modules/euidaccess: Add stat-macros.h.
38143         * modules/canonicalize, modules/euidaccess,
38144         modules/filemode, modules/lchown, modules/makepath,
38145         modules/rmdir, modules/stat: Likewise.
38146
38147 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38148
38149         Merge from tar.
38150         * lib/argp-help.c (make_hol, hol_append): Don't assume that
38151         SIZE_MAX is a valid preprocessor constant.
38152         (__argp_basename): Change from "#ifndef _LIBC"
38153         to "#ifndef __argp_short_program_name", so that
38154         we don't compile these functions for tar.
38155
38156         More merges from coreutils.
38157         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
38158         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
38159         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
38160         * lib/addext.c: Remove; no longer needed.
38161         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
38162         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
38163         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
38164         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
38165         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
38166         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
38167         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
38168         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
38169         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
38170         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
38171         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
38172         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
38173         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
38174         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
38175         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
38176         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
38177         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
38178         Import changes from coreutils.
38179
38180 2004-08-05  Simon Josefsson  <jas@extundo.com>
38181
38182         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
38183
38184 2004-08-05  Simon Josefsson  <jas@extundo.com>
38185
38186         * m4/getsubopt.m4: New file.
38187
38188 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
38189
38190         Merge from coreutils.
38191
38192         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
38193         * m4/getcwd-path-max.m4: New files.
38194
38195         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
38196         FILESYSTEM_PREFIX_LEN ->
38197         FILE_SYSTEM_PREFIX_LEN.
38198         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
38199         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
38200         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
38201         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
38202
38203         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
38204         prerequisite modules now handle the DOS stuff.
38205         Don't check for unistd.h.
38206
38207 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
38208
38209         Merge from coreutils.
38210
38211         * lib/.gdb-history: Remove; this doesn't belong here.
38212
38213         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
38214         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
38215         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
38216         * lib/getcwd.c: New files.
38217
38218         * lib/dirname.h: Include <stdbool.h>.
38219         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
38220         for consistency with POSIX terminology.  All uses changed.
38221         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
38222         (strip_trailing_slashes): Use bool for booleans.
38223         * lib/stripslash.c (strip_trailing_slashes): Likewise.
38224
38225         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
38226         sometimes returns a positive errno value even when it succeeds.
38227         (print_errno_message) [!LIBC]: Fall back on strerror if
38228         __strerror_r fails.
38229
38230         * lib/path-concat.c (mempcpy): Don't define if a system header defines
38231         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
38232         (longest_relative_suffix): New function.
38233         (path_concat): Use it.  Assume first argument is not NULL.
38234         Port to DOS.  Omit redundant separators.
38235         Report an error instead of returning NULL.
38236         Use mempcpy instead of memcpy.
38237         (xpath_concat): Remove: not declared or used.
38238
38239         * lib/same.h: Include <stdbool.h>
38240         (same_name): Return bool, not int.
38241         * lib/same.c (same_name): Likewise.
38242         (errno): Don't declare; we assume C89 or better now.
38243
38244         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
38245         if not already defined.
38246
38247         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
38248         * lib/dup-safer.c (errno): Likewise.
38249
38250 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
38251
38252         Merge from coreutils.
38253         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
38254         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
38255         * modules/path-concat: Don't depend on strdup.
38256
38257 2004-08-03  Simon Josefsson  <jas@extundo.com>
38258
38259         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
38260         * lib/progname.h: Don't include stdbool.h.
38261
38262 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
38263
38264         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
38265         * MODULES.html.sh (func_all_modules): Remove fatal.
38266
38267 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
38268
38269         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
38270
38271 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
38272
38273         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
38274         working.
38275
38276 2004-08-02  Simon Josefsson  <jas@extundo.com>
38277
38278         * lib/getsubopt.h: New file, with comments from Bruno Haible.
38279         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
38280         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
38281
38282 2004-08-01  Simon Josefsson  <jas@extundo.com>
38283
38284         * lib/xgetdomainname.c: Include stdlib.h, for free().
38285
38286 2004-07-19  Bruno Haible  <bruno@clisp.org>
38287
38288         * MODULES.html.sh (func_all_modules): Add dummy.
38289
38290 2004-07-16  Simon Josefsson  <jas@extundo.com>
38291
38292         * modules/dummy: New file.
38293
38294 2004-07-16  Simon Josefsson  <jas@extundo.com>
38295
38296         * lib/dummy.c: New file.
38297
38298 2004-07-16  Bruno Haible  <bruno@clisp.org>
38299
38300         * lib/backupfile.h: Add extern "C" for C++.
38301         * lib/closeout.h: Likewise.
38302         * lib/copy-file.h: Likewise.
38303         * lib/findprog.h: Likewise.
38304         * lib/full-write.h: Likewise.
38305         * lib/pathname.h: Likewise.
38306         * lib/progname.h: Likewise.
38307         * lib/stpcpy.h: Likewise.
38308         * lib/stpncpy.h: Likewise.
38309         * lib/strcase.h: Likewise.
38310         * lib/strstr.h: Likewise.
38311         * lib/xalloc.h: Likewise.
38312
38313         * lib/mbswidth.h: Add extern "C" for C++.
38314         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
38315
38316 2004-07-13  Robert Millan  <robertmh@gnu.org>
38317
38318         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
38319
38320 2004-07-09  Simon Josefsson  <jas@extundo.com>
38321
38322         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
38323         failed without this.)
38324
38325 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
38326
38327         * modules/chown (Files): Add lib/fchown-stub.c, since
38328         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
38329
38330 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
38331
38332         * lib/fchown-stub.c: New file.
38333
38334 2004-06-24  Jim Meyering  <jim@meyering.net>
38335
38336         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
38337
38338 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
38339
38340         * modules/argz: Omit "#include".
38341
38342         * MODULES.html.sh (func_all_modules): Add calloc, to match
38343         2004-06-01 addition of calloc module.
38344
38345 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
38346
38347         * m4/argz.m4: New file, which is autoupdated from libtool.
38348
38349 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
38350
38351         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
38352         libtool.
38353
38354 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
38355
38356         * config/srclist-update: Don't insist on "USA." before the
38357         close-comment, as libtool omits the period and puts the */ on a
38358         separate line.
38359         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
38360         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
38361
38362 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
38363
38364         * modules/argz: New file.
38365         * MODULES.html.sh (func_all_modules): Add argz.
38366
38367 2004-06-12  Jim Meyering  <jim@meyering.net>
38368         and  Paul Eggert  <eggert@cs.ucla.edu>
38369
38370         * modules/hash (Files): Add lib/xalloc.h.
38371         * modules/pipe (Depends-on): Add wait-process.
38372         * modules/stat (Depends-on): Add xalloc.
38373         * modules/userspec (Files): Add lib/userspec.h.
38374         * modules/xstrto
38375
38376         Upgrade from gettext-0.13.
38377         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
38378         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
38379         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
38380
38381 2004-06-10  Jim Meyering  <jim@meyering.net>
38382
38383         * lib/calloc.c: New file.
38384
38385 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
38386
38387         * lib/getdate.y (yylex): Allow space between sign and number.
38388         Problem reported by Dan Jacobson.
38389
38390 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
38391
38392         Merge from coreutils CVS.
38393
38394         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
38395         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
38396         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
38397         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
38398         xstrtol.m4: Fix copyright date and/or serial number.
38399
38400         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
38401         See if we need an fchown replacement.
38402         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
38403         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
38404         and use the replacement function if we detect either defect.
38405
38406         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
38407         gl_UTIMECMP.
38408
38409 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
38410         and  Jim Meyering  <jim@meyering.net>
38411
38412         Merge from coreutils CVS.
38413
38414         * lib/stat-macros.h: New file, with contents from file-type.h
38415         and coreutils' system.h.
38416         * lib/file-type.c: Include "stat-macros.h".
38417         * lib/file-type.h (file_type): Move all macro definitions to new file,
38418         stat-macros.h.
38419
38420         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
38421         Wrap old code with this conditional.
38422         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
38423         function that does not dereference symlinks.
38424         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
38425
38426         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
38427         dependency problems.
38428         (xreadlink): Accept new arg SIZE, for efficiency.
38429         All decls and uses changed.
38430         * lib/xreadlink.h: Include <stddef.h>, for size_t.
38431
38432         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
38433         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
38434
38435         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
38436         sysexits.h.
38437
38438 2004-06-01  Jim Meyering  <jim@meyering.net>
38439
38440         * m4/calloc.m4: New file.
38441
38442 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
38443
38444         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
38445         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
38446         Also, fix a typo in a diagnostic.
38447
38448 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
38449
38450         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
38451         or AC_FUNC_REALLOC.
38452
38453 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
38454
38455         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
38456         macros to be defined.
38457         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
38458         the allocator returns NULL because the requested size is zero.
38459
38460 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
38461
38462         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
38463         var.  Add comment explaining why libc still defines it.  This
38464         merges the following patch from glibc:
38465         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
38466
38467 2004-05-20  Andreas Schwab  <schwab@suse.de>
38468
38469         * m4/free.m4: Replace free if it not known to work, not the other
38470         way round.
38471
38472 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
38473
38474         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
38475         present in glibc since revision 1.1 of this file.
38476         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
38477         obstack_alignment_mask, obstack_alloc, obstack_base,
38478         obstack_blank, obstack_blank_fast, obstack_chunk_size,
38479         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
38480         obstack_grow0, obstack_init, obstack_int_grow,
38481         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
38482         obstack_next_free, obstack_object_size, obstack_ptr_grow,
38483         obstack_ptr_grow_fast, obstack_room): Remove declarations of
38484         nonexistent functions.
38485
38486 2004-05-18  Karl Berry  <karl@gnu.org>
38487
38488         * config/srclist.txt: break link for vasnprintf.c.
38489
38490 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
38491
38492         Port obstack to the AS/400, where pointers are 16 bytes wide and
38493         you cannot cast an integer to a valid pointer.  This patch is
38494         currently waiting to be integrated into glibc; see
38495         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
38496
38497         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
38498         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
38499         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
38500         (struct obstack): temp member is now a union of a pointer and
38501         an integer, instead of an integer.  All integer uses changed.
38502         This does not affect the physical layout of struct obstack,
38503         except on hosts (like the AS/400) where the size or alignment of
38504         void * is greater than that of ptrdiff_t.
38505         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
38506         __STDC__)]: Store temporary in pointer member of union, not
38507         integer member.
38508         * lib/obstack.c: Include <stddef.h>, for offsetof.
38509         (struct fooalign): Remove; it doesn't need a name.
38510         (union fooround): Change double to long double, and add void *.
38511         (DEFAULT_ALIGNMENT): Use offsetof to compute.
38512         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
38513         not a macro.  Hence the values are always int; so remove all
38514         casts-to-int in uses.
38515
38516 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
38517
38518         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
38519         we can get this patch merged into glibc.
38520
38521 2004-05-17  Derek R. Price  <derek@ximbiot.com>
38522             Paul Eggert  <eggert@cs.ucla.edu>
38523
38524         * m4/argp: Depend on alloca.
38525
38526 2004-05-17  Derek R. Price  <derek@ximbiot.com>
38527             Paul Eggert  <eggert@cs.ucla.edu>
38528
38529         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
38530         freecoding.
38531
38532 2004-05-17  Bruno Haible  <bruno@clisp.org>
38533
38534         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
38535         precision that consists of a '.' followed by an empty digit string.
38536         Patch by Tor Lillqvist <tml@iki.fi>.
38537
38538 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
38539
38540         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
38541         for backward compatibility with older code.  We need our own
38542         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
38543         it under some other name, and our alloca.h will define it.
38544
38545 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
38546             Derek Price  <derek@ximbiot.com>
38547
38548         * lib/alloca.c: Include <alloca.h>, to get our interface.
38549         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
38550         include <alloca.h> first.  Use C89 prototype for alloca; this
38551         requires including <stddef.h> for size_t.  Use extern "C" if C++.
38552         Use #elif for simplicity, since we can assume C89 now.
38553         Don't try to source the system alloca.h since it will not be found
38554         and to prevent recursively including its replacement.
38555         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
38556         * lib/regex.c: Likewise.
38557
38558 2004-05-16  Derek Price  <derek@ximbiot.com>
38559             Paul Eggert  <eggert@cs.ucla.edu>
38560
38561         getline cleanup.  This changes the getndelim2 API: both order of
38562         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
38563         no delimiter).
38564
38565         * lib/getline.c: Don't include stddef.h or stdio.h, since our
38566         interface does that.
38567         (getline): Always use getdelim, so that we don't have two
38568         copies of this code.
38569         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
38570         if available.
38571         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
38572         (GETNDELIM2_MAXIMUM): New macro.
38573         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
38574         instead of the old practice of delim2==0.  All callers changed.
38575         Return -1 on overflow, instead of returning junk.
38576         Do not set *linesize unless allocation succeeds.
38577         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
38578         that we include sys/types.h.
38579         * lib/getnline.h: Likewise.
38580         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
38581         (getndelim2): Reorder arguments.
38582         * lib/getnline.c (getnline, getndelim):
38583         Don't discard the NMAX argument.
38584         (getnline): Invoke getndelim, to avoid code duplication.
38585         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
38586         of (size_t) -1 by callers of the getnline family.
38587
38588 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38589
38590         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
38591         Check for gettimeofday.
38592         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
38593         Check for settimeofday, stime.
38594
38595 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
38596
38597         * lib/nanosleep.c (suspended): Change its type from int to
38598         sig_atomic_t volatile.
38599         (first_call): Make it private to rpl_nanosleep, and have it
38600         be zero initially as that's a bit faster.
38601         (my_usleep): Round up fractional times instead of truncating them,
38602         as this is the usual meaning for 'sleep'.
38603
38604         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
38605         doesn't work.
38606         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
38607         (ENOSYS): Define if not defined.
38608         (settime): Fall back on stime if it exists and settimeofday fails.
38609         But don't bother with fallbacks if a method fails with errno == EPERM.
38610
38611 2004-05-11  Jim Meyering  <jim@meyering.net>
38612
38613         Prior to this change, the save_cwd caller required read access to the
38614         current directory on most systems (ones with the fchdir function).
38615
38616         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
38617         fails, try write-only, and finally, resort to using xgetcwd.
38618
38619 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
38620
38621         * lib/obstack.c, obstack.h: Import changes from libc.
38622
38623 2004-04-28  Bruno Haible  <bruno@clisp.org>
38624
38625         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
38626         also implicitly appends .exe to executables.
38627         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
38628         accepts Windows pathnames.
38629         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
38630         Treat Cygwin like Windows, since it now accepts Windows pathnames.
38631         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
38632         Treat Cygwin like Windows, since it now accepts Windows pathnames.
38633         Reported by Derek Robert Price <derek@ximbiot.com>.
38634
38635 2004-04-21  Karl Berry  <karl@gnu.org>
38636
38637         * config/srclist.txt (localcharset.c): break sync.
38638
38639 2004-04-20  Paul Eggert  <eggert@twinsun.com>
38640
38641         * m4/host-os.m4: Add a copyright notice.
38642
38643 2004-04-20  Jim Meyering  <jim@meyering.net>
38644
38645         Change UTILS_ to gl_ in AC_DEFINE'd names.
38646         Change utils_- and jm_-prefixed variables, too.
38647         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
38648         UTILS_FUNC_MKDIR_TRAILING_SLASH.
38649         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
38650
38651         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
38652         Don't emit trailing blanks.
38653         Also rename jm_-prefixed variables to have gl_ prefix.
38654
38655         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
38656         Also rename jm_-prefixed variables to have gl_ prefix.
38657
38658         * m4/jm-macros.m4: Reflect the renamings.
38659         * m4/prereq.m4: Likewise.
38660
38661 2004-04-20  Jim Meyering  <jim@meyering.net>
38662
38663         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
38664         memory.
38665
38666 2004-04-20  Jim Meyering  <jim@meyering.net>
38667             Bruno Haible  <bruno@clisp.org>
38668
38669         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
38670         memory when realloc fails.
38671
38672 2004-04-19  Jim Meyering  <jim@meyering.net>
38673
38674         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
38675         now that readutmp.c may call `free (0)'.
38676
38677 2004-04-19  Bruno Haible  <bruno@clisp.org>
38678
38679         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
38680         * m4/inttypes_h.m4: Likewise.
38681         * m4/stdint_h.m4: Likewise.
38682         * m4/intmax_t.m4: Likewise.
38683         * m4/uintmax_t.m4: Likewise.
38684
38685 2004-04-18  Jim Meyering  <jim@meyering.net>
38686
38687         * m4/prereq.m4: Don't forbid jm_ prefix.
38688
38689         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
38690         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
38691         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
38692         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
38693         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
38694         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
38695         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
38696         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
38697         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
38698         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
38699         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
38700         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
38701         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
38702         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
38703         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
38704         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
38705         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
38706         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
38707         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
38708
38709 2004-04-18  Jim Meyering  <jim@meyering.net>
38710
38711         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
38712         failure, don't leak memory and do call END_UTMP_ENT.
38713
38714 2004-04-16  Jim Meyering  <jim@meyering.net>
38715
38716         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
38717         coreutils' stat program.
38718         (gl_PREREQ): Don't require jm_PREREQ_STAT.
38719
38720 2004-04-11  Paul Eggert  <eggert@twinsun.com>
38721
38722         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
38723         C89.
38724         (CHAR_BIT): Remove, since we assume C89.
38725         Include <stdint.h> if available, as per current Autoconf CVS advice.
38726
38727 2004-03-31  Jim Meyering  <jim@meyering.net>
38728
38729         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
38730         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
38731         * m4/xalloc.m4: Likewise.
38732
38733 2004-03-30  Paul Eggert  <eggert@twinsun.com>
38734
38735         Merge from coreutils.
38736
38737         * m4/inttostr.m4: New file.
38738         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
38739         Require AM_STDBOOL_H and gl_TIMESPEC instead.
38740         Require gl_CLOCK_TIME.
38741         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
38742
38743 2004-03-30  Paul Eggert  <eggert@twinsun.com>
38744
38745         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
38746         not bool, to be more consistent with Unix conventions.
38747         Suggested by Bruno Haible.
38748
38749         Merge from coreutils.
38750
38751         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
38752         * lib/umaxtostr.c: New files.
38753
38754         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
38755         the usual <time.h> dance.
38756         (get_date): Change signature to support fractional time stamps.
38757         All callers changed.
38758         * lib/getdate.y: Include "getdate.h" first, as we can now
38759         assume C89 and don't need to worry about 'const'.
38760         Similarly, include "unlocked-io.h" near start, not in middle.
38761         Include <limits.h>.
38762         (textint.value): Use long int rather than int.
38763         (textint.digits): Use size_t rather than int.
38764         (BILLION, LOG10_BILLION): New constants.
38765         (parser_control): New member rel_ns.  Members day_ordinal,
38766         time_zone, month, day, hour, minutes, rel_year, rel_month,
38767         rel_day, rel_hour, rel_minutes, rel_seconds
38768         are now long int, not int.  Member seconds is now struct timespec,
38769         not int.  New member timespec_seen.  Members dates_seen, days_seen,
38770         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
38771         not int.
38772         (%union.intval): Now long int, not int.
38773         New member timespec.
38774         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
38775         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
38776         (spec): Now is a timespec or an item list.
38777         (timespec, items): New nonterminals.
38778         (time, rel, relunit, number, get_date):
38779         Add support for fractional seconds.
38780         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
38781         (gmtime, localtime, mktime): Remove decls; not needed with C89.
38782         (to_hour): First arg is now long int, not int.
38783         (to_year): Returns long int, not int.
38784         Don't treat year -70 like 70.
38785         (tm_diff): Returns long int, not int.
38786         (lookup_word): Use bool instead of int when appropriate.
38787         (yylex): Use size_t for count, not int.
38788         Detect overflow when parsing large integer constants.
38789         Add support for fractions.
38790         (get_date): Make pointers 'const' if possible.
38791         Use more-portable code to detect integer overflow.
38792         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
38793         Don't use ctime; it's not reliable if the year has >4 digits.
38794
38795         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
38796         This is for compatibility with BSD.
38797
38798         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
38799         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
38800         From coreutils' system.h.
38801
38802         * lib/userspec.c: Don't include "posixver.h".
38803         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
38804         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
38805         compatible extension.  Simplify code by removing a boolean int
38806         that was always nonzero if a string was nonnull.
38807
38808 2004-03-30  Jim Meyering  <jim@meyering.net>
38809
38810         Merge from coreutils.
38811
38812         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
38813         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
38814         on some systems one must include <grp.h> before it.
38815         Reported by Christian Krackowizer.
38816
38817 2004-03-30  Jim Meyering  <jim@meyering.net>
38818
38819         Merge from coreutils.
38820
38821         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
38822
38823         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
38824         an empty input stream.
38825
38826         * lib/readtokens.c: Include <stdbool.h>.
38827         (readtoken): Use `size_t' rather than int/long.
38828         All callers adjusted.
38829         Use `bool' rather than `int' where appropriate.
38830         Use memset rather than an explicit loop.
38831         Use x2nrealloc rather than xrealloc.
38832         Allow the use of `\0' as a delimiter.
38833         (readtokens): Likewise.
38834         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
38835
38836 2004-03-30  Jim Meyering  <jim@meyering.net>
38837
38838         * m4/realloc.m4: Remove file, since now it does no more than
38839         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
38840         the `configure.ac' section of module/realloc.
38841         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
38842
38843 2004-03-30  Bruno Haible  <bruno@clisp.org>
38844
38845         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
38846         nonnull.
38847
38848 2004-03-29  Paul Eggert  <eggert@twinsun.com>
38849
38850         Merge changes to getloadavg.c from coreutils and Emacs.
38851
38852         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
38853         Define to an expression, not to the empty string.
38854         Include cloexec.h and xalloc.h.
38855         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
38856         Use set_cloexec_flag rather than rolling our own.
38857         * lib/cloexec.c, lib/cloexec.h: New files.
38858
38859 2004-03-29  Paul Eggert  <eggert@twinsun.com>
38860
38861         * m4/cloexec.m4: New file.
38862
38863 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38864
38865         * lib/getopt.h: Sync with libc CVS.
38866
38867 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38868             Bruno Haible  <bruno@clisp.org>
38869
38870         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
38871         mbswidth.
38872
38873 2004-03-18  Paul Eggert  <eggert@twinsun.com>
38874             Bruno Haible  <bruno@clisp.org>
38875
38876         * lib/mbswidth.h: Include <wchar.h> only if
38877         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
38878         <wchar.h>.
38879         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
38880
38881 2004-03-09  Paul Eggert  <eggert@twinsun.com>
38882
38883         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
38884         Sync with libc CVS.
38885         * lib/getopt_int.h: New file, also synced from libc.
38886
38887 2004-03-09  Paul Eggert  <eggert@twinsun.com>
38888
38889         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
38890         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
38891         Bring back getopt.c, getopt.h, getopt1.c.
38892
38893 2004-03-07  Paul Eggert  <eggert@twinsun.com>
38894
38895         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
38896         All uses changed.  Check for sa_sigaction member; this fixes
38897         a bug first reported by Jason Andrade in
38898         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
38899
38900 2004-03-07  Paul Eggert  <eggert@twinsun.com>
38901
38902         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
38903         '#if' expressions.  Unlike the code it replaces, it does not
38904         depend on (defined _SC_PAGESIZE).  However, it does depend on
38905         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
38906         first reported by Jason Andrade in
38907         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
38908
38909 2004-02-25  Simon Josefsson  <jas@extundo.com>
38910
38911         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
38912
38913 2004-02-25  Simon Josefsson  <jas@extundo.com>
38914
38915         * lib/strdup.h: New file.
38916         * lib/strdup.c: Include it.
38917         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
38918         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
38919
38920 2004-02-23  Karl Berry  <karl@gnu.org>
38921
38922         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
38923         (from fencepost.gnu.org:/gd/gnuorg).
38924
38925 2004-02-23  Karl Berry  <karl@gnu.org>
38926
38927         * config/srclistvars.sh (GNUORG) [karl]: redefine.
38928         * config/srclist.txt: add maintain/standards documents.
38929
38930 2004-02-18  Bruno Haible  <bruno@clisp.org>
38931
38932         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
38933         Reported by Derek Robert Price <derek@ximbiot.com>.
38934
38935 2004-02-16  Karl Berry  <karl@gnu.org>
38936
38937         * config/mkinstalldirs, install-sh: update from automake.
38938
38939 2004-02-06  Karl Berry  <karl@gnu.org>
38940
38941         * m4/po.m4: update from gettext 0.14.1.
38942
38943 2004-02-06  Karl Berry  <karl@gnu.org>
38944
38945         * lib/config.charset: update from gettext 0.14.1.
38946
38947 2004-02-05  Paul Eggert  <eggert@twinsun.com>
38948
38949         Add comments and code, prompted by suggestions from Bruno Haible
38950         for sh-quote.
38951         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
38952         describing the enum quoting_style values.
38953         * lib/quotearg.c (quotearg_alloc): New function.
38954         (quotearg_buffer_restyled): Treat lone { and } as special.
38955         Treat = as special.  Work around bug with older shells
38956         that "see" a '\' that is really the 2nd byte of a multibyte char.
38957         Quote empty string with shell_quoting_style.
38958
38959 2004-02-03  Bruno Haible  <bruno@clisp.org>
38960
38961         * m4/pipe.m4: New file, from GNU gettext.
38962
38963 2004-02-03  Bruno Haible  <bruno@clisp.org>
38964
38965         * lib/pipe.h: New file, from GNU gettext.
38966         * lib/pipe.c: New file, from GNU gettext.
38967
38968 2004-01-27  Bruno Haible  <bruno@clisp.org>
38969
38970         * m4/execute.m4: New file, from GNU gettext.
38971
38972 2004-01-27  Bruno Haible  <bruno@clisp.org>
38973
38974         * lib/execute.h: New file, from GNU gettext.
38975         * lib/execute.c: New file, from GNU gettext.
38976         * lib/w32spawn.h: New file, from GNU gettext.
38977
38978 2004-01-24  Paul Eggert  <eggert@twinsun.com>
38979
38980         Merge from diffutils.
38981
38982         * lib/file-type.c (file_type): Add typed memory objects.
38983         * lib/file-type.h (S_TYPEISTMO): New macro.
38984
38985         * lib/c-stack.h (c_stack_action): Remove argv argument.
38986         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
38987         (die): Don't calculate message unless segv_action returns.
38988         (get_stack_location, min_address_from_argv, max_address_from_argv,
38989         volatile stack_base, volatile_stack_size): Remove.
38990         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
38991         that every segmentation violation is a stack overflow.  (Ouch!)
38992         See Debian bug 136249 (still outstanding) for more info about why
38993         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
38994
38995 2004-01-24  Paul Eggert  <eggert@twinsun.com>
38996
38997         Exit-status fix from coreutils.
38998
38999         Use exit_failure consistently in place of EXIT_FAILURE,
39000         so that program exit statuses are consistent on failure.
39001
39002         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
39003         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
39004         * lib/argmatch.h: Comment fix to match the above.
39005         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
39006         Now a macro referring to exit_failure, instead of a separate
39007         variable.  Include "exitfail.h" to get it.
39008         * lib/xstrtol.h: Include "exitfail.h".
39009         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
39010
39011         * lib/long-options.c (parse_long_options): Use prototype
39012         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
39013         for clarity.
39014
39015 2004-01-21  Jim Meyering  <jim@meyering.net>
39016
39017         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
39018         so as not to conflict with a different-sized __mktime_internal
39019         function in GNU libc.
39020         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
39021         Problem building statically-linked `ls' reported by Michael Brunnbauer.
39022
39023 2004-01-20  Karl Berry  <karl@gnu.org>
39024
39025         * config/config.guess: update from config.
39026
39027         * config/srclistvars.sh: GNUWWWLICENSES for karl.
39028
39029 2004-01-20  Bruno Haible  <bruno@clisp.org>
39030
39031         Safer stack allocation.
39032         * lib/setenv.c: Include allocsa.h.
39033         (alloca): Remove fallback definition.
39034         (freea): Remove macro.
39035         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
39036         instead of freea.
39037
39038 2004-01-20  Bruno Haible  <bruno@clisp.org>
39039
39040         * m4/eealloc.m4: New file, from GNU gettext.
39041
39042 2004-01-20  Bruno Haible  <bruno@clisp.org>
39043
39044         * m4/allocsa.m4: New file, from GNU gettext.
39045
39046 2004-01-20  Bruno Haible  <bruno@clisp.org>
39047
39048         * lib/xallocsa.h: New file, from GNU gettext.
39049         * lib/xallocsa.c: New file, from GNU gettext.
39050
39051 2004-01-20  Bruno Haible  <bruno@clisp.org>
39052
39053         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
39054
39055 2004-01-20  Bruno Haible  <bruno@clisp.org>
39056
39057         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
39058         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
39059         specially.
39060
39061 2004-01-20  Bruno Haible  <bruno@clisp.org>
39062
39063         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
39064         patch.
39065
39066 2004-01-20  Bruno Haible  <bruno@clisp.org>
39067
39068         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
39069
39070 2004-01-20  Bruno Haible  <bruno@clisp.org>
39071
39072         * lib/eealloc.h: New file.
39073
39074 2004-01-20  Bruno Haible  <bruno@clisp.org>
39075
39076         * lib/binary-io.h: Avoid warnings on Cygwin.
39077
39078 2004-01-20  Bruno Haible  <bruno@clisp.org>
39079
39080         * lib/allocsa.h: New file, from GNU gettext.
39081         * lib/allocsa.c: New file, from GNU gettext.
39082
39083 2004-01-18  Karl Berry  <karl@gnu.org>
39084
39085         * doc/gpl.texi, doc/lgpl.texi: new files.
39086
39087 2004-01-18  Karl Berry  <karl@gnu.org>
39088
39089         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
39090         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
39091
39092 2004-01-15  Paul Eggert  <eggert@twinsun.com>
39093
39094         Merge from coreutils.
39095
39096         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
39097         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
39098         (gl_DEFAULT_POSIX2_VERSION): Move
39099         the documentation from 'configure' into 'config.hin',
39100         so that 'configure --help' isn't burdened by it and
39101         we don't have to worry about its formatting there.
39102         Reword the documentation so that it's more succinct
39103         and can be run together into a single paragraph.
39104         * m4/same.m4 (gl_SAME): Check for pathconf.
39105
39106 2004-01-15  Paul Eggert  <eggert@twinsun.com>
39107
39108         Merge from coreutils.
39109
39110         * lib/posixver.c: Include posixver.h.
39111
39112         * lib/same.c: Include <stdbool.h>, <limits.h>.
39113         (_POSIX_NAME_MAX): Define if not defined.
39114         (MIN): New macro.
39115         (same_name): If file names are silently truncated, report
39116         that the file names are the same if they are the same after
39117         the silent truncation.
39118
39119         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
39120         conversion function.
39121         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
39122         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
39123         longer needed.
39124
39125 2004-01-15  Jim Meyering  <jim@meyering.net>
39126
39127         Merge from coreutils.
39128
39129         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
39130         if no library is required.
39131         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
39132         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
39133         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
39134         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
39135         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
39136         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
39137         value, $ac_cv_search_crypt, if it's "none required".
39138         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
39139         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
39140         not gl_FUNC_GETLOADAVG.
39141         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
39142         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
39143
39144 2004-01-15  Jim Meyering  <jim@meyering.net>
39145
39146         Merge from coreutils.
39147
39148         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
39149         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
39150         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
39151
39152         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
39153         optional configure-time default.
39154
39155         * lib/version-etc.c (version_etc_copyright): Update copyright date.
39156
39157         * lib/xreadlink.c (xreadlink): Correct outdated comment.
39158
39159 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
39160
39161         Merge from coreutils.
39162
39163         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
39164         value, $ac_cv_search_nanosleep, if it's "none required".
39165
39166 2004-01-14  Paul Eggert  <eggert@twinsun.com>
39167
39168         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
39169         with like-named macro in fnmatch.c.
39170         (EXT): Use an internal constant instead.
39171
39172         Merge fnmatch patches from glibc.
39173         * lib/fnmatch.c (mbsinit): Remove define.
39174         Add libc_hidden_ver (__fnmatch, fnmatch).
39175         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
39176         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
39177
39178 2004-01-14  Karl Berry  <karl@gnu.org>
39179
39180         * config/install-sh: update from automake.
39181
39182 2004-01-13  Karl Berry  <karl@gnu.org>
39183
39184         * config/install-sh: update from automake.
39185
39186 2004-01-09  Karl Berry  <karl@gnu.org>
39187
39188         * config/install-sh: update from automake.
39189
39190 2004-01-05  Karl Berry  <karl@gnu.org>
39191
39192         * config/config.{sub,guess}: update from config.
39193
39194 2003-12-31  Karl Berry  <karl@gnu.org>
39195
39196         * config/depcomp: update from automake.
39197
39198 2003-12-14  Karl Berry  <karl@gnu.org>
39199
39200         * lib/config.charset: update from gettext-runtime.
39201
39202 2003-12-03  Paul Eggert  <eggert@twinsun.com>
39203
39204         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
39205         Bug reported by Alfred M. Szmidt.
39206
39207 2003-12-03  Bruno Haible  <bruno@clisp.org>
39208
39209         * m4/gettext.m4: Upgrade from gettext-0.13.
39210         * m4/po.m4: Upgrade from gettext-0.13.
39211         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
39212         * m4/intmax.m4: New file, from gettext-0.13.
39213         * m4/printf-posix.m4: New file, from gettext-0.13.
39214
39215 2003-11-29  Karl Berry  <karl@gnu.org>
39216
39217         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
39218
39219 2003-11-25  Paul Eggert  <eggert@twinsun.com>
39220             Bruno Haible  <bruno@clisp.org>
39221
39222         * lib/printf-parse.h: Don't include sys/types.h.
39223         (ARG_NONE): New macro.
39224         (char_directive): Change type of *arg_index fields to size_t.
39225         * lib/printf-parse.c: Don't include sys/types.h.
39226         (SSIZE_MAX): Remove macro.
39227         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
39228         Remove unnecessary overflow check.
39229         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
39230         fields.
39231
39232 2003-11-25  Bruno Haible  <bruno@clisp.org>
39233
39234         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
39235
39236 2003-11-25  Bruno Haible  <bruno@clisp.org>
39237
39238         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
39239         gt_TYPE_SSIZE_T.
39240
39241 2003-11-24  Paul Eggert  <eggert@twinsun.com>
39242
39243         * modules/alloca: Remove dependency on xalloc.
39244
39245 2003-11-24  Paul Eggert  <eggert@twinsun.com>
39246
39247         * lib/alloca.c: Remove dependency on xalloc module.
39248         (xalloc_die): Remove.
39249         (memory_full) [!defined emacs]: New macro.
39250         [!defined emacs]: Don't include xalloc.h.
39251         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
39252         address arithmetic overflows.  Change datatypes a bit to avoid
39253         unnecessary casts.
39254
39255 2003-11-22  Jim Meyering  <jim@meyering.net>
39256
39257         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
39258         s/size/size_t/.
39259
39260 2003-11-21  Karl Berry  <karl@gnu.org>
39261
39262         * config/config.{sub,guess}: update from config.
39263
39264 2003-11-18  Karl Berry  <karl@gnu.org>
39265
39266         * config/config.{sub,guess}: update from config.
39267
39268         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
39269
39270 2003-11-17  Paul Eggert  <eggert@twinsun.com>
39271
39272         * README: Mention that S+T cannot overflow if S is the size of
39273         an existing object and T is sufficiently small.
39274
39275 2003-11-17  Jim Meyering  <jim@meyering.net>
39276
39277         On systems without utime and without a utimes function capable of
39278         dealing with a NULL struct utimbuf* argument, this utime replacement
39279         could -- in unusual circumstances -- leak a file descriptor.
39280         * lib/utime.c: Include <unistd.h> and <errno.h>.
39281         (utime_null): Be sure to close `fd' and to preserve errno.
39282         Reported by Geoff Collyer via Arnold Robbins.
39283
39284 2003-11-17  Bruno Haible  <bruno@clisp.org>
39285
39286         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
39287         (Depends-on): Add xsize.
39288
39289 2003-11-17  Bruno Haible  <bruno@clisp.org>
39290
39291         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
39292
39293 2003-11-17  Bruno Haible  <bruno@clisp.org>
39294
39295         * lib/vasnprintf.c (alloca): Remove fallback definition.
39296         (freea): Remove definition.
39297         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
39298         Reported by Paul Eggert.
39299
39300 2003-11-16  Paul Eggert  <eggert@twinsun.com>
39301             Bruno Haible  <bruno@clisp.org>
39302
39303         Protect against address arithmetic overflow.
39304         * lib/printf-args.h: Include stddef.h.
39305         (arguments): Change type of field 'count' to size_t.
39306         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
39307         'unsigned int' where appropriate.
39308         * lib/printf-parse.h: Include sys/types.h.
39309         (char_directive): Change type of *arg_index fields to ssize_t.
39310         (char_directives): Change type of fields 'count', max_*_length to
39311         size_t.
39312         * lib/printf-parse.c: Include sys/types.h and xsize.h.
39313         (SSIZE_MAX): Define fallback value.
39314         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
39315         instead of 'int' where appropriate. Check a_allocated, d_allocated
39316         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
39317         * lib/vasnprintf.c: Include xsize.h.
39318         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
39319         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
39320         overflow. Avoid wraparound when converting a width or precision from
39321         decimal to binary.
39322
39323 2003-11-16  Bruno Haible  <bruno@clisp.org>
39324
39325         Update from GNU gettext.
39326         * lib/printf-parse.c: Generalize to it can be compiled for wide
39327         strings.
39328         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
39329         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
39330         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
39331         SNPRINTF): New macros.
39332         Don't include <alloca.h> if the file is used inside libintl.
39333         (local_wcslen): New function, for Solaris 2.5.1.
39334         (VASNPRINTF): Use it instead of wcslen.
39335
39336 2003-11-16  Bruno Haible  <bruno@clisp.org>
39337
39338         * lib/xsize.h (xmax): New function.
39339         (xsum, xsum3, xsum4): Declare as "pure" functions.
39340
39341 2003-11-12  Paul Eggert  <eggert@twinsun.com>
39342
39343         * modules/xalloc (Files): Undo latest change, since xalloc.h
39344         no longer needs SIZE_MAX or PTRDIFF_MAX.
39345
39346 2003-11-12  Paul Eggert  <eggert@twinsun.com>
39347
39348         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
39349         gl_PTRDIFF_MAX.
39350
39351 2003-11-12  Paul Eggert  <eggert@twinsun.com>
39352
39353         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
39354         "return", to pacify some unknown compiler.  Problem reported
39355         by Joerg Schilling.
39356
39357 2003-11-12  Paul Eggert  <eggert@twinsun.com>
39358
39359         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
39360         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
39361         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
39362         heuristic is just as accurate as far as we know, and it removes a
39363         dependency on size_max.m4 and ptrdiff_max.m4.
39364
39365 2003-11-11  Bruno Haible  <bruno@clisp.org>
39366
39367         * modules/xsize (Files): Add m4/size_max.m4.
39368         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
39369
39370 2003-11-11  Bruno Haible  <bruno@clisp.org>
39371
39372         * m4/size_max.m4: New file.
39373         * m4/ptrdiff_max.m4: New file.
39374         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
39375         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
39376         (gl_XALLOC): Invoke it.
39377
39378 2003-11-11  Bruno Haible  <bruno@clisp.org>
39379
39380         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
39381         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
39382         defined.
39383
39384 2003-11-10  Paul Eggert  <eggert@twinsun.com>
39385
39386         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
39387         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
39388         rejected some allocations of exactly SIZE_MAX - 2 bytes.
39389         From Bruno Haible.
39390         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
39391         not (size_t) -1, since it's defined here.
39392
39393 2003-11-09  Karl Berry  <karl@gnu.org>
39394
39395         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
39396
39397 2003-11-06  Paul Eggert  <eggert@twinsun.com>
39398
39399         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
39400         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
39401         Reject sizes of exactly SIZE_MAX bytes.
39402         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
39403         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
39404
39405 2003-11-05  Bruno Haible  <bruno@clisp.org>
39406
39407         * lib/xsize.h: Include limits.h, to avoid a possible collision with
39408         SIZE_MAX defined in <limits.h> on Solaris.
39409
39410 2003-11-04  Jim Meyering  <jim@meyering.net>
39411
39412         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
39413         variable names, rather than @VAR@.
39414         * modules/poll: Likewise.
39415
39416 2003-11-04  Bruno Haible  <bruno@clisp.org>
39417
39418         * modules/xsize: New file.
39419         * modules/linebreak: Depend on xsize.
39420         * MODULES.html.sh (func_all_modules): Add xsize.
39421
39422 2003-11-04  Bruno Haible  <bruno@clisp.org>
39423
39424         * m4/xsize.m4: New file.
39425
39426 2003-11-04  Bruno Haible  <bruno@clisp.org>
39427
39428         * lib/xsize.h: New file.
39429         * lib/linebreak.c: Include xsize.h.
39430         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
39431         argument for overflow.
39432         Suggested by Paul Eggert.
39433
39434 2003-11-03  Karl Berry  <karl@gnu.org>
39435
39436         * config/config.{guess,sub}: update from config.
39437
39438 2003-11-03  Jim Meyering  <jim@meyering.net>
39439
39440         * modules/userspec (lib_SOURCES): Add userspec.h.
39441         (Include): Add "userspec.h".
39442         Improve description.
39443
39444 2003-11-03  Jim Meyering  <jim@meyering.net>
39445
39446         * lib/userspec.c: Include "userspec.h".
39447         * lib/userspec.h: New file.
39448
39449 2003-11-03  Bruno Haible  <bruno@clisp.org>
39450
39451         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
39452
39453 2003-11-03  Bruno Haible  <bruno@clisp.org>
39454
39455         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
39456         available, to avoid (extremely rare) race condition.
39457         Suggested by Paul Eggert.
39458
39459 2003-11-02  Karl Berry  <karl@gnu.org>
39460
39461         * config/srclist.txt (vasprintf.c): sync broken, sigh.
39462
39463 2003-10-31  Paul Eggert  <eggert@twinsun.com>
39464
39465         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
39466         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
39467         (read_filesystem_list): Set and use me_type_malloced.
39468         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
39469         whatever the type happens to be), for brevity and consistency.
39470         Check for size calculation overflow on Alphas running OSF/1.
39471
39472 2003-10-31  Jim Meyering  <jim@meyering.net>
39473
39474         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
39475
39476         * lib/linebuffer.c: Include <string.h> for declaration of memset.
39477
39478 2003-10-30  Paul Eggert  <eggert@twinsun.com>
39479             Bruno Haible  <bruno@clisp.org>
39480
39481         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
39482         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
39483
39484 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
39485
39486         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
39487         netbsd*-gnu*.  Suggested by Robert Millan.
39488
39489 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39490
39491         * modules/group-member: Depend on stdbool.
39492
39493 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39494
39495         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
39496
39497 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39498
39499         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
39500         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
39501         after the 'gnu' in these cases.  This fixes some bugs in the
39502         previous change, and is based on suggestions by Robert Millan.
39503
39504 2003-10-29  Paul Eggert  <eggert@twinsun.com>
39505
39506         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
39507         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
39508         no longer needed.
39509         * lib/quotearg.c (quotearg_n_options): Use it.
39510         * lib/group-member.c: Include <stdbool.h>.
39511         (free_group_info): Arg is now const *; don't free arg.
39512         (get_group_info): Now returns bool and accepts struct group_info *,
39513         rather than returning a malloc'ed struct group_info *.
39514         All uses changed.  Check for overflow in internal size calculation.
39515
39516         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
39517         rather than xmalloc/xrealloc.
39518         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
39519         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
39520         conformance bug: the old code used a pointer after freeing the
39521         storage that it addressed.
39522         * lib/hash.c (hash_initialize): Simplify the code by using
39523         xalloc_oversized rather than doing it by hand.
39524         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
39525         the buffer preserved.  Use free and xmalloc instead.
39526         * lib/quotearg.c (quotearg_n_options): Likewise.
39527         Use a simpler test for size overflow.  Don't use xalloc_oversized
39528         because unsigned int might be wider than size_t (!); this suggests
39529         that we should switch from unsigned int to size_t for slot numbers.
39530
39531 2003-10-28  Paul Eggert  <eggert@twinsun.com>
39532
39533         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
39534         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
39535         NetBSD kernels.  Requested by Richard Stallman.
39536
39537 2003-10-27  Paul Eggert  <eggert@twinsun.com>
39538
39539         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
39540         to allocate the returned structure.  Do not allocate a subarray,
39541         as x2nrealloc will do that.
39542         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
39543         instead of xnrealloc.
39544         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
39545
39546 2003-10-27  Bruno Haible  <bruno@clisp.org>
39547
39548         * lib/stdbool_.h: Better support for BeOS.
39549
39550 2003-10-26  Paul Eggert  <eggert@twinsun.com>
39551
39552         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
39553         now uses inline.
39554
39555 2003-10-26  Paul Eggert  <eggert@twinsun.com>
39556
39557         * lib/xalloc.h (xalloc_oversized): New static inline function, for
39558         callers that want to do their own size-overflow checking.  Include
39559         <stdbool.h>, since xalloc_oversized returns bool.
39560         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
39561         to use xalloc_oversized.
39562
39563         Add two functions x2realloc, x2nrealloc, for programs that grow
39564         arrays dynamically by doubling their sizes.
39565         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
39566         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
39567         New functions.
39568
39569         Port to C99 semantics for 'inline' of external functions.
39570         Bug reported by Bruno Haible.
39571         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
39572         with the old contents of xnmalloc.
39573         (xnmalloc, xmalloc): Use it.
39574         (xnrealloc_inline): New static inline function,
39575         with the old contents of xnrealloc.
39576         (xnrealloc, xrealloc): Use it.
39577
39578         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
39579         that.
39580
39581 2003-10-26  Karl Berry  <karl@gnu.org>
39582
39583         * config/srclist.txt (COPYING.DOC): no longer available from
39584         /gd/gnuorg; don't know where the ultimate source is.
39585
39586 2003-10-25  Paul Eggert  <eggert@twinsun.com>
39587
39588         Fix several address-calculation bugs in the hash modules,
39589         plus some minor code cleanup.
39590
39591         * lib/hash.h: Include <stdbool.h>, for bool.
39592         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
39593         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
39594         hash_get_n_entries, hash_get_max_bucket_length,
39595         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
39596         hash_rehash): Use size_t rather than unsigned.
39597         * lib/hash.c (struct hash_table, hash_get_n_buckets,
39598         hash_get_n_buckets_used, hash_get_n_entries,
39599         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
39600         hash_get_entries, hash_do_for_each, hash_string, is_prime,
39601         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
39602         Likewise.
39603         (SIZE_MAX): Define if not defined.
39604         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
39605         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
39606         hash_print):
39607         Use const * when possible.
39608         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
39609         (check_tuning): Fix bug: if tuning parameters were very close to
39610         0 or 1, rounding errors could have caused subscript violations.
39611         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
39612         (hash_initialize): Add 'fail:' label
39613         to free table and return NULL, and use it to simplify code.
39614         Use calloc rather than clearing the storage ourself.
39615         (hash_initialize, hash_rehash): Check for arithmetic overflow in
39616         buffer size calculations.
39617         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
39618         Include <stddef.h>, for size_t.
39619         * lib/hash-pjw.c (hash_pjw): Likewise.
39620         Switch to method described by Bruno Haible.
39621         Include <limits.h>, for CHAR_BIT.
39622         (SIZE_BITS): New macro.
39623
39624 2003-10-23  Paul Eggert  <eggert@twinsun.com>
39625
39626         * m4/getline.m4 (AM_FUNC_GETLINE):
39627         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
39628         hosts.  Problem reported by Derek Robert Price in
39629         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
39630         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
39631         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
39632
39633 2003-10-21  Paul Eggert  <eggert@twinsun.com>
39634
39635         * lib/getndelim2.c (getndelim2): When size calculation overflows,
39636         ceiling the allocation at NMAX bytes rather than silently
39637         discarding input bytes before NMAX is reached.  This makes
39638         a difference only if NMAX exceeds SIZE_MAX / 2.
39639
39640         * lib/obstack.c: Merge from glibc.
39641         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
39642         Add libc_hidden_def (_obstack_newchunk).
39643         (_obstack_free) [! defined _LIBC]: Remove.
39644         [defined _LIBC]: Make a strong alias from obstack_free, rather than
39645         a clone of the function body.
39646         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
39647         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
39648
39649         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
39650         glibc.
39651         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
39652         arg to memcpy.
39653
39654         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
39655         (obstack_ptr_grow_fast, obstack_int_grow_fast):
39656         Don't use lvalue casts, as GCC plans to remove support for them
39657         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
39658         was also present in the non-GCC version, indicating that this
39659         code had always been buggy and had never been widely used.
39660         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
39661         Use the fast variant of each macro, rather than copying the
39662         definiens of the fast variant; that way, we'll be more likely to
39663         catch future bugs in the fast variants.
39664
39665 2003-10-20  Bruno Haible  <bruno@clisp.org>
39666
39667         * modules/wait-process: New file.
39668         * MODULES.html.sh (func_all_modules): Add wait-process.
39669
39670 2003-10-20  Bruno Haible  <bruno@clisp.org>
39671
39672         * m4/wait-process.m4: New file.
39673
39674 2003-10-20  Bruno Haible  <bruno@clisp.org>
39675
39676         * lib/wait-process.h: New file, from GNU gettext.
39677         * lib/wait-process.c: New file, from GNU gettext.
39678
39679 2003-10-19  Jim Meyering  <jim@meyering.net>
39680
39681         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
39682         HPUX 10.20.
39683
39684 2003-10-18  Karl Berry  <karl@gnu.org>
39685
39686         * config/config.guess: update from config.
39687
39688 2003-10-16  Paul Eggert  <eggert@twinsun.com>
39689
39690         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
39691         (getgroups): First arg is int, not size_t.
39692         Don't let 'free' mangle errno.
39693
39694 2003-10-16  Paul Eggert  <eggert@twinsun.com>
39695
39696         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
39697
39698 2003-10-16  Karl Berry  <karl@gnu.org>
39699
39700         * config/config.{guess,sub}: update from config.
39701
39702 2003-10-16  Jim Meyering  <jim@meyering.net>
39703
39704         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
39705         memcpy.
39706
39707 2003-10-15  Paul Eggert  <eggert@twinsun.com>
39708
39709         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
39710         (SIZE_MAX): Remove.
39711         (new_exclude, add_exclude_file): Initial size no longer needs to
39712         be a power of 2.
39713         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
39714         our own address arithmetic overflow checking.
39715
39716         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
39717         (fnmatch): Do not alloca more than 2000 wide characters;
39718         instead, use malloc for large buffers.
39719         Check for address arithmetic overflow, and return -1
39720         with errno set to ENOMEM in that case.
39721         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
39722         (NEW_PATTERN): Do not alloca more than 8000 bytes;
39723         instead, return -1.  Check for address arithmetic overflow.
39724
39725 2003-10-14  Paul Eggert  <eggert@twinsun.com>
39726
39727         Handle invalid suffixes and overflow independently, so that
39728         callers can treat them independently as needed.  Fix some bugs in
39729         suffix handling, e.g., "100k@" was not diagnosed as an invalid
39730         suffix for a human-readable blocksize.  The major caller-visible
39731         change is the addition of a new
39732         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
39733         that both overflow and suffix chars were found.
39734
39735         * lib/human.c (humblock): Don't check separately for invalid suffix
39736         char; that is xstrtoumax's job (now that its bug is fixed).
39737         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
39738         INTMAX_MAX]: New macros.
39739         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
39740         TYPE_MAXIMUM): New macros.
39741         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
39742         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
39743         if overflow occurs, as it's what __strtol does and it's more useful
39744         in practice.
39745         (__xstrtol): If __strtol reports some error other than ERANGE,
39746         reflect it to the caller as LONGINT_INVALID.  If it reports
39747         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
39748         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
39749         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
39750         value.
39751         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
39752         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
39753         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
39754         [defined UINTMAX_MAX]: New macros.
39755
39756 2003-10-14  Bruno Haible  <bruno@clisp.org>
39757
39758         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
39759
39760 2003-10-14  Bruno Haible  <bruno@clisp.org>
39761
39762         * m4/sig_atomic_t: New file, from GNU gettext.
39763         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
39764
39765 2003-10-14  Bruno Haible  <bruno@clisp.org>
39766
39767         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
39768         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
39769         Also use volatile where needed.
39770
39771 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39772
39773         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
39774         Change maintainer from Bruno Haible to 'all'.
39775
39776 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39777
39778         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
39779
39780 2003-10-12  Paul Eggert  <eggert@twinsun.com>
39781
39782         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
39783         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
39784         and define in terms of the other primitives.
39785         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
39786         (SIZE_MAX): Define if not already defined.
39787         (array_size_overflow): New function.
39788         (xalloc_die): Abort instead of exiting if 'error' returns.
39789         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
39790         (xmalloc, xrealloc): Use them.
39791         (xcalloc): Check for address arithmetic overflow.
39792         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
39793         a bit faster than strcpy.
39794
39795 2003-10-10  Simon Josefsson  <jas@extundo.com>
39796
39797         * modules/argp (Depends-on): Add restrict and strcase.
39798
39799 2003-10-10  Simon Josefsson  <jas@extundo.com>
39800
39801         * m4/argp.m4: Add AC_C_INLINE.
39802
39803 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39804
39805         Merge getpass from libc, plus a few fixes.
39806
39807         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
39808         Include <stdbool.h>.
39809         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
39810         __fsetlocking to empty.
39811         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
39812         do include <bits/libc-lock.h>.
39813         Do not include <fcntl.h>; not needed.
39814         [_LIBC]: Include <wchar.h>.
39815         (NOTCANCEL_MODE): New macro.
39816         (flockfile, funlockfile) [_LIBC]: New macros.
39817         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
39818         [!_LIBC]: New macros.
39819         (call_fclose): New function.
39820         (getpass): Use it.  Save tty stream separately; this simplifies the
39821         code and makes it more reliable if stdin happens to equal stdout.
39822         Invoke __fsetlocking on tty.
39823         Handle thread cancellation if needed.
39824         Namespace cleanup (use __tcgetattr, __getline).
39825         Use bool for Booleans.
39826         [USE_IN_LIBIO]: Handle wide streams.
39827         [!_LIBC]: Unconditionally do the fseek, since we don't know what
39828         stream might go where.
39829
39830         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
39831         doesn't have to include <stdio.h> before us.
39832         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
39833         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
39834         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
39835         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
39836         if not declared, so that we can use getpass.c code from libc without
39837         rewriting it.
39838         (flockfile, ftrylockfile, funlockfile): New macros.
39839
39840 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39841
39842         * modules/getpass: Depend on stdbool.
39843
39844 2003-10-08  Paul Eggert  <eggert@twinsun.com>
39845
39846         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
39847
39848 2003-10-07  Karl Berry  <karl@gnu.org>
39849
39850         * config/config.{guess,sub}: update from config.
39851
39852 2003-10-06  Jim Meyering  <jim@meyering.net>
39853             Bruno Haible  <bruno@clisp.org>
39854
39855         This lets translators provide better translations for the
39856         "Written by ..." part of --version output.
39857         * lib/version-etc.h: Include stdarg.h.
39858         (version_etc_copyright): Declare as readonly.
39859         (version_etc): Make this function variadic with a NULL-terminated list
39860         of author name strings.
39861         (version_etc_va): New declaration.
39862         * lib/version-etc.c: Include stdarg.h, stdlib.h.
39863         (version_etc_copyright): Declare as readonly.
39864         (version_etc_va): New function. Provide a different translatable string
39865         for each possible number of authors < 10. Abbreviate when there are 10
39866         authors or more.
39867         (version_etc): Make this function variadic. Call version_etc_va.
39868         Suggestion from Gary V. Vaughan.
39869
39870         * lib/long-options.h (parse_long_options): Change prototype: the
39871         authors string is moved to the end and becomes variadic.
39872         * lib/long-options.c: Include stdarg.h.
39873         (parse_long_options): Make this function variadic, too.
39874         Call version_etc_va, not version_etc.
39875
39876 2003-10-06  Bruno Haible  <bruno@clisp.org>
39877
39878         * modules/version-etc-2: Remove file.
39879         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
39880
39881 2003-10-06  Bruno Haible  <bruno@clisp.org>
39882
39883         * modules/fatal-signal: New file.
39884         * MODULES.html.sh (func_all_modules): Add fatal-signal.
39885
39886 2003-10-06  Bruno Haible  <bruno@clisp.org>
39887
39888         * m4/fatal-signal.m4: New file.
39889         * m4/signalblocking.m4: New file, from GNU gettext.
39890
39891 2003-10-06  Bruno Haible  <bruno@clisp.org>
39892
39893         * lib/version-etc-2.h: Remove file.
39894         * lib/version-etc-2.c: Remove file.
39895
39896 2003-10-06  Bruno Haible  <bruno@clisp.org>
39897
39898         * lib/fatal-signal.h: New file, from GNU gettext.
39899         * lib/fatal-signal.c: New file, from GNU gettext.
39900
39901 2003-10-05  Paul Eggert  <eggert@twinsun.com>
39902
39903         * README: Rework advice for preventing empty .o files.
39904         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
39905         not <sys/types.h>.
39906
39907 2003-10-04  Karl Berry  <karl@gnu.org>
39908
39909         * lib/argp*: update from libc.
39910
39911 2003-10-04  Karl Berry  <karl@gnu.org>
39912
39913         * config/config.{guess,sub}: update from config.
39914
39915 2003-10-02  Bruno Haible  <bruno@clisp.org>
39916
39917         * modules/lchown (Include): Add lchown.h.
39918         * modules/time_r (Include): Use "..." syntax.
39919         * modules/xgetdomainname (Include): Add xgetdomainname.h.
39920
39921 2003-10-01  Simon Josefsson  <jas@extundo.com>
39922
39923         * MODULES.html.sh (func_all_modules): Move gethostname from section
39924         'based on' to section 'lacking' POSIX:2001.
39925
39926 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
39927
39928         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
39929         to output mode on the same stream.
39930
39931 2003-09-29  Paul Eggert  <eggert@twinsun.com>
39932
39933         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
39934         Fix arg typo in previous patch.
39935
39936 2003-09-28  Jim Meyering  <jim@meyering.net>
39937
39938         * lib/error.c: Correct cpp indentation.
39939
39940 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39941
39942         * modules/free: New file.
39943
39944 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39945
39946         * m4/free.m4: New file.
39947
39948 2003-09-27  Paul Eggert  <eggert@twinsun.com>
39949
39950         * lib/minmax.h (MIN, MAX)
39951         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
39952         Omit the special code that used __typeof__, since we worry that
39953         it could be more trouble than it's worth.  See:
39954         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
39955         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
39956
39957         * lib/free.c: New file.
39958
39959 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
39960
39961         Trivial fixes to Makefile.am parts of module listings.
39962         * modules/strstr: Append strstr.h to lib_SOURCES.
39963         * modules/strcase: Likewise, for strcase.h.
39964
39965 2003-09-27  Karl Berry  <karl@gnu.org>
39966
39967         * config/mkinstalldirs: update from automake.
39968
39969 2003-09-26  Paul Eggert  <eggert@twinsun.com>
39970
39971         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
39972         (error_tail): Do not loop, reallocating temporary buffer, since
39973         the output cannot contain more wide characters than the input
39974         contains bytes, the size must be big enough already.  This avoids
39975         one potential size overflow calculation.  Check for size overflow
39976         when calculating temporary buffer size.  Free temporary buffer
39977         when done, if it was allocated with malloc; this plugs a memory
39978         leak.  Remove casts from void * to pointers, that are no longer
39979         needed now that we're assuming C89 or better.
39980
39981         Merge error changes from glibc.
39982
39983         * lib/error.c, error.h: Update copyright notice header to match glibc.
39984         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
39985         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
39986         Disable cancellation while printing error.
39987         * lib/error.h: Prepend __ to parameter names.
39988
39989 2003-09-26  Jim Meyering  <jim@meyering.net>
39990
39991         * lib/error.c (error_tail): Move some declarations
39992         into inner scope where the local variables are used.
39993
39994 2003-09-26  Bruno Haible  <bruno@clisp.org>
39995
39996         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
39997         stpncpy().
39998         Don't define stpncpy through config.h; it's now done through stpncpy.h.
39999
40000 2003-09-26  Bruno Haible  <bruno@clisp.org>
40001
40002         * lib/stpncpy.h (gnu_stpncpy): New declaration.
40003         (stpncpy): Define as alias for gnu_stpncpy.
40004         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
40005
40006 2003-09-25  Simon Josefsson  <jas@extundo.com>
40007
40008         * lib/xgetdomainname.h: New file.
40009         * lib/xgetdomainname.c: New file.
40010
40011 2003-09-25  Simon Josefsson  <jas@extundo.com>
40012             Bruno Haible  <bruno@clisp.org>
40013
40014         * modules/getdomainname: New file.
40015         * modules/xgetdomainname: New file.
40016         * MODULES.html.sh (func_all_modules): Add getdomainname,
40017         xgetdomainname.
40018
40019 2003-09-25  Simon Josefsson  <jas@extundo.com>
40020             Bruno Haible  <bruno@clisp.org>
40021
40022         * m4/getdomainname.m4: New file.
40023
40024 2003-09-25  Simon Josefsson  <jas@extundo.com>
40025             Bruno Haible  <bruno@clisp.org>
40026
40027         * lib/getdomainname.h: New file.
40028         * lib/getdomainname.c: New file.
40029
40030 2003-09-25  Karl Berry  <karl@gnu.org>
40031
40032         * lib/argp-fmtstream.c, argp-help.c: update from libc.
40033
40034 2003-09-25  Karl Berry  <karl@gnu.org>
40035
40036         * config/install-sh: update from automake.
40037
40038 2003-09-25  Bruno Haible  <bruno@clisp.org>
40039
40040         * modules/version-etc-2: New file, from modules/version-etc with
40041         modifications.
40042         * MODULES.html.sh (func_all_modules): Add version-etc-2.
40043
40044 2003-09-25  Bruno Haible  <bruno@clisp.org>
40045
40046         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
40047         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
40048
40049 2003-09-24  Simon Josefsson  <jas@extundo.com>
40050
40051         * modules/xgethostname: Add xgethostname.h.
40052
40053 2003-09-24  Paul Eggert  <eggert@twinsun.com>
40054
40055         * lib/linebuffer.c (freebuffer): Don't free the argument, just
40056         the buffer associated with the argument.  Bug reported by
40057         Simon Josefsson.
40058
40059 2003-09-24  Paul Eggert  <eggert@twinsun.com>
40060
40061         * README: Document assumptions that 'int' is at least 32 bits
40062         wide, that integer arithmetic is 2's complement without overflow,
40063         that there are no holes in integer values, that adding sizes of
40064         two nonoverlapping objects can't overflow, and that all-bits-zero
40065         yields scalar zero.  Fix spelling and capitalization typos.
40066
40067 2003-09-19  Karl Berry  <karl@gnu.org>
40068
40069         * lib/argp.h: update from libc.
40070
40071 2003-09-17  Paul Eggert  <eggert@twinsun.com>
40072
40073         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
40074         to avoid spurious warnings like "AC_RUN_IFELSE was called before
40075         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
40076
40077 2003-09-17  Paul Eggert  <eggert@twinsun.com>
40078
40079         * gnulib-tool: Use "test -h", not "test -L", for portability
40080         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
40081         (tags_regexp): Remove, since \| doesn't conform to POSIX.
40082         (sed_extract_prog): Issue s commands one-by-one, rather than
40083         using \| in one s command.
40084
40085 2003-09-16  Paul Eggert  <eggert@twinsun.com>
40086
40087         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
40088         input error, instead of returning NULL the next time we are called
40089         (and therefore losing track of errno).
40090
40091 2003-09-16  Bruno Haible  <bruno@clisp.org>
40092
40093         * gnulib-tool (func_create_testdir): Warn about duplicated
40094         dependencies.
40095
40096 2003-09-15  Paul Eggert  <eggert@twinsun.com>
40097
40098         * modules/argmatch, modules/fatal, modules/obstack,
40099         modules/xalloc, modules/xgethostname: Sort dependencies by
40100         importance, not alphabetically.
40101
40102 2003-09-15  Paul Eggert  <eggert@twinsun.com>
40103
40104         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
40105         fails, so that the caller gets the proper errno.
40106
40107         * lib/readutmp.c (read_utmp): Likewise.
40108         Check for fstat error.  Close stream and free storage
40109         when failing.
40110
40111 2003-09-14  Karl Berry  <karl@gnu.org>
40112
40113         * config/srclist.txt (strdup.c): disable for c89 changes.
40114
40115 2003-09-14  Jim Meyering  <jim@meyering.net>
40116
40117         * lib/getloadavg.c: Correct cpp indentation.
40118         * lib/strdup.c: Likewise.
40119         * lib/vasnprintf.c: Likewise.
40120
40121 2003-09-14  Bruno Haible  <bruno@clisp.org>
40122
40123         * modules/fwriteerror: New file.
40124         * MODULES.html.sh (func_all_modules): Add fwriteerror.
40125
40126 2003-09-14  Bruno Haible  <bruno@clisp.org>
40127
40128         * lib/fwriteerror.h: New file.
40129         * lib/fwriteerror.c: New file.
40130
40131 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40132
40133         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
40134         modules/xgethostname, modules/xalloc: Depend on exit.
40135
40136 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40137
40138         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
40139
40140         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
40141         and AC_MINIX, too, so that their extensions are available.
40142
40143         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
40144         This macro has been superseded by gl_BACKUPFILE.
40145
40146         More patches to assume C89 or better.
40147
40148         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
40149
40150         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
40151         unconditionally.
40152         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
40153         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
40154         Include <string.h>, <stdlib.h> unconditionally.
40155         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
40156         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
40157         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
40158         headers or for string.h.
40159         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
40160         or strtoul.
40161
40162         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
40163         headers.
40164         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
40165         * m4/userspec.m4 (gl_USERSPEC): Likewise.
40166         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
40167         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
40168         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
40169         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
40170         memcpy, memset.
40171         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
40172         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
40173         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
40174         strtol.
40175         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
40176         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
40177         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
40178         strtoul.
40179
40180 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40181
40182         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
40183         * lib/obstack.c [!defined _LIBC]: Likewise.
40184         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
40185         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
40186         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
40187
40188         More changes to assume C89 or better.
40189
40190         * lib/error.c (error_tail): Assume vprintf.
40191
40192         * lib/argmatch.c (getenv): Remove decl.
40193         * lib/progreloc.c (get_full_program_name): Define via prototype.
40194         * lib/setenv.c (clearenv): Likewise.
40195         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
40196         needed.
40197         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
40198         (malloc, memcpy): Remove decls.
40199         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
40200         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
40201         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
40202         (memcpy): Remove macro.
40203         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
40204         (__P): Remove.  All uses removed.
40205         (PTR): Remove.  All uses changed to void *.
40206         (CHAR_BIT, NULL): Remove.
40207         (spaces, zeros, memset_space, memset_zero)
40208         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
40209         Remove.
40210         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
40211         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
40212         Define with prototype.
40213         Remove now-unnecessary prototype decl.
40214         (extra_args_spec): Assume ANSI C.  All uses changed.
40215         (extra_args_spec_iso): Remove.
40216         (my_strftime, emacs_strftimeu): Define via prototype.
40217         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
40218         unconditionally.
40219         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
40220         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
40221         (strtoul, strtol): Remove decls.
40222         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
40223         LONG_MAX): Remove.
40224         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
40225         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
40226         (LOCALE_PARAM_PROTO): New macro.
40227         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
40228         (INTERNAL (strtol), strtol): Define with a prototype.
40229         (PARAMS): Remove.  All uses removed.
40230         * lib/tempname.c: Include <string.h> unconditionally.
40231         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
40232         * lib/xgethostname.c (main): Define with a prototype.
40233         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
40234         Include <stdlib.h> unconditionally.
40235         (calloc, malloc, realloc, free): Remove decls.
40236         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
40237         Include <stdlib.h> unconditionally.  Sort include file names.
40238         (strtod): Remove.
40239         (xstrtod): Define with a prototype.
40240         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
40241         (strtol, strtoul): Remove decls.
40242
40243 2003-09-11  Paul Eggert  <eggert@twinsun.com>
40244
40245         More patches to assume C89 or better.
40246         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
40247         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
40248         string.h, memchr, STDC_HEADERS.
40249
40250 2003-09-11  Paul Eggert  <eggert@twinsun.com>
40251
40252         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
40253         Include <stdlib.h>, <string.h> unconditionally.
40254         Remove now-unnecessary cast to char *.
40255         * lib/strnlen.c: Include <string.h> unconditionally.
40256         * lib/yesno.c (yesno): Define with a prototype.
40257
40258 2003-09-11  Bruno Haible  <bruno@clisp.org>
40259
40260         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
40261
40262 2003-09-10  Jim Meyering  <jim@meyering.net>
40263
40264         * lib/error.c: Correct indentation of cpp directives.
40265
40266 2003-09-10  Bruno Haible  <bruno@clisp.org>
40267
40268         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
40269         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
40270         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
40271         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
40272         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
40273         <stdlib.h> and <string.h> checks.
40274         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
40275         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
40276
40277 2003-09-10  Bruno Haible  <bruno@clisp.org>
40278
40279         * lib/strcspn.c: Include <string.h> unconditionally.
40280         * lib/strpbrk.c: Include <string.h> unconditionally.
40281         * lib/strstr.c: Include <string.h> unconditionally.
40282         * lib/unicodeio.c: Include <string.h> unconditionally.
40283         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
40284         * lib/unsetenv.c: Likewise.
40285         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
40286         * lib/yesno.c: Include <stdlib.h> unconditionally.
40287         (rpmatch): Add prototype.
40288
40289 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40290
40291         More patches to assume C89 or better.
40292         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
40293         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
40294         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
40295         or for string.h.
40296         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
40297         stdlib.h.
40298         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
40299         C headers.
40300         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
40301         string.h.
40302         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
40303         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
40304         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
40305         or for string.h.
40306         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
40307         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
40308         C headers.
40309         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
40310         memcpy.
40311         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
40312         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
40313         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
40314         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
40315         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
40316         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
40317         string.h, free.
40318         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
40319         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
40320         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
40321         C headers, or for string.h.
40322         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
40323         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
40324         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
40325         headers, memory.h, stdlib.h, string.h, strings.h.
40326         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
40327         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
40328         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
40329         strchr.
40330         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
40331         headers, memory.h, string.h.
40332         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
40333         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
40334         free.
40335         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
40336         headers.
40337         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
40338         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
40339         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
40340         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
40341         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
40342
40343 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40344
40345         More K&R removal.
40346
40347         * lib/acosl.c (main): Use a prototype.
40348         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
40349         tanl.c: Likewise.
40350
40351         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
40352
40353         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
40354         (getopt, etopt_long, getopt_long_only, _getopt_internal)
40355         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
40356         with a prototype.
40357         * lib/getopt.c (const): Remove macro.
40358         Include <string.h> unconditionally.
40359         (my_index): Remove; all uses changed to strchr.
40360         (strlen): Remove decl.
40361         (exchange): Remove forward decl; no longer needed.
40362         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
40363         Define with prototype.
40364         * lib/getopt1.c (const): Remove macro.
40365         (getopt_long, getopt_long_only, main): Define with prototype.
40366
40367         * lib/getugroups.c: Include <string.h> unconditionally.
40368
40369         * lib/getusershell.c: Include <stdlib.h> unconditionally.
40370         (getusershell, setusershell, endusershell, readname, main):
40371         Define with prototypes.
40372
40373         * lib/group-member.c: Include group-member.h first.
40374         Include <stdlib.h> unconditionally.
40375
40376         * lib/hard-locale.c: Include hard-locale.h first.
40377         Include <stdlib.h>, <string.h> unconditionally.
40378
40379         * lib/hash.c (free, malloc): Remove decls.
40380         Include <stdlib.h> unconditionally.
40381
40382         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
40383         (getenv): Do not declare.
40384
40385         * lib/idcache.c: Include <string.h> unconditionally.
40386
40387         * lib/long-options.c: Include long-options.h first, to test interface.
40388         Include <stdlib.h> unconditionally.
40389
40390         * lib/makepath.c: Include makepath.h first, to test interface.
40391         Include <stdlib.h> and <string.h> unconditionally.
40392
40393         * lib/linebuffer.c: Include <stdlib.h>.
40394         (free): Remove decl.
40395
40396         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
40397         stddef.h. rpl_malloc returns void *, not char *.
40398         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
40399         prototype.
40400
40401         * lib/md5.h: Include <limits.h> unconditionally.
40402         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
40403         (__P): Remove; all uses removed.
40404         * lib/md5.c: Include "md5.h" first.
40405         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
40406         md5_buffer, md5_process_bytes, md5_process_block):
40407         Define with prototypes.
40408         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
40409         * lib/sha.c: Include "sha.h" first.
40410         Include <stdlib.h>, <string.h> unconditionally.
40411
40412         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
40413         * lib/memcmp.c (__ptr_t): Likewise.
40414         * lib/memrchr.c (__ptr_t): Likewise.
40415         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
40416         Include <string.h> unconditionally.
40417         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
40418         * lib/memchr.c: Include <stdlib.h> unconditionally.
40419         * lib/memchr.c (LONG_MAX): Remove.
40420         * lib/memrchr.c (LONG_MAX): Likewise.
40421         * lib/memchr.c (__memchr): Define via a prototype.
40422         * lib/memrchr.c (__memrchr): Likewise.
40423         * lib/memcmp.c (__P): Remove, and remove all uses.
40424         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
40425         Remove forward decls; no longer needed.
40426         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
40427         Use types required by C89 in prototype.
40428
40429         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
40430         * lib/savedir.c: Likewise.
40431         * lib/mkdir.c (free): Remove decl.
40432         * lib/rmdir.c (rmdir): Define with a prototype.
40433         * lib/savedir.c: Include savedir.h first, to test interface.
40434
40435         * lib/mktime.c (STDC_HEADERS): Remove.
40436         Include <stdlib.h>, <string.h> unconditionally.
40437
40438         * lib/modechange.c: Include <stdlib.h> unconditionally.
40439         (malloc): Remove decl.
40440
40441         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
40442         (free): Remove decl.
40443
40444         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
40445         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
40446         (This type really should be intptr_t, but that's a C99ism.)
40447         (_obstack_memcpy): Remove: all uses changed to memcpy.
40448         Include <string.h> unconditionally.
40449         (struct obstack): Assume __STDC__ for types of members
40450         chunkfun, freefun, extra_arg.
40451         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
40452         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
40453         obstack_begin, obstack_specify_allocation,
40454         obstack_specify_allocation_with_arg, obstack_chunkfun,
40455         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
40456         Remove unprototyped decls and the macros that use them.
40457         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
40458         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
40459         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
40460         (defined __STDC__ && __STDC__)]:
40461         Remove nonprototyped code.
40462         Include <stdlib.h> unconditionally.
40463         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
40464         _obstack_allocated_p, _obstack_free, obstack_free,
40465         _obstack_memory_used, print_and_abort):
40466         Define using prototypes.
40467         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
40468         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
40469         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
40470         obstack_next_free, obstack_object_size, obstack_room) [0]:
40471         Remove unused, unprototyped code.
40472
40473         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
40474
40475         * lib/physmem.c (physmem_total, physmem_available, main): Define
40476         with prototypes.
40477
40478         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
40479         (main): Define with a prototype.
40480
40481         * lib/posixver.c (getenv): Remove decl.
40482
40483         * lib/putenv.c (malloc): Returns void *, not char *.
40484         Include <string.h> unconditionally.
40485         (strchr, memcpy, NULL): Do not define.
40486
40487         * lib/readtokens.c: Include readtokens.h first, to test interface.
40488         Include <stdlib.h>, <string.h> unconditionally.
40489         (init_tokenbuffer): Define with a prototype.
40490
40491         * lib/regex.c (PARAMS): Remove.  All uses removed.
40492         All uses of _RE_ARGS removed, too.
40493         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
40494         unconditionally.
40495         (bzero): Assume memset exists.
40496         (memcmp, memcpy, NULL): Remove.
40497         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
40498         char, or assignments to local vars of type signed char.
40499         (init_syntax_once, PREFIX(extract_number_and_incr),
40500         PREFIX(print_partial_compiled_pattern),
40501         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
40502         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
40503         PREFIX(regex_grow_registers), PREFIX(regex_compile),
40504         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
40505         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
40506         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
40507         wcs_compile_range, byte_compile_range, truncate_wchar,
40508         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
40509         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
40510         count_mbs_length, wcs_re_match_2_internal,
40511         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
40512         PREFIX(alt_match_null_string_p),
40513         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
40514         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
40515         regfree, PREFIX(extract_number)): Define with prototype.  Remove
40516         now-unnecessary declaration, if any.
40517         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
40518         regcomp, regexec):
40519         Remove now-unnecessary casts among pointer types.
40520         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
40521
40522         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
40523         (free): Remove decl.
40524
40525         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
40526
40527         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
40528         (free): Remove decl.
40529
40530         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
40531         * lib/xgetcwd.c: Likewise.
40532
40533         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
40534         (free): Remove decl.
40535
40536         * lib/strchrnul.c (strchrnul): Define with a prototype.
40537         Fix bug: c_in was not converted to char before searching.
40538
40539         The following changes are not K&R related:
40540
40541         * lib/group-member.h: Include <sys/types.h>, so that this file is
40542         self-contained.
40543         * lib/makepath.h: Likewise.
40544
40545         * lib/getusershell.c (readname, default_index, line_size, readname):
40546         Use size_t, not int, for sizes.
40547         (readname): If the size overflows, report an error instead of
40548         looping forever.
40549
40550 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40551
40552         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
40553         libc.
40554
40555 2003-09-09  Paul Eggert  <eggert@twinsun.com>
40556
40557         * README: New section: portability guidelines.
40558
40559 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
40560
40561         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
40562         C89 spec.
40563
40564 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
40565
40566         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
40567
40568 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40569
40570         Assume C89 or better; remove K&R cruft.
40571         A few of these changes were first proposed by Derek Robert Price
40572         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
40573
40574         * lib/addext.c: Include <string.h> unconditionally.
40575         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
40576         Don't declare getenv or malloc.
40577
40578         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
40579         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
40580         (NULL): Remove.
40581         (find_stack_direction, alloca): Use prototypes.
40582
40583         * lib/atexit.c (atexit): Define using a prototype.
40584
40585         * lib/basename.c, dirname.c, stripslash.c:
40586         Include <string.h> unconditionally.
40587
40588         * lib/bcopy.c: Include <stddef.h>.
40589         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
40590
40591         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
40592
40593         * lib/error.h (error, error_at_line, error_print_progname)
40594         [! (defined (__STDC__) && __STDC__)]: Remove decls.
40595         * lib/error.c: Include error.h first, to check interface.
40596         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
40597         (VA_START): Remove; all uses changeed to va_start.
40598         (exit, strerror): Remove decls.
40599         (error_print_progname): Prototype uncondionally.
40600         Don't include <errno.h>; no longer needed.
40601         (private_strerror): Remove.
40602         (error_tail): Always define.
40603         (error, error_at_line): Assume C89 or better; always use prototypes.
40604         * lib/fatal.c: Include "fatal.h" first, to test interface.
40605         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
40606         (VA_START): Remove; all uses changed to va_start.
40607         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
40608         this case.
40609         (exit): Remove decl.
40610         (fatal): Prototype unconditionally.  Assume va_start works.
40611         Abort at end, to pacify gcc.
40612
40613         * lib/euidaccess.c (main): Define with a prototype.
40614
40615         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
40616
40617         * lib/exitfail.c: Include <stdlib.h> unconditionally.
40618
40619         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
40620         prototypes.
40621         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
40622         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
40623         (getenv): Remove decl.
40624         (fnmatch): Define using a prototype.
40625         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
40626         (FCT): Define using a prototype.
40627
40628         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
40629
40630         * lib/gethostname.c: Include <stddef.h>.
40631         (gethostname): Define with prototype.  Length is size_t, not int.
40632
40633 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40634
40635         Assume C89 or better; remove K&R cruft.
40636         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
40637         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
40638         string.h, getenv, malloc.
40639         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
40640         headers.
40641         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
40642         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
40643         do not check for strerror.
40644         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
40645         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
40646         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
40647         do not check for doprnt or vprintf.
40648         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
40649         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
40650
40651 2003-09-08  Paul Eggert  <eggert@twinsun.com>
40652
40653         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
40654         getversion.c should have been removed then, but was accidentally
40655         preserved.
40656
40657         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
40658         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
40659
40660 2003-09-08  Karl Berry  <karl@gnu.org>
40661
40662         * config/config.sub, config.guess, srclistvars.sh: update from savannah
40663                 config, forget about prep.
40664
40665         * config/depcomp, missing: update from automake.
40666
40667 2003-09-07  Paul Eggert  <eggert@twinsun.com>
40668
40669         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
40670         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
40671
40672 2003-09-07  Paul Eggert  <eggert@twinsun.com>
40673
40674         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
40675         copy_tm_result.  Bug reported by Simon Josefsson in
40676         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
40677
40678 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40679
40680         * m4/time_r.m4: New file.
40681         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
40682         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
40683         is. Check for timegm declaration.
40684         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
40685         Do not check for gmtime_r.
40686         Replace mktime if __mktime_internal does not exist and if mktime
40687         hasn't been replaced already.
40688
40689 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40690
40691         * lib/time_r.c, lib/time_r.h: New files.
40692
40693         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
40694         __localtime_r.
40695         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
40696         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
40697
40698         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
40699         __gmtime_r.
40700         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
40701         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
40702         Include <time_r.h>.
40703
40704         * lib/timegm.c: Switch to glibc implementation, with the following
40705         changes:
40706         [defined HAVE_CONFIG_H]: Include <config.h>.
40707         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
40708         (__mktime_internal) [!defined _LIBC]: New decl.
40709         (__gmtime_r) [!defined _LIBC]: New macro and function.
40710         (timegm): Use a prototype, since gnulib assumes C89.
40711         Do not bother declaring tmp to be const, as it's not really usefu.
40712         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
40713         (timegm): Declare only if HAVE_DECL_TIMEGM.
40714
40715 2003-09-06  Paul Eggert  <eggert@twinsun.com>
40716
40717         * MODULES.html.sh (func_all_modules): Add time_r.
40718         * modules/time_r: New file.
40719         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
40720         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
40721
40722 2003-09-03  Paul Eggert  <eggert@twinsun.com>
40723
40724         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
40725         Bug reported by Lute Kamstra in
40726         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
40727
40728         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
40729         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
40730         course with correspondingly smaller numbers for tomorrow and
40731         yesterday.  From Tadayoshi Funaba.  Originally installed into
40732         sh-utils on 1999-08-07, but the patch got lost (I guess during the
40733         coreutils merge?).
40734
40735 2003-08-31  Simon Josefsson  <jas@extundo.com>
40736
40737         * modules/timegm: New file.
40738         * MODULES.html.sh (func_all_modules): Add timegm.
40739
40740 2003-08-31  Simon Josefsson  <jas@extundo.com>
40741
40742         * m4/timegm.m4: New file.
40743
40744 2003-08-31  Simon Josefsson  <jas@extundo.com>
40745
40746         * lib/timegm.h: New file.
40747         * lib/timegm.c: New file.  Based on
40748         wget-1.8.2/src/http.c:mktime_from_utc.
40749
40750 2003-08-31  Karl Berry  <karl@gnu.org>
40751
40752         * lib/argp.h: update from libc.
40753
40754 2003-08-28  Bruno Haible  <bruno@clisp.org>
40755
40756         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
40757         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
40758         followed by '#define fnmatch fnmatch_posix' gives an error.
40759
40760 2003-08-28  Bruno Haible  <bruno@clisp.org>
40761
40762         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
40763         warning on QNX, which defines O_BINARY to 000000.
40764
40765 2003-08-27  Jim Meyering  <jim@meyering.net>
40766
40767         * m4/mkstemp.m4: Require that the system mkstemp be able to create
40768         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
40769         would fail after 32.  Reported by Danny Levinson.  Details here:
40770         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
40771
40772 2003-08-24  Bruno Haible  <bruno@clisp.org>
40773
40774         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
40775         MSVC7 <stdio.h> is included later.
40776
40777 2003-08-22  Simon Josefsson  <jas@extundo.com>
40778
40779         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
40780
40781 2003-08-20  Karl Berry  <karl@gnu.org>
40782
40783         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
40784
40785 2003-08-20  Bruno Haible  <bruno@clisp.org>
40786
40787         * modules/progname: New file.
40788         * MODULES.html.sh (func_all_modules): Add progname.
40789
40790 2003-08-20  Bruno Haible  <bruno@clisp.org>
40791
40792         * lib/progname.h: New file, from GNU gettext.
40793         * lib/progname.c: New file, from GNU gettext.
40794         * lib/progreloc.c: New file, from GNU gettext.
40795
40796 2003-08-19  Jim Meyering  <jim@meyering.net>
40797
40798         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
40799         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
40800
40801 2003-08-19  Bruno Haible  <bruno@clisp.org>
40802
40803         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
40804         more.
40805
40806 2003-08-19  Bruno Haible  <bruno@clisp.org>
40807
40808         * lib/xstrdup.c: Assume <string.h> exists.
40809
40810 2003-08-18  Paul Eggert  <eggert@twinsun.com>
40811
40812         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
40813         in makefile rules.
40814
40815 2003-08-18  Jim Meyering  <jim@meyering.net>
40816
40817         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
40818         * m4/lib-ld.m4: Likewise.
40819
40820 2003-08-18  Jim Meyering  <jim@meyering.net>
40821
40822         * lib/setenv.h: Indent nested cpp directive.
40823         * lib/vasnprintf.c: Remove trailing blanks.
40824
40825 2003-08-17  Simon Josefsson  <jas@extundo.com>
40826
40827         * modules/xstrndup: New file.
40828         * MODULES.html.sh (func_all_modules): Add xstrndup.
40829
40830 2003-08-17  Simon Josefsson  <jas@extundo.com>
40831
40832         * modules/argp: Fix autoconf macro name. Add more dependencies.
40833
40834 2003-08-17  Simon Josefsson  <jas@extundo.com>
40835
40836         * m4/xstrndup.m4: New file.
40837
40838 2003-08-17  Simon Josefsson  <jas@extundo.com>
40839
40840         * m4/argp.m4: New file.
40841
40842 2003-08-17  Simon Josefsson  <jas@extundo.com>
40843             Bruno Haible  <bruno@clisp.org>
40844
40845         * lib/xstrndup.h: New file.
40846         * lib/xstrndup.c: New file.
40847
40848 2003-08-17  Bruno Haible  <bruno@clisp.org>
40849
40850         * modules/strndup (Files, Include): Add lib/strndup.h.
40851
40852 2003-08-17  Bruno Haible  <bruno@clisp.org>
40853
40854         * modules/euidaccess (Files): Add lib/euidaccess.h.
40855
40856 2003-08-17  Bruno Haible  <bruno@clisp.org>
40857
40858         * lib/strndup.h: New file.
40859
40860 2003-08-17  Bruno Haible  <bruno@clisp.org>
40861
40862         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
40863         like AC_GNU_SOURCE.
40864         * modules/extensions (configure.ac): Comment out the invocation of
40865         gl_USE_SYSTEM_EXTENSIONS.
40866
40867 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40868
40869         Merges from coreutils, etc.
40870         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
40871         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
40872         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
40873         fixing a typo.
40874         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
40875         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
40876
40877 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40878
40879         Document merge from coreutils.
40880         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
40881         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
40882         * modules/utime: Add m4/utimes-null.m4.
40883
40884 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40885
40886         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
40887         space, undoing this 2003-08-12 change:
40888         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
40889
40890 2003-08-16  Paul Eggert  <eggert@twinsun.com>
40891
40892         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
40893         strtoul.c from libc, undoing this 2003-08-12 change:
40894         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
40895
40896 2003-08-16  Jim Meyering  <jim@meyering.net>
40897
40898         Merges from coreutils.
40899         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
40900         prefix.  Adjust cache variables similarly.  Create 500 rather than
40901         just 300 files, to exercise bug on Darwin6.5, too.
40902         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
40903         $missing_dir.
40904         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
40905         AM_SYS_POSIX_TERMIOS.
40906         Reported by mkc@mathdogs.com.
40907         Also change use of $am_cv_sys_posix_termios
40908         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
40909         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
40910         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
40911         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
40912         in /proc/mounts until it finds one with matching device number.  This
40913         is unnecessary when the FILE argument *is* a mount point.  No stat call
40914         is necessary in that case.  So, disable the statvfs-testing code on
40915         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
40916         as RedHat bug# 84846.
40917         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
40918         to 1MB, so as not to render systems with no stack size limit (e.g.,
40919         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
40920         Include <unistd.h>.  On some systems,
40921         it is required for the definition of _SC_PAGESIZE.
40922
40923 2003-08-16  Jim Meyering  <jim@meyering.net>
40924
40925         Merge from coreutils.
40926         * lib/xstrtoimax.c: #else #if -> #elif.
40927         * lib/xstrtoumax.c: Likewise.
40928
40929 2003-08-16  Jim Meyering  <jim@meyering.net>
40930
40931         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
40932         * m4/utimes.m4: Removed.
40933         * m4/utimes-null.m4: Renamed from utimes.m4.
40934
40935         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
40936         to 1MB, so as not to render systems with no stack size limit (e.g.,
40937         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
40938         Include <unistd.h>.  On some systems,
40939         it is required for the definition of _SC_PAGESIZE.
40940
40941 2003-08-16  Jim Meyering  <jim@meyering.net>
40942         and Paul Eggert  <eggert@cs.ucla.edu>
40943
40944         Merges from coreutils, etc.
40945
40946         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
40947         using the latest version from cvs.  This avoids problems with #line
40948         directives using a vendor (Sun) compiler.
40949         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
40950         Don't set GETGROUPS_LIB here; now it's
40951         done via getgroups.m4's wrapper function.
40952         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
40953         rather than just in sh-util/configure.in, so that the
40954         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
40955         same.
40956         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
40957         AC_FUNC_GETLOADAVG where to find getloadavg.c.
40958         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
40959         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
40960         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
40961         Remove code that is now done by the newly-required macros.
40962         Append $(EXEEXT) to DF_PROG.
40963         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
40964         Do not invoke or require the following here,
40965         since prereq.m4 or some gnulib .m4 now does this for us:
40966         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
40967         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
40968         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
40969         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
40970         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
40971         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
40972         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
40973         AC_FUNC_OBSTACK.
40974         Do not replace the following functions, as this is now the job
40975         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
40976         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
40977         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
40978         atexit getpass, strdup, getpagesize.
40979         Replace 'raise'.
40980         Do not check for the following functions, as this is now the job
40981         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
40982         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
40983         setregid.
40984         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
40985         Check for sys/sysctl.h.
40986         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
40987         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
40988         of checking for ssize_t ourselves.
40989
40990         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
40991         Require every macro that gnulib/modules/* suggests for us.
40992         (jm_PREREQ_ADDEXT): New macro.
40993         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
40994         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
40995
40996         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
40997         (gl_PHYSMEM): Use it.
40998         Also check for `table' function.
40999         Check for new headers and functions.
41000         Add check for sys/sysmp.h.
41001         With suggestions from Kaveh Ghazi.
41002         Ignore headers that are present but cannot be compiled.  This
41003         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
41004         C 5.4.
41005
41006 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41007
41008         Document merge from coreutils.
41009         * modules/userspec: Depend on posixver.
41010         * modules/strftime: Depend on tzset.
41011
41012 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41013
41014         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
41015         rather than tab, after '#' in shell-script copyright notices.
41016         Suggested by Bruno Haible.
41017
41018 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41019
41020         * config/srclist-update: Use three spaces, rather than tab, after '#'
41021         in shell-script copyright notices.  Suggested by Bruno Haible.
41022         Remove unnecessary parenthesization in regular expression.
41023
41024 2003-08-15  Jim Meyering  <jim@meyering.net>
41025
41026         Merge from coreutils.
41027         * lib/xgethostname.c: Include <stdlib.h>.
41028         (xghostname): Don't exit for anything other than memory-related
41029         failure; just return NULL.
41030         * lib/userspec.c: Include "posixver.h".
41031         (parse_user_spec): Accept `.' as a separator only
41032         in pre-POSIX-200112 mode.
41033         * lib/strtoimax.c: Use #elif rather than #else #if.
41034         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
41035         Remove function, now that we can rely on a working tzset function.
41036         [!_LIBC]: Ensure that the required autoconf test has been run.
41037         [!defined _NL_CURRENT && HAVE_STRFTIME]:
41038         Use underlying_strftime for %r.
41039         * lib/sha.c: Merge in some clean-up and optimization changes from
41040         glibc.
41041         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
41042         Ensure that it is a multiple of 64.
41043         Rearrange loop exit tests so as to avoid performing an
41044         additional fread after encountering an error or EOF.
41045         * lib/realloc.c: Update copyright date.
41046
41047 2003-08-15  Jim Meyering  <jim@meyering.net>
41048         and Paul Eggert  <eggert@twinsun.com>
41049
41050         Merge from coreutils.
41051         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
41052         member but strut utmpx does not.  Needed for AIX 4.3.3.
41053         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
41054
41055 2003-08-15  Jim Meyering  <jim@meyering.net>
41056         and Paul Eggert  <eggert@cs.ucla.edu>
41057
41058         Merges from coreutils, etc.
41059         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
41060         Require gl_FUNC_TZSET_CLOBBER.
41061         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
41062         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
41063         members.
41064
41065 2003-08-14  Paul Eggert  <eggert@twinsun.com>
41066
41067         Help the merge from coreutils.
41068         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
41069         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
41070         * m4/tzset.m4: Use it too.
41071
41072 2003-08-14  Paul Eggert  <eggert@twinsun.com>
41073
41074         * modules/tzset: New file.
41075
41076 2003-08-14  Jim Meyering  <jim@meyering.net>
41077
41078         Merges from coreutils.
41079         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
41080         variable names, rather than @FNMATCH_H@.
41081         * modules/alloca: Likewise for $(ALLOCA_H).
41082
41083         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
41084         the three copies of the literal target, `fnmatch.h'.
41085         * modules/alloca (alloca.h): Likewise.
41086
41087 2003-08-14  Jim Meyering  <jim@meyering.net>
41088
41089         Merge from coreutils.
41090         * m4/tzset.m4: New file.
41091         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
41092         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
41093         otherwise, AIX 5.1 systems would end up using the latter.
41094         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
41095         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
41096         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
41097         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
41098
41099 2003-08-14  Jim Meyering  <jim@meyering.net>
41100
41101         Merge from coreutils.
41102         * lib/obstack.h: Whitespace changes.
41103         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
41104         and xcalloc return values.
41105         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
41106         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
41107         hang on OSF/1 5.1 for DIR on both local and remote file systems.
41108         Reported by (and fix confirmed by) Nelson H. F. Beebe.
41109         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
41110         error from mntctl.
41111         Use mntctl's return value to drive the entry-processing loop, since
41112         we can't rely on the value of the vmt_length member in the last
41113         entry.  On some systems doing so could result in exhausting
41114         virtual memory.  Based in part on a patch from Mike Jetzer.
41115
41116 2003-08-14  Jim Meyering  <jim@meyering.net>
41117         and Paul Eggert  <eggert@twinsun.com>
41118
41119         Merges from coreutils, plus other fixes.
41120         * lib/physmem.c: Merge in portability changes from gcc/libiberty
41121         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
41122         for credits and details.  Thanks to Kaveh Ghazi for helping
41123         to keep these files in sync.
41124         (ARRAY_SIZE): Define it.
41125         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
41126         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
41127         (memcasecmp): Don't assume size_t fits in unsigned int.
41128         Remove casts and duplicate code.
41129         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
41130         (memcpy): Remove definition.
41131         Merge in some clean-up and optimization changes from glibc.
41132         [BLOCKSIZE]: Move definition to top of file.
41133         Ensure that it is a multiple of 64.
41134         Rearrange loop exit tests so as to avoid performing an
41135         additional fread after encountering an error or EOF.
41136         * lib/md5.h (md5_uintptr): Define.
41137         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
41138         return to the initial working directory.  Preserve errno
41139         for caller.
41140         * lib/idcache.c: Include "xalloc.h".
41141         (xmalloc, xrealloc): Remove decls.
41142         (getuser): Remove casts no longer required in C89.
41143         * lib/human.c: Include stdio.h, for sprintf.
41144         * lib/group-member.c: Include "xalloc.h".
41145         (xmalloc, xrealloc): Remove decls.
41146         (get_group_info): Remove casts no longer required in C89.
41147         * lib/getusershell.c (readname): Remove casts no longer required in
41148         C89.
41149         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
41150         * lib/getline.c: Whitespace fix, from coreutils.
41151
41152 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41153
41154         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
41155         Check for isascii.
41156
41157         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
41158         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
41159         Undo previous (whitespace-only) change.
41160
41161 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41162
41163         * lib/exclude.c: Include <ctype.h>
41164         (IN_CTYPE_DOMAIN): New macro.
41165         (is_space): New fn.
41166         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
41167         and empty lines.
41168
41169         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
41170         Undo previous (whitespace-only) change.
41171
41172 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41173
41174         * config/srclist-update: Change update back to the old behavior,
41175         leaving whitespace alone.  Use one 'sed' command rather than a
41176         pipeline.
41177         (fixlicense): Now a variable, not a function.
41178         (remove_trailing_blanks): Remove.
41179         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
41180         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
41181         Undo previous (whitespace-only) change.
41182
41183 2003-08-12  Paul Eggert  <eggert@twinsun.com>
41184
41185         Merge from coreutils.
41186         * modules/euidaccess: Add lib_SOURCES, include for new
41187         file euidaccess.h
41188
41189 2003-08-12  Paul Eggert  <eggert@twinsun.com>
41190
41191         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
41192         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
41193         Normalize leading white space and remove trailing white space.
41194
41195         Merge from coreutils
41196         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
41197
41198         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
41199         0.12.1.  These files are now being upgraded automatically by
41200         ../config/srclist-update.
41201
41202 2003-08-12  Paul Eggert  <eggert@twinsun.com>
41203
41204         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
41205         Normalize leading white space and remove trailing white space.
41206         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
41207         notice, as per ../config/srclist-update.
41208
41209         Merge from coreutils.
41210         * lib/euidaccess.h: New file.
41211         * lib/euidaccess.c: Include it.
41212         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
41213         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
41214         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
41215
41216 2003-08-12  Paul Eggert  <eggert@twinsun.com>
41217
41218         * config/srclist-update: Add copyright notice.
41219         (remove_id_lines, remove_trailing_blanks): New constants.
41220         (fixfile): Use them to normalize spacing a bit in copied files.
41221         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
41222         Normalize leading white space and remove trailing white space.
41223
41224         * config/texinfo.tex: Sync with texinfo.
41225
41226         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
41227         strtoul.c from libc, to merge coreutils whitespace changes.
41228
41229         * config/srclist.txt: Get the following m4 files from gettext:
41230         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
41231         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
41232         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
41233         wint_t.m4.
41234
41235 2003-08-12  Karl Berry  <karl@gnu.org>
41236
41237         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
41238         been made.
41239
41240 2003-08-11  Paul Eggert  <eggert@twinsun.com>
41241
41242         * modules/gnu-source, m4/gnu-source.m4:
41243         Remove; we're assuming Autoconf 2.54 or later now.
41244         Suggested by Bruno Haible.
41245         * MODULES.html.sh (func_all_modules): Remove gnu-source.
41246
41247 2003-08-11  Bruno Haible  <bruno@clisp.org>
41248
41249         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
41250
41251 2003-08-11  Bruno Haible  <bruno@clisp.org>
41252
41253         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
41254         (vasnprintf): Use it instead of wcslen.
41255
41256 2003-08-11  Bruno Haible  <bruno@clisp.org>
41257
41258         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
41259         value to ensure that _Bool promotes to int. Use #define for _Bool when
41260         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
41261
41262 2003-08-10  Karl Berry  <karl@gnu.org>
41263
41264         * lib/regex.h: update from libc (whitespace fix).
41265
41266 2003-08-09  Paul Eggert  <eggert@twinsun.com>
41267
41268         Merge some files from coreutils.  These changes were
41269         originally made by Jim Meyering.
41270         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
41271         many older Unixes require this.
41272         * lib/alloca.c (alloca): Remove cast to argument of free;
41273         no longer needed in C89.
41274         * lib/alloca_.h, regex.h: Fix white space to match
41275         what GNU indent does.
41276
41277 2003-08-09  Paul Eggert  <eggert@twinsun.com>
41278
41279         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
41280         apparently Emacs's Unicode mode got confused before my 2003-08-05
41281         checkin.
41282
41283 2003-08-08  Paul Eggert  <eggert@twinsun.com>
41284
41285         * m4/extensions.m4: New file.
41286         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
41287         Require gl_USE_SYSTEM_EXTENSIONS.
41288         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
41289         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
41290
41291 2003-08-08  Paul Eggert  <eggert@twinsun.com>
41292
41293         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
41294         * modules/extensions, modules/gnu-source: New files.
41295         * modules/timespec, modules/unlocked-io: Depend on extensions.
41296
41297 2003-08-07  Paul Eggert  <eggert@twinsun.com>
41298
41299         * modules/restrict: New file.
41300         * MODULES.html.sh (func_all_modules): Add restrict.
41301         * modules/regex: Depend on restrict.
41302
41303 2003-08-07  Paul Eggert  <eggert@twinsun.com>
41304
41305         * m4/restrict.m4: New file.
41306         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
41307
41308 2003-08-07  Bruno Haible  <bruno@clisp.org>
41309
41310         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
41311         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
41312
41313 2003-08-07  Bruno Haible  <bruno@clisp.org>
41314
41315         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
41316         makes the module 'getndelim2' compatible with the module 'getline'.
41317
41318 2003-08-05  Paul Eggert  <eggert@twinsun.com>
41319
41320         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
41321         byte with "\201" to avoid glitches when editing that source file
41322         with multi-gnome-terminal.
41323
41324 2003-08-05  Paul Eggert  <eggert@twinsun.com>
41325
41326         * lib/bumpalloc.h: Remove.
41327
41328 2003-08-05  Paul Eggert  <eggert@twinsun.com>
41329
41330         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
41331         * modules/bumpalloc: Remove.
41332
41333 2003-08-04  Paul Eggert  <eggert@twinsun.com>
41334
41335         * lib/getloadavg.c: Change copyright notice and spacing to conform to
41336         GNU coding style.
41337
41338         Merge from coreutils.
41339         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
41340         1. From glibc.
41341         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
41342         from Karl Berry, implemented by Jim Meyering.
41343         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
41344         from Dmitry V. Levin.
41345         Remove anachronistic cast of xrealloc.
41346         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
41347         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
41348         type. Otherwise, it wouldn't compile with at least /bin/cc on
41349         ymp-cray-unicos9.0.2.X.
41350         Combine two mostly-identical uses of alloca into one.
41351         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
41352
41353 2003-08-04  Dave Love  <d.love@dl.ac.uk>
41354
41355         [From Emacs.]
41356
41357         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
41358         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
41359         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
41360         obsolete NLIST_NAME_UNION.
41361         [__GNU__]: Undef BSD and FSCALE.
41362         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
41363
41364 2003-08-03  Paul Eggert  <eggert@twinsun.com>
41365
41366         * lib/stdbool_.h (_Bool): Make it signed char, instead of
41367         an enum type, so that it's guaranteed to promote to int.  See:
41368         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
41369
41370 2003-08-03  Karl Berry  <karl@gnu.org>
41371
41372         * config/depcomp: update from automake.
41373
41374 2003-07-31  Paul Eggert  <eggert@twinsun.com>
41375
41376         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
41377         (strerror): Don't assume that a printable int fits in 14 bytes.
41378
41379 2003-07-31  Bruno Haible  <bruno@clisp.org>
41380
41381         * modules/getpass-gnu: New file.
41382         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
41383
41384 2003-07-31  Bruno Haible  <bruno@clisp.org>
41385
41386         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
41387
41388 2003-07-24  Karl Berry  <karl@gnu.org>
41389
41390         * config/missing: update from automake.
41391
41392 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
41393             Bruno Haible  <bruno@clisp.org>
41394
41395         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
41396         * lib/getline.c (getline, getdelim): Likewise.
41397         Remove _GNU_SOURCE define; now it's defined in config.h through
41398         m4/getline.m4.
41399
41400 2003-07-23  Karl Berry  <karl@gnu.org>
41401
41402         * config/config.sub: update from prep.
41403
41404 2003-07-22  Paul Eggert  <eggert@twinsun.com>
41405
41406         * modules/xalloc (Depends-on): Add exitfail.
41407         * modules/xmemcoll: Likewise.
41408
41409 2003-07-22  Paul Eggert  <eggert@twinsun.com>
41410
41411         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
41412         over-parenthesization in macros.
41413
41414         Sync with coreutils.
41415
41416         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
41417         required by C99.
41418
41419         Use `exit_failure' for xalloc and xmemcoll instead of their own
41420         private exit-failure variables.
41421         * lib/xalloc.h (xalloc_exit_failure): Remove.
41422         * lib/xmalloc.c: Likewise.  Include exitfail.h.
41423         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
41424         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
41425         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
41426         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
41427
41428 2003-07-20  Jim Meyering  <jim@meyering.net>
41429
41430         * modules/closeout (Depends-on): Add exitfail.
41431         Suggestion from Bruno Haible.
41432
41433 2003-07-19  Karl Berry  <karl@gnu.org>
41434
41435         * config/config.sub: update from prep.
41436
41437 2003-07-18  Paul Eggert  <eggert@twinsun.com>
41438
41439         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
41440         Remove.
41441         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
41442         to test that it can stand by itself.  Include "exitfail.h".
41443         Clients should set exit_failure instead.
41444         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
41445
41446 2003-07-18  Bruno Haible  <bruno@clisp.org>
41447
41448         * modules/getndelim2: New file.
41449         * modules/getline: Share files with module getndelim2.
41450         * modules/getnline: Depend on getndelim2 instead of sharing files with
41451         it. Add getnline.c to lib_SOURCES.
41452         * MODULES.html.sh (func_all_modules): Add getndelim2.
41453
41454 2003-07-18  Bruno Haible  <bruno@clisp.org>
41455
41456         * m4/getndelim2.m4: New file.
41457         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
41458         invoke gl_PREREQ_GETNDELIM2.
41459         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
41460         gl_PREREQ_GETNDELIM2.
41461         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
41462         gl_GETNDELIM2.
41463
41464 2003-07-18  Bruno Haible  <bruno@clisp.org>
41465
41466         * lib/getndelim2.h: New file.
41467         * lib/getndelim2.c: Make into a module of its own. Include config.h,
41468         getndelim2.h.
41469         (getndelim2): Make non-static. Change return type to ssize_t.
41470         * lib/getline.h: Change argument names.
41471         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
41472         * lib/getnline.c: Include getndelim2.h.
41473
41474 2003-07-18  Andreas Schwab  <schwab@suse.de>
41475
41476         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
41477
41478 2003-07-17  Karl Berry  <karl@gnu.org>
41479
41480         * config/config.sub: update from prep.
41481
41482 2003-07-17  Bruno Haible  <bruno@clisp.org>
41483
41484         * modules/getnline: New file.
41485         * modules/getline: Add lib/getndelim2.c to source file list.
41486         * MODULES.html.sh (func_all_modules): Add getnline.
41487
41488 2003-07-17  Bruno Haible  <bruno@clisp.org>
41489
41490         * m4/getnline.m4: New file.
41491
41492 2003-07-17  Bruno Haible  <bruno@clisp.org>
41493
41494         * m4/Makefile.am.in: Remove file.
41495         * m4/Makefile.am: Remove file.
41496         * m4/Makefile.in: Remove file.
41497
41498 2003-07-17  Bruno Haible  <bruno@clisp.org>
41499
41500         * lib/getnline.h: New file.
41501         * lib/getnline.c: New file.
41502         * lib/getndelim2.c: New file, extracted from getline.c.
41503         (getndelim2): Renamed from getdelim2, with added nmax argument.
41504         * lib/getline.c: Include getndelim2.c.
41505         (getdelim2): Moved out to getndelim2.c.
41506         (getline, getdelim): Update.
41507
41508 2003-07-17  Bruno Haible  <bruno@clisp.org>
41509
41510         * lib/Makefile.am: Remove file.
41511         * lib/Makefile.in: Remove file.
41512
41513 2003-07-17  Bruno Haible  <bruno@clisp.org>
41514
41515         * configure.in: Remove file.
41516         * Makefile.in: Remove file.
41517
41518 2003-07-17  Bruno Haible  <bruno@clisp.org>
41519
41520         * MODULES.html.sh: Put the </BODY> right before </HTML>.
41521
41522 2003-07-16  Karl Berry  <karl@gnu.org>
41523
41524         * config/srclist-update: was running fixlicense twice, which caused
41525                 texinfo.tex to be nullified for some reason.  Simplify,
41526                 $gplsrc is no longer needed as far as I can see?
41527
41528 2003-07-16  Jim Meyering  <jim@meyering.net>
41529
41530         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
41531
41532 2003-07-15  Paul Eggert  <eggert@twinsun.com>
41533
41534         * config/srclist.txt: Get the following files from gettext-runtime/intl
41535         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
41536         ref-del.sin.  From Bruno Haible.
41537         * config/srclist-update (fixfile): Change grep pattern again, since the
41538         previous fix didn't work (there was another trailing $).  Use
41539         '[$]' to escape the $s.
41540
41541 2003-07-15  Karl Berry  <karl@gnu.org>
41542
41543         * lib/vasnprintf.c: update from gettext.
41544
41545 2003-07-15  Karl Berry  <karl@gnu.org>
41546
41547         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
41548         gets expanded when surrounded by '$'.
41549
41550 2003-07-15  Jim Meyering  <jim@meyering.net>
41551
41552         * modules/save-cwd: Don't depend on error.  From Derek Price.
41553
41554 2003-07-15  Jim Meyering  <jim@meyering.net>
41555
41556         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
41557
41558 2003-07-14  Simon Josefsson  <jas@extundo.com>
41559
41560         * modules/mempcpy: New file.
41561         * MODULES.html.sh (func_all_modules): Add mempcpy.
41562
41563 2003-07-14  Simon Josefsson  <jas@extundo.com>
41564
41565         * m4/mempcpy.m4: New file.
41566
41567 2003-07-14  Simon Josefsson  <jas@extundo.com>
41568
41569         * lib/mempcpy.h: New file.
41570         * lib/mempcpy.c: New file.
41571
41572 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41573
41574         * modules/getdate, modules/posixtm: Depend on mktime.
41575
41576 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41577
41578         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
41579         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
41580         unicodeio.c, unicodeio.h, unlocked-io.h:
41581         Switch from LGPL to GPL.
41582
41583 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41584
41585         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
41586         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
41587         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
41588         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
41589         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
41590         updated automatically by ../config/srclist-update.  This changes
41591         their license from LPGL to GPL.
41592
41593 2003-07-14  Paul Eggert  <eggert@twinsun.com>
41594
41595         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
41596         assumed to refer to the root of the most recent stable gettext version.
41597         * config/srclistvars.sh: Add defaults for eggert.
41598         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
41599         Match "This program" as well as "The program".  This is needed
41600         for gettext.
41601
41602 2003-07-14  Jim Meyering  <jim@meyering.net>
41603
41604         Don't emit diagnostics.  Let callers do that.
41605         * lib/save-cwd.c: Don't include "error.h".
41606         (save_cwd): Don't call error.  Ensure that errno is valid
41607         when returning nonzero.
41608
41609         * lib/save-cwd.h (restore_cwd): Update prototype.
41610         * lib/save-cwd.c (restore_cwd): Remove two parameters.
41611         Simplify.  Don't call error upon failure.  Let callers do that.
41612         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
41613         when auditing is enabled.  But don't bother updating the #if.
41614
41615 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
41616
41617         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
41618         it breaks C++ compilation.
41619         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
41620
41621 2003-07-10  Simon Josefsson  <jas@extundo.com>
41622
41623         * modules/strchrnul (Makefile.am): Add strchrnul.h.
41624
41625 2003-07-10  Jim Meyering  <jim@meyering.net>
41626
41627         * m4/clock_time.m4: Remove trailing blank.
41628         * m4/intmax_t.m4: Likewise.
41629
41630 2003-07-10  Jim Meyering  <jim@meyering.net>
41631
41632         * lib/vasnprintf.c: Remove trailing blanks.
41633         Make cpp indentation consistent.
41634
41635 2003-07-09  Paul Eggert  <eggert@twinsun.com>
41636
41637         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
41638         posixver.c, strftime.c, strnlen.c, strverscmp.c:
41639         Switch from LGPL to GPL.
41640
41641 2003-07-09  Paul Eggert  <eggert@twinsun.com>
41642
41643         * config/srclist.txt: Sort sublists.  Add
41644         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
41645         that differ from gnulib for one reason or another; we'd like this list
41646         to be smaller but for now let's document what we have.
41647
41648 2003-07-08  Paul Eggert  <eggert@twinsun.com>
41649
41650         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
41651         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
41652         and sweeter "eval x=$x".
41653         * config/srclist.txt: Get lib/argp* from glibc.
41654
41655 2003-07-07  Paul Eggert  <eggert@twinsun.com>
41656
41657         * lib/mktime.c: Fix some boundary cases and remove need for floating
41658         point.
41659
41660         Issue a compile-time diagnostic if time_t is floating point, or if
41661         two's complement arithmetic is not in effect, or if arithmetic
41662         right shift does not propagate the sign.  These assumptions were
41663         all in the original code but they weren't checked.
41664
41665         (TIME_T_MIDPOINT, verify): New macros.
41666         (__isleap): Remove; it has integer overflow problems.
41667         (leapyear): New function, without those problems.
41668         (ydhms_tm_diff): Remove; splitting into two parts.
41669         (ydhms_diff): New function, containing the arithmetic part of
41670         the old ydhms_tm_diff function.  Issue a compile-time
41671         diagnostic if we are not using C99 integer division.
41672         Avoid casts when possible.
41673         (guess_time_tm): New function, containing the checking part of
41674         the old ydhms_tm_diff function.  Return the new value, rather than
41675         the difference between it and the old.  Accept a new argument T
41676         so that *T specifies the old value.  Check for overflow in the result.
41677
41678         (__mktime_internal): Use a time_t offset, not a long int offset.
41679         This undoes the 2003-06-04 change, which is no longer needed now
41680         that we have better overflow checking.
41681         (localtime_offset): Likewise.
41682
41683         (__mktime_internal): Avoid harmful overflow on hosts where time_t
41684         and long are 64-bit but int is only 32-bit.
41685         (ydhms_diff): Use long int to store year1 and yday1.
41686         Issue a compile-time diagnostic if long int is not wide enough.
41687
41688         (__mktime_internal): Use long int to store adjusted year and yday.
41689         Use plain C rather than preprocessor commands, if that doesn't
41690         affect efficiency.
41691         Check for overflow (and try to repair) after each probe
41692         rather than checking only at the very end.  This avoids some bugs
41693         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
41694         does not equal GMT offset at maximum time).
41695         Use integer to check for overflow rather than floating point; this
41696         is more portable to non-IEEE hosts, and is a tad faster.
41697         When we detect that we are oscillating between two values,
41698         don't check whether tm_isdst has the requested value, since
41699         we already know the answer.  When tm_isdst has the wrong value,
41700         use a different heuristic to find the right one, based on the
41701         extreme values actually observed in practice in tz2003a,
41702         rather than the (overly optimistic) "previous 3 calendar quarters".
41703
41704         (not_equal_tm, print_tm, check_result): Use "const T" rather than
41705         "T const" to accommodate glibc style.
41706         (check_result): Use less-confusing report format.  "long" -> "long int.
41707         (main): Likewise.
41708         Don't loop if the iteration overflows time_t.
41709         Allow a negative step in the iteration.
41710
41711 2003-07-06  Karl Berry  <karl@gnu.org>
41712
41713         * config/depcomp: update from automake.
41714         * config/config.sub: update from prep.
41715
41716 2003-07-03  Karl Berry  <karl@gnu.org>
41717
41718         * config/config.guess: update from prep.
41719
41720 2003-07-01  Paul Eggert  <eggert@twinsun.com>
41721
41722         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
41723         xreadlink.c now includes it unconditionally.
41724
41725 2003-07-01  Paul Eggert  <eggert@twinsun.com>
41726
41727         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
41728         having it depend on HAVE_SYS_TYPES_H.
41729
41730 2003-07-01  Bruno Haible  <bruno@clisp.org>
41731
41732         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
41733         <sys/types.h> should be sufficient.
41734         Reported by Paul Eggert.
41735
41736 2003-06-26  Karl Berry  <karl@gnu.org>
41737
41738         * config/depcomp: update from automake.
41739
41740 2003-06-26  Bruno Haible  <bruno@clisp.org>
41741
41742         * modules/human: Depend on module stdbool.
41743
41744 2003-06-25  Bruno Haible  <bruno@clisp.org>
41745
41746         * modules/readlink: New file.
41747         * modules/xreadlink: Depend on it.
41748         * MODULES.html.sh (func_all_modules): Add readlink.
41749
41750 2003-06-25  Bruno Haible  <bruno@clisp.org>
41751
41752         * m4/readlink.m4: New file.
41753
41754 2003-06-25  Bruno Haible  <bruno@clisp.org>
41755
41756         * lib/readlink.c: New file.
41757
41758 2003-06-22  Karl Berry  <karl@gnu.org>
41759
41760         * config/srclist.txt: update mkinstalldirs from automake.
41761         * config/mkinstalldirs: update.
41762
41763 2003-06-22  Bruno Haible  <bruno@clisp.org>
41764
41765         Portability to mingw32.
41766         * m4/ssize_t.m4: New file, from GNU gettext.
41767         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
41768         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
41769
41770 2003-06-22  Bruno Haible  <bruno@clisp.org>
41771
41772         * modules/safe-read: Add m4/ssize_t.m4.
41773         * modules/xreadlink: Add m4/ssize_t.m4.
41774
41775 2003-06-20  Bruno Haible  <bruno@clisp.org>
41776
41777         Assume C89, so PARAMS isn't needed.
41778         * lib/unicodeio.h (PARAMS): Remove.
41779         * lib/unicodeio.c: Don't use PARAMS.
41780
41781 2003-06-18  Karl Berry  <karl@gnu.org>
41782
41783         * config/config.{guess,sub}: update from prep.
41784
41785 2003-06-18  Jim Meyering  <jim@meyering.net>
41786
41787         Merge changes from coreutils.
41788         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
41789         Remove explicit declarations of xmalloc and realloc.
41790         Include xalloc.h.
41791         (read_utmp): Remove anachronistic cast of xmalloc.
41792
41793 2003-06-17  Paul Eggert  <eggert@twinsun.com>
41794
41795         Assume C89, so PARAMS isn't needed.
41796         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
41797         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
41798         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
41799         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
41800         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
41801         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
41802         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
41803         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
41804         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
41805         lib/xstrtod.h, lib/xstrtol.h: Likewise.
41806         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
41807         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
41808         no longer needed. Anyway, config.h should always be included before any
41809         other file.
41810
41811 2003-06-11  Simon Josefsson  <jas@extundo.com>
41812
41813         * modules/sysexits: New file.
41814         * MODULES.html.sh (func_all_modules): Add sysexits.
41815
41816 2003-06-11  Simon Josefsson  <jas@extundo.com>
41817
41818         * lib/sysexit_.h: New file.
41819
41820 2003-06-11  Derek Price  <derek@ximbiot.com>
41821
41822         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
41823         necessary.
41824
41825 2003-06-11  Bruno Haible  <bruno@clisp.org>
41826
41827         * m4/sysexits.m4: New file.
41828
41829 2003-06-10  Simon Josefsson  <jas@extundo.com>
41830
41831         * lib/argp.h: New file, from glibc.
41832         * lib/argp-ba.c: New file, from glibc.
41833         * lib/argp-eexst.c: New file, from glibc.
41834         * lib/argp-fmtstream.c: New file, from glibc.
41835         * lib/argp-fmtstream.h: New file, from glibc.
41836         * lib/argp-fs-xinl.c: New file, from glibc.
41837         * lib/argp-help.c: New file, from glibc.
41838         * lib/argp-namefrob.h: New file, from glibc.
41839         * lib/argp-parse.c: New file, from glibc.
41840         * lib/argp-pv.c: New file, from glibc.
41841         * lib/argp-pvh.c: New file, from glibc.
41842         * lib/argp-xinl.c: New file, from glibc.
41843
41844 2003-06-10  Simon Josefsson  <jas@extundo.com>
41845
41846         * modules/strchrnul: New file.
41847
41848 2003-06-10  Simon Josefsson  <jas@extundo.com>
41849
41850         * modules/argp: New file.
41851
41852 2003-06-10  Simon Josefsson  <jas@extundo.com>
41853
41854         * m4/strchrnul.m4: New file.
41855
41856 2003-06-10  Simon Josefsson  <jas@extundo.com>
41857
41858         * lib/strchrnul.h: New file.
41859         * lib/strchrnul.c: New file.
41860
41861 2003-06-10  Bruno Haible  <bruno@clisp.org>
41862
41863         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
41864
41865 2003-06-07  Karl Berry  <karl@gnu.org>
41866
41867         * config/config.{guess,sub}: update from prep.
41868
41869 2003-06-07  Jim Meyering  <jim@meyering.net>
41870
41871         * modules/strtod: Use $(...) notation, not @...@ for
41872         AC_REPLACE'd variables.
41873         * modules/localcharset: Likewise.
41874
41875 2003-06-07  Jim Meyering  <jim@meyering.net>
41876
41877         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
41878         in place of my name in the copyright comment.
41879         Remove definition and uses of __P.
41880
41881         From coreutils.
41882         * lib/stat.c: Don't declare xmalloc explicitly.
41883         Instead, include "xalloc.h".
41884         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
41885         xrealloc, and xcalloc return values.
41886         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
41887         Improve comment.
41888         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
41889
41890 2003-06-07  Bruno Haible  <bruno@clisp.org>
41891
41892         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
41893         avoid AC_CONFIG_LINKS.
41894         * modules/fnmatch (Makefile.am): Use explicit creation rule for
41895         fnmatch.h, to avoid AC_CONFIG_LINKS.
41896         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
41897
41898 2003-06-07  Bruno Haible  <bruno@clisp.org>
41899
41900         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
41901         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
41902         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
41903         directory.
41904         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
41905         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
41906         directory.
41907
41908 2003-06-06  Jim Meyering  <jim@meyering.net>
41909
41910         Merge from coreutils.
41911         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
41912         Consolidate declarations and initializations of *_base* locals.
41913
41914         Merge from coreutils.
41915         This avoids a core dump on systems without GNU putenv,
41916         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
41917         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
41918         (unsetenv): New static function, from GNU libc.
41919         (rpl_putenv): Use it.
41920
41921         * lib/modechange.c: Remove trailing blanks.
41922
41923         Merge from coreutils.
41924         * lib/fsusage.c: Remove declaration of statfs.
41925         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
41926
41927         * lib/posixtm.c: Include <stdbool.h> unconditionally.
41928
41929 2003-06-06  Jim Meyering  <jim@meyering.net>
41930
41931         * lib/stdbool_.h: Renamed from stdbool.h.in.
41932
41933 2003-06-06  Jim Meyering  <jim@meyering.net>
41934             Bruno Haible  <bruno@clisp.org>
41935
41936         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
41937         Adjust Makefile.am snippet not to redirect directly to target.
41938         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
41939
41940 2003-06-05  Paul Eggert  <eggert@twinsun.com>
41941
41942         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
41943         mismatch, look in future quarters as well as past.  This fixes a
41944         bug when processing fall-backwards gaps immediately after a long
41945         period of daylight-saving time.
41946
41947         * lib/mktime.c: Assume freestanding C89 or better.
41948         (HAVE_LIMITS_H): Remove.  Assume it's 1.
41949         (__P): Remove; not used.
41950         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
41951         (mktime, not_equal_tm, print_tm, check_result,
41952         main): Use prototypes.  Use const * where appropriate.
41953         (main): Fix typo in testing code that uncovered by above changes.
41954         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
41955
41956 2003-06-04  Paul Eggert  <eggert@twinsun.com>
41957
41958         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
41959         locale.h, localeconv.  This merges changes from coreutils.
41960
41961         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
41962         It can be removed after the next Autoconf is released.
41963         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
41964         needed.
41965
41966 2003-06-04  Paul Eggert  <eggert@twinsun.com>
41967
41968         * lib/mktime.c: Fix Debian bug 177940
41969         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
41970         (localtime_offset): Now long int, not time_t, because we want it
41971         to be guaranteed to be signed.  All uses changed.
41972         (__mktime_internal): If overflow would occur when adding offset,
41973         don't add it.
41974
41975         Merge 'human' changes from coreutils.  Rewrite to support
41976         locale-specific notations like thousands separators.
41977         * lib/human.c: Simplify authorship notice.
41978         Include human.h immediately after config.h.
41979         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
41980         <limits.h>: Do not include, since human.h does.
41981         (SIZE_MAX, UINTMAX_MAX): New macros.
41982         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
41983         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
41984         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
41985         (power_letter): Renamed from suffixes.
41986         (generate_suffix_backwards): Remove.
41987         (adjust_value): Now takes int style (because of human.h changes)
41988         and long double value (for greater precision on some platforms).
41989         (group_number): New function.
41990         (human_readable): Use it.  Use integer options, not enum.
41991         Put the options before the sizes in the arg list.
41992         Support all the new options.
41993         The old human_readable function has been removed;
41994         use inttostr.h instead.
41995         (human_readable, default_block_size, humblock):
41996         Use uintmax_t, not int, for block sizes.
41997         (human_readable_inexact, block_size_types): Remove.
41998         (block_size_opts): New constant.
41999         (human_options): Renamed from human_block_size, with new signature
42000         that allows block sizes up to UINTMAX_MAX.  All callers changed.
42001         * lib/human.h: Add copyright and authorship notice.
42002         Include <limits.h> and <stdbool.h> unconditionally.
42003         (PARAMS): Remove.  All uses removed.
42004         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
42005         (enum human_inexact_style): Remove tag; now a nameless enum.
42006         (human_floor, human_ceiling, human_round_to_even): Now have
42007         values 2, 0, 1 rather than -1, 1, 0.
42008         (human_group_digits, human_suppress_point_zero, human_autoscale,
42009         human_base_1024, human_SI, human_B): New constants.
42010         (human_readable_inexact, human_block_size): Remove.
42011         (human_readable): Size args are now uintmax_t, not int.
42012         (human_options): New decl.
42013
42014         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
42015         unnecessary now that we assume C89 or better.  This change
42016         imported from coreutils.
42017
42018         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
42019         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
42020         in the 2003-05-30 sync from glibc.
42021
42022         .h files should stand alone, but we shouldn't include <sys/types.h>
42023         if we can get away with just <stddef.h>.
42024
42025         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
42026         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
42027         rather than <sys/types.h>, as we merely need size_t.
42028         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
42029         to get size_t.
42030         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
42031         Include <stdio.h>, to get FILE.
42032         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
42033         memcasecmp.h has included <stddef.h> and all we need is size_t.
42034         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
42035         our interface, instead of including <sys/types.h>
42036
42037 2003-06-04  Paul Eggert  <eggert@twinsun.com>
42038
42039         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
42040         now, as glibc mktime is buggy on non-glibc systems.
42041
42042 2003-06-03  Karl Berry  <karl@gnu.org>
42043
42044         * config/config.sub: update from prep.
42045
42046 2003-06-02  Paul Eggert  <eggert@twinsun.com>
42047
42048         [from coreutils]
42049         Fix some minor time-related bugs with POSIX time arguments.
42050         Some valid time stamps were being rejected (notably -1, and
42051         time stamps before 1900 on 64-bit hosts).  And some invalid
42052         time stamps were being accepted, e.g. September 31.
42053
42054         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
42055         that we can return (time_t) -1 successfully.
42056         * lib/posixtm.c: Likewise.
42057         [HAVE_STDBOOL_H]: Include <stdbool.h>.
42058         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
42059         (t): Remove static var.
42060         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
42061         of static var.  All uses changed.
42062         (year): Do not reject years before 1900; they can occur with
42063         64-bit time_t.
42064         (posix_time_parse): Do not check for out-of-range components;
42065         that is now the caller's responsibility, since our checks were
42066         only approximations.
42067         (posixtime): Use mktime to check for out-of-range components,
42068         since it knows them exactly.
42069         If mktime returns (time_t) -1, check whether an error actually occurred
42070         by invoking localtime on -1.
42071         (main) [TEST_POSIXTIME]: Check for input data errors, and report
42072         posixtime failures better.
42073         Improve the test data (in comments only).
42074
42075 2003-06-02  Karl Berry  <karl@gnu.org>
42076
42077         * config/mkinstalldirs (version): new variable.
42078         (--version): new option.
42079         (usage): improve message.
42080
42081 2003-05-30  Karl Berry  <karl@gnu.org>
42082
42083         * lib/mktime.c: update from libc.
42084
42085 2003-05-30  Bruno Haible  <bruno@clisp.org>
42086
42087         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
42088         * config/config.rpath: Upgrade to gettext-0.12.1.
42089
42090 2003-05-30  Bruno Haible  <bruno@clisp.org>
42091
42092         * m4/gettext.m4: Upgrade to gettext-0.12.1.
42093         * m4/nls.m4: New file, from gettext-0.12.1.
42094         * m4/po.m4: New file, from gettext-0.12.1.
42095         * m4/progtest.m4: Upgrade to gettext-0.12.1.
42096
42097 2003-05-30  Bruno Haible  <bruno@clisp.org>
42098
42099         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
42100         * lib/localcharset.h: Likewise.
42101         * lib/localcharset.c: Likewise.
42102
42103 2003-05-29  Karl Berry  <karl@gnu.org>
42104
42105         * config/config.rpath: update from gettext.
42106
42107 2003-05-28  Paul Eggert  <eggert@twinsun.com>
42108
42109         Assume the headers required for C89 freestanding compilers.
42110         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
42111         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
42112         * m4/human.m4 (gl_HUMAN): Likewise.
42113         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
42114         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
42115         * m4/userspec.m4 (gl_USERSPEC): Likewise.
42116         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
42117         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
42118         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
42119
42120 2003-05-28  Paul Eggert  <eggert@twinsun.com>
42121
42122         Assume the headers required for C89 freestanding compilers.
42123         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
42124         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
42125         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
42126         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
42127         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
42128         define, since <limits.h> is guaranteed to do that.
42129         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
42130         * lib/exclude.c: Include <stdbool.h> unconditionally.
42131         * lib/tempname.c: Include <stddef.h> unconditionally.
42132         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
42133         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
42134         <stddef.h> does that.
42135         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
42136         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
42137         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
42138         needed.
42139         * lib/xstrtol.c: Likewise.
42140         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
42141         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
42142
42143         * lib/addext.c (addext): Use assignment rather than cast, to avoid
42144         warnings on some platforms.
42145
42146         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
42147         arbitrarily.
42148
42149 2003-05-26  Jim Meyering  <jim@meyering.net>
42150
42151         Merge in a change from coreutils:
42152         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
42153         that is guaranteed to be `no'.  Use `no_such_member' to indicate
42154         that condition, rather than `-1' which is slightly misleading.
42155         Change the name of the cache variable to have the gl_ prefix.
42156         Prompted by a patch from Richard Dawe for DJGPP.
42157
42158 2003-05-24  Karl Berry  <karl@gnu.org>
42159
42160         * config/config.guess: update from prep.
42161
42162 2003-05-22  Karl Berry  <karl@gnu.org>
42163
42164         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
42165
42166 2003-05-20  Karl Berry  <karl@gnu.org>
42167
42168         * config/config.guess: update from prep.
42169
42170 2003-05-18  Karl Berry  <karl@gnu.org>
42171
42172         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
42173         might actually be set by the user.
42174
42175         * config/depcomp, install-sh, mdate-sh: update from automake.
42176
42177 2003-05-17  Bruno Haible  <bruno@clisp.org>
42178
42179         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
42180         invalid expansion for AC_EGREP_CPP.
42181         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
42182         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
42183         Suggested by Akim Demaille <akim@epita.fr> in
42184         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
42185
42186 2003-05-12  Jim Meyering  <jim@meyering.net>
42187
42188         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
42189         the space-padded-by-default conversion specifiers, %e, %k, %l.
42190
42191 2003-05-12  Bruno Haible  <bruno@clisp.org>
42192
42193         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
42194         the string is longer than 4 KB.
42195
42196 2003-05-11  Karl Berry  <karl@gnu.org>
42197
42198         * config/config.{guess,sub}: update from prep.
42199
42200 2003-05-09  Bruno Haible  <bruno@clisp.org>
42201
42202         * modules/error: Add m4/strerror_r.m4 to file list.
42203
42204 2003-05-03  Bruno Haible  <bruno@clisp.org>
42205
42206         Upgrade to Unicode-4.0.
42207         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
42208         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
42209         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
42210         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
42211         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
42212         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
42213         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
42214         Change width of U+E0100..U+E01EF from 1 to 0.
42215
42216 2003-04-25  Jim Meyering  <jim@meyering.net>
42217
42218         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
42219         of type size_t, not int.
42220
42221 2003-04-25  Bruno Haible  <bruno@clisp.org>
42222
42223         * lib/copy-file.c: Include <stddef.h>, for size_t.
42224
42225 2003-04-21  Paul Eggert  <eggert@twinsun.com>
42226
42227         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
42228         code which expansion is under static control.  Patch imported from
42229         Akim Demaille's patch to Bison; see
42230         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
42231
42232 2003-04-14  Bruno Haible  <bruno@clisp.org>
42233
42234         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
42235
42236 2003-04-11  Jim Meyering  <jim@meyering.net>
42237
42238         Merge changes from Coreutils.
42239
42240         2003-03-22  Jim Meyering  <jim@meyering.net>
42241
42242         * lib/strftime.c (widen): Cast alloca return value to proper type.
42243
42244         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
42245
42246         From GNU libc.
42247         * lib/strftime.c (my_strftime): Handle very large width
42248         specifications for numeric values correctly.  Improve checks for
42249         overflow.
42250
42251         2003-01-19  Jim Meyering  <jim@meyering.net>
42252
42253         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
42254         definitions.
42255         (nl_get_alt_digit) [! defined my_strftime]: Define.
42256         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
42257         _nl_get_alt_digit and _nl_get_walt_digit.
42258
42259         * lib/strftime.c (my_strftime): Merge in locale-related changes from
42260         libc. These changes have no effect outside of _LIBC.
42261
42262 2003-04-10  Bruno Haible  <bruno@clisp.org>
42263
42264         * modules/findprog: New file.
42265         * MODULES.html.sh (func_all_modules): Add it.
42266
42267 2003-04-10  Bruno Haible  <bruno@clisp.org>
42268
42269         * m4/findprog.m4: New file.
42270         * m4/eaccess.m4: New file.
42271
42272 2003-04-10  Bruno Haible  <bruno@clisp.org>
42273
42274         * lib/findprog.h: New file, from GNU gettext.
42275         * lib/findprog.c: New file, from GNU gettext.
42276
42277 2003-04-05  Jim Meyering  <jim@meyering.net>
42278
42279         Merge changes from Coreutils.
42280
42281         * lib/exclude.h (PARAMS): Remove definition and uses.
42282         * lib/exclude.c: Remove uses of `PARAMS'.
42283
42284         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
42285         Add test-cases for DOS filenames. Declare program_name.
42286         (main): Set up program_name.  Patch by Rich Dawe.
42287
42288         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
42289         error from mntctl.
42290         Use mntctl's return value to drive the entry-processing loop, since
42291         we can't rely on the value of the vmt_length member in the last
42292         entry.  On some systems doing so could result in exhausting
42293         virtual memory.  Based in part on a patch from Mike Jetzer.
42294
42295 2003-04-04  Bruno Haible  <bruno@clisp.org>
42296
42297         * modules/linebreak: New file.
42298         * MODULES.html.sh (func_all_modules): Add it.
42299
42300 2003-04-04  Bruno Haible  <bruno@clisp.org>
42301
42302         * m4/linebreak.m4: New file.
42303
42304 2003-04-04  Bruno Haible  <bruno@clisp.org>
42305
42306         * lib/linebreak.h: New file, from GNU gettext.
42307         * lib/linebreak.c: New file, from GNU gettext with slight
42308         modifications.
42309         * lib/lbrkprop.h: New file, from GNU gettext.
42310
42311 2003-04-03  Bruno Haible  <bruno@clisp.org>
42312
42313         * modules/utf8-ucs4: New file.
42314         * modules/utf16-ucs4: New file.
42315         * modules/ucs4-utf8: New file.
42316         * modules/ucs4-utf16: New file.
42317         * MODULES.html.sh (func_all_modules): Add them.
42318
42319 2003-04-03  Bruno Haible  <bruno@clisp.org>
42320
42321         * m4/utf-ucs4.m4: New file.
42322         * m4/ucs4-utf.m4: New file.
42323
42324 2003-04-03  Bruno Haible  <bruno@clisp.org>
42325
42326         * lib/utf8-ucs4.h: New file, from GNU gettext.
42327         * lib/utf16-ucs4.h: New file, from GNU gettext.
42328         * lib/ucs4-utf8.h: New file, from GNU gettext.
42329         * lib/ucs4-utf16.h: New file, from GNU gettext.
42330
42331 2003-04-02  Bruno Haible  <bruno@clisp.org>
42332
42333         * modules/binary-io: New file.
42334         * MODULES.html.sh (func_all_modules): Add it.
42335
42336 2003-04-02  Bruno Haible  <bruno@clisp.org>
42337
42338         * lib/binary-io.h: New file, from GNU gettext.
42339
42340 2003-04-01  Bruno Haible  <bruno@clisp.org>
42341
42342         * modules/pathname: New file.
42343         * MODULES.html.sh (func_all_modules): Add it.
42344
42345 2003-04-01  Bruno Haible  <bruno@clisp.org>
42346
42347         * lib/pathname.h: New file, from GNU gettext.
42348         * lib/concatpath.c: New file, from GNU gettext.
42349
42350 2003-03-30  Bruno Haible  <bruno@clisp.org>
42351
42352         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
42353
42354 2003-03-30  Bruno Haible  <bruno@clisp.org>
42355
42356         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
42357         function chown() doesn't exist.
42358
42359 2003-03-28  Bruno Haible  <bruno@clisp.org>
42360
42361         * modules/copy-file: New file.
42362         * MODULES.html.sh (func_all_modules): Add it.
42363
42364 2003-03-28  Bruno Haible  <bruno@clisp.org>
42365
42366         * m4/copy-file.m4: New file.
42367
42368 2003-03-28  Bruno Haible  <bruno@clisp.org>
42369
42370         * lib/copy-file.h: New file, from GNU gettext.
42371         * lib/copy-file.c: New file, from GNU gettext.
42372
42373 2003-03-18  Jim Meyering  <jim@meyering.net>
42374
42375         * lib/quote.c (quote_n): Fix typo in comment.
42376
42377 2003-03-18  Bruno Haible  <bruno@clisp.org>
42378
42379         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
42380         checking.
42381         * m4/onceonly_2_57.m4: Likewise.
42382
42383 2003-03-17  Bruno Haible  <bruno@clisp.org>
42384
42385         * m4/onceonly.m4: Require autoconf 2.54 or newer.
42386         (m4_quote): Remove macro.
42387         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
42388
42389 2003-03-14  Jim Meyering  <jim@meyering.net>
42390
42391         Merge changes from Coreutils.
42392         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
42393         to be const, in order to avoid warnings.
42394         (obstack_room): Likewise.
42395         (obstack_empty_p): Likewise.
42396
42397 2003-03-14  Bruno Haible  <bruno@clisp.org>
42398
42399         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
42400         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
42401
42402 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42403
42404         Merge changes from Bison.
42405         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
42406         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
42407         when compiling Bison 1.875's `bitset bset = obstack_alloc
42408         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
42409         * lib/hash.c: Include <stdbool.h> unconditionally.
42410
42411 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42412
42413         * m4/onceonly.m4 (m4_quote): New macro.
42414         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
42415         Quote AC_FOREACH variable-expansions properly.
42416
42417 2003-03-13  Paul Eggert  <eggert@twinsun.com>
42418
42419         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
42420
42421 2003-03-09  Paul Eggert  <eggert@twinsun.com>
42422
42423         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
42424         Reported by Bruce Becker; see:
42425         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
42426
42427 2003-03-03  Paul Eggert  <eggert@twinsun.com>
42428             Bruno Haible  <bruno@clisp.org>
42429
42430         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
42431         Reported by John Hughes, see
42432         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
42433
42434 2003-02-20  Bruno Haible  <bruno@clisp.org>
42435
42436         * MODULES.html.sh (func_all_modules): Add poll.
42437
42438 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42439
42440         * modules/poll: New file.
42441
42442 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42443
42444         * lib/poll_.h: New file.
42445         * lib/poll.c: New file.
42446
42447 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
42448
42449         * m4/poll.m4: New file.
42450
42451 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42452
42453         * modules/mathl: New file.
42454
42455 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42456
42457         * lib/mathl.h: New file.
42458         * lib/acosl.c: New file.
42459         * lib/asinl.c: New file.
42460         * lib/atanl.c: New file.
42461         * lib/ceill.c: New file.
42462         * lib/cosl.c: New file.
42463         * lib/expl.c: New file.
42464         * lib/floorl.c: New file.
42465         * lib/frexpl.c: New file.
42466         * lib/ldexpl.c: New file.
42467         * lib/logl.c: New file.
42468         * lib/sincosl.c: New file.
42469         * lib/sinl.c: New file.
42470         * lib/sqrtl.c: New file.
42471         * lib/tanl.c: New file.
42472         * lib/trigl.c: New file.
42473         * lib/trigl.h: New file.
42474
42475 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
42476
42477         * m4/mathl.m4: New file.
42478
42479 2003-02-18  Bruno Haible  <bruno@clisp.org>
42480
42481         * MODULES.html.sh (func_all_modules): Add mathl.
42482
42483 2003-02-17  Bruno Haible  <bruno@clisp.org>
42484
42485         * modules/mkdtemp: New module.
42486         * MODULES.html.sh (func_all_modules): Add it.
42487
42488 2003-02-17  Bruno Haible  <bruno@clisp.org>
42489
42490         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
42491
42492 2003-02-17  Bruno Haible  <bruno@clisp.org>
42493
42494         * lib/mkdtemp.h: New file, from GNU gettext.
42495         * lib/mkdtemp.c: New file, from GNU gettext.
42496
42497 2003-02-02  Jim Meyering  <jim@meyering.net>
42498
42499         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
42500         e.g. glibc-2.2.93.
42501
42502 2003-01-31  Bruno Haible  <bruno@clisp.org>
42503
42504         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
42505         'rpl_rename'.
42506         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
42507         'rpl_strnlen'.
42508         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
42509         'rpl_strtod'.
42510         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
42511         'rpl_utime'.
42512
42513 2003-01-31  Bruno Haible  <bruno@clisp.org>
42514
42515         * lib/rename.c: #undef rename before defining rpl_rename.
42516         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
42517
42518 2003-01-30  Bruno Haible  <bruno@clisp.org>
42519
42520         * modules/vasnprintf, modules/vasprintf: New modules.
42521         * MODULES.html.sh (func_all_modules): Add them.
42522
42523 2003-01-30  Bruno Haible  <bruno@clisp.org>
42524
42525         * m4/signed.m4: New file, from GNU gettext.
42526         * m4/longdouble.m4: New file, from GNU gettext.
42527         * m4/wchar_t.m4: New file, from GNU gettext.
42528         * m4/wint_t.m4: New file, from GNU gettext.
42529         * m4/vasnprintf.m4: New file.
42530         * m4/vasprintf.m4: New file.
42531
42532 2003-01-30  Bruno Haible  <bruno@clisp.org>
42533
42534         * lib/printf-args.h: New file, from GNU gettext.
42535         * lib/printf-args.c: New file, from GNU gettext.
42536         * lib/printf-parse.h: New file, from GNU gettext.
42537         * lib/printf-parse.c: New file, from GNU gettext.
42538         * lib/vasnprintf.h: New file, from GNU gettext.
42539         * lib/vasnprintf.c: New file, from GNU gettext.
42540         * lib/asnprintf.c: New file, from GNU gettext.
42541         * lib/vasprintf.h: New file, from GNU gettext with modifications.
42542         * lib/vasprintf.c: New file, from GNU gettext.
42543         * lib/asprintf.c: New file, from GNU gettext.
42544
42545 2003-01-29  Bruno Haible  <bruno@clisp.org>
42546
42547         * modules/stpncpy: New module.
42548         * MODULES.html.sh (func_all_modules): Add it.
42549
42550 2003-01-29  Bruno Haible  <bruno@clisp.org>
42551
42552         * m4/stpncpy.m4: New file.
42553
42554 2003-01-29  Bruno Haible  <bruno@clisp.org>
42555
42556         * lib/stpncpy.h: New file, from GNU gettext with modifications.
42557         * lib/stpncpy.c: New file, from GNU gettext with modifications.
42558
42559 2003-01-28  Bruno Haible  <bruno@clisp.org>
42560
42561         * modules/c-ctype: New module.
42562         * MODULES.html.sh (func_all_modules): Add it.
42563
42564 2003-01-28  Bruno Haible  <bruno@clisp.org>
42565
42566         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
42567         Paul Eggert.
42568         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
42569         Paul Eggert.
42570
42571 2003-01-27  Bruno Haible  <bruno@clisp.org>
42572
42573         * modules/xsetenv: New module.
42574         * MODULES.html.sh (func_all_modules): Add it.
42575
42576 2003-01-27  Bruno Haible  <bruno@clisp.org>
42577
42578         * lib/xsetenv.h: New file, from GNU gettext.
42579         * lib/xsetenv.c: New file, from GNU gettext.
42580
42581 2003-01-23  Jim Meyering  <jim@meyering.net>
42582
42583         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
42584         from working on systems without dirfd (at least Irix and OSF1/Tru64).
42585
42586 2003-01-23  Bruno Haible  <bruno@clisp.org>
42587
42588         * modules/minmax: New module.
42589         * MODULES.html.sh (func_all_modules): Add it.
42590
42591 2003-01-23  Bruno Haible  <bruno@clisp.org>
42592
42593         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
42594         Eggert.
42595
42596 2003-01-22  Bruno Haible  <bruno@clisp.org>
42597
42598         * modules/exit: New module.
42599         * MODULES.html.sh (func_all_modules): Add it.
42600
42601 2003-01-22  Bruno Haible  <bruno@clisp.org>
42602
42603         * lib/exit.h: New file, from GNU gettext.
42604
42605 2003-01-19  Bruno Haible  <bruno@clisp.org>
42606
42607         * gnulib-tool: Recognize option --extract-maintainer.
42608         (func_get_maintainer): New function.
42609         * modules/*: Add Maintainer entry.
42610
42611 2003-01-16  Jim Meyering  <jim@meyering.net>
42612
42613         * m4/regex.m4: The `regex' struct is both input and output.
42614         Initialize it before each use.  Patch by Tim Waugh.
42615
42616 2003-01-16  Bruno Haible  <bruno@clisp.org>
42617
42618         * MODULES.html.sh: Add a table of contents. Add the module name as
42619         leftmost column. Add hyperlinks.
42620
42621 2003-01-15  Bruno Haible  <bruno@clisp.org>
42622
42623         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
42624
42625 2003-01-15  Bruno Haible  <bruno@clisp.org>
42626
42627         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
42628         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
42629         suffix.
42630
42631 2003-01-15  Bruno Haible  <bruno@clisp.org>
42632
42633         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
42634
42635 2003-01-15  Bruno Haible  <bruno@clisp.org>
42636
42637         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
42638         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
42639
42640 2003-01-14  Jim Meyering  <jim@meyering.net>
42641
42642         * lib/same.c (same_name): Tweak a comment.
42643
42644 2003-01-14  Bruno Haible  <bruno@clisp.org>
42645
42646         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
42647         when a string comparison is sufficient.
42648
42649 2003-01-14  Bruno Haible  <bruno@clisp.org>
42650
42651         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
42652         'unsigned int'.
42653
42654 2003-01-14  Bruno Haible  <bruno@clisp.org>
42655
42656         * lib/hash-pjw.c: Add comment about low quality of this function.
42657
42658 2003-01-13  Bruno Haible  <bruno@clisp.org>
42659
42660         * modules/stpcpy: Distribute lib/stpcpy.h.
42661         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
42662
42663 2003-01-13  Bruno Haible  <bruno@clisp.org>
42664
42665         * modules/*: Add a description.
42666         * modules/strpbrk: Fix Makefile.am snippet.
42667         * modules/strtoimax: Fix dependencies.
42668         * modules/strtoumax: Likewise.
42669
42670 2003-01-13  Bruno Haible  <bruno@clisp.org>
42671
42672         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
42673         * modules/alloca (Makefile.am): All object files depend on alloca.h.
42674         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
42675
42676 2003-01-13  Bruno Haible  <bruno@clisp.org>
42677
42678         * gnulib-tool (func_create_testdir): Store config/* files in the main
42679         directory.
42680         * config.rpath: Move to ...
42681         * config/config.rpath: ... here.
42682         * modules/gettext: Contains config/config.rpath, not config.rpath.
42683         * modules/iconv: Likewise.
42684
42685 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42686
42687         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42688         to avoid collisions with libcurses and libreadline.
42689
42690         * m4/getstr.m4: Remove.
42691         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
42692
42693 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42694
42695         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42696         to avoid collisions with libcurses and libreadline.
42697
42698         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
42699         * lib/getstr.h, getstr.c: Remove.
42700         * lib/getline.c: Include "getline.h", to check interface.
42701         Move body of old getstr.c here: this defines MIN_CHUNK and
42702         declares getdelim2, which is renamed from getstr.
42703         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
42704
42705         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
42706         All uses changed.
42707         * lib/linebuffer.h: Likewise.
42708         (readline): Remove backward-compatibility macro.
42709
42710 2003-01-12  Paul Eggert  <eggert@twinsun.com>
42711
42712         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
42713         to avoid collisions with libcurses and libreadline.
42714         * getstr: Remove.
42715         * MODULES.html.sh: Remove getstr.
42716         * modules/getline: Depend on unlocked-io, not getstr.
42717
42718 2003-01-12  Jim Meyering  <jim@meyering.net>
42719
42720         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
42721
42722 2003-01-10  Bruno Haible  <bruno@clisp.org>
42723
42724         * modules/alloca: Change Makefile.am requirements. Simplify Include
42725         requirements. Add lib/alloca_.h to file list.
42726
42727 2003-01-10  Bruno Haible  <bruno@clisp.org>
42728
42729         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
42730
42731 2003-01-10  Bruno Haible  <bruno@clisp.org>
42732
42733         * lib/alloca_.h: New file.
42734         * lib/getdate.y: Unconditionally include alloca.h.
42735         * lib/makepath.c: Likewise.
42736         * lib/setenv.c: Likewise.
42737         * lib/userspec.c: Likewise.
42738
42739 2003-01-09  Karl Berry  <karl@gnu.org>
42740
42741         * MODULES.html.sh: include `dirname $0` in PATH, to find
42742         gnulib-tool.
42743
42744 2003-01-09  Bruno Haible  <bruno@clisp.org>
42745
42746         * modules/stdbool: Change configure.ac, Makefile.am requirements.
42747         Simplify Include requirements. Add lib/stdbool.h.in to file list.
42748
42749 2003-01-09  Bruno Haible  <bruno@clisp.org>
42750
42751         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
42752
42753 2003-01-09  Bruno Haible  <bruno@clisp.org>
42754
42755         * lib/stdbool.h.in: New file.
42756
42757 2003-01-09  Bruno Haible  <bruno@clisp.org>
42758
42759         * gnulib-tool (func_all_modules): Ignore files ending in ~.
42760         * MODULES.html.sh: Likewise.
42761
42762 2003-01-08  Jim Meyering  <jim@meyering.net>
42763
42764         * lib/full-write.c: Undefine and define-away `const' after inclusion
42765         of errno.h, not before.  Suggestion from Bruno Haible.
42766
42767 2003-01-08  Bruno Haible  <bruno@clisp.org>
42768
42769         * modules/full-read: Depend on full-write.
42770
42771 2003-01-08  Bruno Haible  <bruno@clisp.org>
42772
42773         * lib/safe-read.c: Include specification header first, to ensure its
42774         selfcontainedness.
42775         * lib/full-write.c: Likewise.
42776
42777 2003-01-07  Jim Meyering  <jim@meyering.net>
42778
42779         * lib/full-write.c: Rework so that it may serve to define full_read,
42780         too.
42781         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
42782
42783 2003-01-07  Bruno Haible  <bruno@clisp.org>
42784
42785         * lib/strtoimax.c: Include <stdint.h> as an alternative to
42786         <inttypes.h>.
42787         * lib/xstrtol.h: Likewise.
42788         * lib/xstrtoimax.c: Likewise.
42789         * lib/xstrtoumax.c: Likewise.
42790         * lib/human.h: Likewise.
42791
42792         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
42793         on systems that have <inttypes.h> but not <stdint.h>.
42794
42795 2003-01-07  Bruno Haible  <bruno@clisp.org>
42796
42797         * MODULES.html.sh: Add copyright notice.
42798         (missed_files): Omit CVS directory entries.
42799         (func_module): Make it work with sed-3.02.
42800         * MODULES.txt: Remove file.
42801
42802 2003-01-06  Jim Meyering  <jim@meyering.net>
42803
42804         * lib/version-etc.c: Update year in translatable copyright string.
42805
42806 2003-01-03  Karl Berry  <karl@gnu.org>
42807
42808         * config/config.{guess,sub}: update from prep.
42809
42810 2003-01-02  Karl Berry  <karl@gnu.org>
42811
42812         * doc/COPYING.DOC: belatedly updated to 1.2.
42813
42814 2003-01-01  Karl Berry  <karl@gnu.org>
42815
42816         * gnulib-tool (func_verify_module): report module name $module in
42817         error message, not $1.
42818         * gnulib-tool (create-testdir): don't complain if destdir couldn't
42819         be created, only if it doesn't exist.
42820         * gnulib-tool (last_checkin_date): don't expand the $Date here.
42821
42822 2002-12-31  Paul Eggert  <eggert@twinsun.com>
42823
42824         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
42825
42826 2002-12-31  Paul Eggert  <eggert@twinsun.com>
42827
42828         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
42829         memcmp if strcoll doesn't work.
42830
42831 2002-12-31  Bruno Haible  <bruno@clisp.org>
42832
42833         * lib/utime.c (utime_null): No need to call ftruncate if the file was
42834         nonempty.
42835
42836 2002-12-31  Bruno Haible  <bruno@clisp.org>
42837
42838         * lib/memcoll.c (STRCOLL): New macro.
42839         (memcoll): Use it.
42840
42841 2002-12-31  Bruno Haible  <bruno@clisp.org>
42842
42843         * lib/localcharset.h: New file.
42844         * lib/localcharset.c: Include it.
42845         * lib/unicodeio.c: Likewise.
42846
42847 2002-12-31  Bruno Haible  <bruno@clisp.org>
42848
42849         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
42850         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
42851
42852 2002-12-31  Bruno Haible  <bruno@clisp.org>
42853
42854         * lib/getline.h: Include <stddef.h>, for size_t.
42855
42856         * lib/unicodeio.h: Include <stddef.h>, for size_t.
42857         * lib/unicodeio.c: Don't include <stddef.h>.
42858
42859 2002-12-31  Bruno Haible  <bruno@clisp.org>
42860
42861         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
42862         HAVE_TM_ZONE.
42863
42864 2002-12-24  Karl Berry  <karl@gnu.org>
42865
42866         * config/config.guess: update from prep.
42867
42868 2002-12-24  Bruno Haible  <bruno@clisp.org>
42869
42870         General infrasructure.
42871         * m4/README: Rewritten.
42872         * m4/onceonly.m4: New file.
42873         * m4/onceonly_2_57.m4: New file.
42874
42875         Module atexit.
42876         * m4/atexit.m4: New file.
42877
42878         Module strtod.
42879         * m4/strtod.m4: New file.
42880
42881         Module strtol.
42882         * m4/strtol.m4: New file.
42883
42884         Module strtoul.
42885         * m4/strtoul.m4: New file.
42886
42887         Module memchr.
42888         * m4/memchr.m4: New file.
42889
42890         Module memcmp.
42891         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
42892         (jm_FUNC_MEMCMP): Invoke it.
42893
42894         Module memcpy.
42895         * m4/memcpy.m4: New file.
42896
42897         Module memmove.
42898         * m4/memmove.m4: New file.
42899
42900         Module memset.
42901         * m4/memset.m4: New file.
42902
42903         Module strcspn.
42904         * m4/strcspn.m4: New file.
42905
42906         Module strpbrk.
42907         * m4/strpbrk.m4: New file.
42908
42909         Module strstr.
42910         * m4/strstr.m4: New file.
42911
42912         Module strerror.
42913         * m4/strerror.m4: New file.
42914
42915         Module mktime.
42916         * m4/mktime.m4: Renamed from jm-mktime.m4.
42917         (gl_PREREQ_MKTIME): New macro.
42918         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
42919
42920         Module malloc.
42921         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
42922         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
42923         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
42924
42925         Module realloc.
42926         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
42927         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
42928         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
42929
42930         Module strftime.
42931         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
42932         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
42933         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
42934         gl_TM_GMTOFF.
42935         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
42936
42937         Module xalloc.
42938         * m4/xalloc.m4: New file.
42939
42940         Module alloca.
42941         * m4/alloca.m4: New file.
42942
42943         Module putenv.
42944         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
42945         (jm_FUNC_PUTENV): Invoke it.
42946
42947         Module setenv.
42948         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
42949         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
42950         when invoked twice.
42951         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
42952         gt_FUNC_SETENV.
42953
42954         Module memrchr.
42955         * m4/memrchr.m4: New file.
42956
42957         Module stpcpy.
42958         * m4/stpcpy.m4: New file.
42959
42960         Module strcase.
42961         * m4/strcase.m4: New file.
42962
42963         Module strdup.
42964         * m4/strdup.m4: New file.
42965
42966         Module strnlen.
42967         * m4/strnlen.m4: New file.
42968
42969         Module strndup.
42970         * m4/strndup.m4: New file.
42971
42972         Module xstrtod.
42973         * m4/xstrtod.m4: New file.
42974
42975         Module xstrtol.
42976         * m4/xstrtol.m4: New file.
42977
42978         Module getdate.
42979         * m4/getdate.m4: New file.
42980
42981         Module unlocked-io.
42982         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
42983         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
42984         * m4/jm-glibc-io.m4n: Remove file.
42985
42986         Module long-options.
42987         * m4/long-options.m4: New file.
42988
42989         Module md5.
42990         * m4/md5.m4: New file.
42991
42992         Module sha.
42993         * m4/sha.m4: New file.
42994
42995         Module getstr.
42996         * m4/getstr.m4: New file.
42997
42998         Module getline.
42999         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
43000         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
43001         <sys/types.h>, for size_t. Use the function name gnu_getline, not
43002         simply getline. Infoke gl_PREREQ_GETLINE.
43003
43004         Module obstack.
43005         * m4/obstack.m4: New file.
43006
43007         Module hash.
43008         * m4/hash.m4: New file.
43009
43010         Module readtokens.
43011         * m4/readtokens.m4: New file.
43012
43013         Module strverscmp.
43014         * m4/strverscmp.m4: New file.
43015
43016         Module stdbool.
43017         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
43018         OSF/1.
43019
43020         Module strtoll.
43021         * m4/strtoll.m4: New file.
43022
43023         Module strtoull.
43024         * m4/strtoull.m4: New file.
43025
43026         Module strtoimax.
43027         * m4/strtoimax.m4: New file.
43028
43029         Module strtoumax.
43030         * m4/strtoumax.m4: New file.
43031
43032         Module xstrtoimax.
43033         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
43034         jm_AC_PREREQ_XSTRTOIMAX.
43035         Moved the strtol prerequisites to strtol.m4.
43036         Moved the strtoll prerequisites to strtoll.m4.
43037         Moved the strtoimax prerequisites to strtoimax.m4.
43038
43039         Module xstrtoumax.
43040         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
43041         jm_AC_PREREQ_XSTRTOUMAX.
43042         Moved the strtoul prerequisites to strtoul.m4.
43043         Moved the strtoull prerequisites to strtoull.m4.
43044         Moved the strtoumax prerequisites to strtoumax.m4.
43045
43046         Module chown.
43047         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
43048         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
43049
43050         Module dup2.
43051         * m4/dup2.m4: New file.
43052
43053         Module ftruncate.
43054         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
43055         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
43056
43057         Module getgroups.
43058         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
43059         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
43060
43061         Module gettimeofday.
43062         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
43063         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
43064         gl_PREREQ_GETTIMEOFDAY.
43065
43066         Module mkdir.
43067         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
43068         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
43069
43070         Module mkstemp.
43071         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
43072         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
43073         jm_AC_TYPE_UINTMAX_T.
43074         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
43075
43076         Module stat.
43077         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
43078         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
43079
43080         Module lstat.
43081         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
43082         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
43083
43084         Module timespec.
43085         * m4/timespec.m4 (gl_TIMESPEC): New macro.
43086         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
43087         * m4/st_mtim.m4: Indentation.
43088
43089         Module nanosleep.
43090         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
43091         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
43092         gl_PREREQ_NANOSLEEP.
43093
43094         Module regex.
43095         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
43096         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
43097         (gl_REGEX): New macro.
43098
43099         Module rename.
43100         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
43101         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
43102
43103         Module rmdir.
43104         * m4/rmdir.m4: New file.
43105
43106         Module utime.
43107         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
43108         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
43109         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
43110
43111         Module dirname.
43112         * m4/dirname.m4: New file.
43113
43114         Module getopt.
43115         * m4/getopt.m4: New file.
43116
43117         Module unistd-safer.
43118         * m4/unistd-safer.m4: New file.
43119
43120         Module fnmatch.
43121         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
43122         declaration.
43123         (gl_PREREQ_FNMATCH_EXTRA): New macro.
43124         (gl_FUNC_FNMATCH_POSIX): New macro.
43125         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
43126         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
43127         simply fnmatch.
43128
43129         Module exclude.
43130         * m4/exclude.m4: New file.
43131
43132         Module human.
43133         * m4/human.m4: New file.
43134
43135         Module acl.
43136         * m4/acl.m4: Nop.
43137
43138         Module backupfile.
43139         * m4/backupfile.m4: New file.
43140         * m4/d-ino.m4: Indentation.
43141
43142         Module fsusage.
43143         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
43144         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
43145         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
43146
43147         Module dirfd.
43148         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
43149         requirements.
43150
43151         Module euidaccess.
43152         * m4/euidaccess.m4: New file.
43153
43154         Module file-type.
43155         * m4/file-type.m4: New file.
43156
43157         Module fileblocks.
43158         * m4/fileblocks.m4: New file.
43159
43160         Module filemode.
43161         * m4/filemode.m4: New file.
43162
43163         Module isdir.
43164         * m4/isdir.m4: New file.
43165
43166         Module lchown.
43167         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
43168         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
43169
43170         Module makepath.
43171         * m4/makepath.m4: New file.
43172
43173         Module modechange.
43174         * m4/modechange.m4: New file.
43175
43176         Module mountlist.
43177         * m4/mountlist.m4: New file.
43178         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
43179         Indentation.
43180
43181         Module path-concat.
43182         * m4/path-concat.m4: New file.
43183
43184         Module pathmax.
43185         * m4/pathmax.m4: New file.
43186
43187         Module same.
43188         * m4/same.m4: New file.
43189
43190         Module save-cwd.
43191         * m4/save-cwd.m4: New file.
43192
43193         Module savedir.
43194         * m4/savedir.m4: New file.
43195
43196         Module xgetcwd.
43197         * m4/xgetcwd.m4: New file.
43198         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
43199
43200         Module xreadlink.
43201         * m4/xreadlink.m4: New file.
43202
43203         Module safe-read.
43204         * m4/safe-read.m4: New file.
43205
43206         Module safe-write.
43207         * m4/safe-write.m4: New file.
43208
43209         Module closeout.
43210         * m4/closeout.m4: New file.
43211
43212         Module stdio-safer.
43213         * m4/stdio-safer.m4: New file.
43214
43215         Module getpass.
43216         * m4/getpass.m4: New file.
43217
43218         Module getugroups.
43219         * m4/getugroups.m4: New file.
43220
43221         Module group-member.
43222         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
43223         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
43224
43225         Module idcache.
43226         * m4/idcache.m4: New file.
43227
43228         Module userspec.
43229         * m4/userspec.m4: New file.
43230
43231         Module gettime.
43232         * m4/clock_time.m4: New file.
43233         * m4/gettime.m4: New file.
43234
43235         Module settime.
43236         * m4/settime.m4: New file.
43237
43238         Module posixtm.
43239         * m4/posixtm.m4: New file.
43240
43241         Module gethostname.
43242         * m4/gethostname.m4: New file.
43243
43244         Module canon-host.
43245         * m4/canon-host.m4: New file.
43246
43247         Module gettext.
43248         * m4/codeset.m4: New file, from gettext-0.11.5.
43249         * m4/gettext.m4: New file, from gettext-0.11.5.
43250         * m4/glibc21.m4: New file, from gettext-0.11.5.
43251         * m4/iconv.m4: New file, from gettext-0.11.5.
43252         * m4/intdiv0.m4: New file, from gettext-0.11.5.
43253         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
43254         * m4/inttypes.m4: New file, from gettext-0.11.5.
43255         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
43256         * m4/isc-posix.m4: New file, from gettext-0.11.5.
43257         * m4/lcmessage.m4: New file, from gettext-0.11.5.
43258         * m4/lib-ld.m4: New file, from gettext-0.11.5.
43259         * m4/lib-link.m4: New file, from gettext-0.11.5.
43260         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
43261         * m4/progtest.m4: New file, from gettext-0.11.5.
43262         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
43263         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
43264         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
43265
43266         Module localcharset.
43267         * m4/localcharset.m4: New file.
43268
43269         Module hard-locale.
43270         * m4/hard-locale.m4: New file.
43271
43272         Module mbswidth.
43273         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
43274         onceonly macros.
43275         * m4/mbrtowc.m4: Add comment.
43276
43277         Module memcasecmp.
43278         * m4/memcasecmp.m4: New file.
43279
43280         Module memcoll.
43281         * m4/memcoll.m4: New file.
43282
43283         Module unicodeio.
43284         * m4/unicodeio.m4: New file.
43285
43286         Module rpmatch.
43287         * m4/rpmatch.m4: New file.
43288
43289         Module yesno.
43290         * m4/yesno.m4: New file.
43291
43292         Module exitfail.
43293         * m4/exitfail.m4: New file.
43294
43295         Module c-stack.
43296         * m4/c-stack.m4 (gl_C_STACK): New macro.
43297         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
43298
43299         Module error.
43300         * m4/error.m4 (gl_ERROR): New macro.
43301         (jm_PREREQ_ERROR): Use onceonly macros.
43302
43303         Module fatal.
43304         * m4/fatal.m4: New file.
43305
43306         Module getloadavg.
43307         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
43308         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
43309
43310         Module getpagesize.
43311         * m4/getpagesize.m4: New file.
43312
43313         Module getusershell.
43314         * m4/getusershell.m4: New file.
43315
43316         Module physmem.
43317         * m4/physmem.m4: New file.
43318
43319         Module posixver.
43320         * m4/posixver.m4: New file.
43321
43322         Module quotearg.
43323         * m4/quotearg.m4: New file.
43324
43325         Module quote.
43326         * m4/quote.m4: New file.
43327
43328         Module readutmp.
43329         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
43330
43331         Module sig2str.
43332         * m4/sig2str.m4: New file.
43333
43334         Other.
43335         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
43336         ulonglong.m4.
43337         * m4/intmax_t.m4: New file.
43338         * m4/d-type.m4: Indentation.
43339         * m4/jm-macros.m4: Update.
43340         * m4/prereq.m4 (jm_PREREQ): Update.
43341         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
43342         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
43343         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
43344         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
43345         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
43346         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
43347         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
43348         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
43349         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
43350         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
43351         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
43352         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
43353         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
43354         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
43355         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
43356         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
43357         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
43358         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
43359         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
43360
43361 2002-12-24  Bruno Haible  <bruno@clisp.org>
43362
43363         * MODULES.txt: Update according to m4/ changes.
43364
43365         Module gettext.
43366         * config.rpath: New file, from gettext-0.11.5.
43367
43368         * modules/*: New module descriptions.
43369         * gnulib-tool: New file.
43370         * MODULES.html.sh: New file.
43371
43372 2002-12-21  Karl Berry  <karl@gnu.org>
43373
43374         * doc/fdl.texi: update to version 1.2.
43375
43376 2002-12-19  Karl Berry  <karl@gnu.org>
43377
43378         * config/config.guess: update from prep.
43379
43380 2002-12-18  Bruno Haible  <bruno@clisp.org>
43381
43382         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
43383         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
43384
43385 2002-12-17  Bruno Haible  <bruno@clisp.org>
43386
43387         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
43388         stdlib.h, string.h.
43389
43390 2002-12-17  Bruno Haible  <bruno@clisp.org>
43391
43392         * lib/canon-host.c (strdup): Remove unused declaration.
43393
43394         * lib/fsusage.c: Include full_read.h.
43395         (get_fs_usage): Use full_read instead of safe_read.
43396
43397         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
43398
43399 2002-12-12  Karl Berry  <karl@gnu.org>
43400
43401         * config/config.guess: update from prep.
43402
43403 2002-12-11  Bruno Haible  <bruno@clisp.org>
43404
43405         * m4/setenv.m4: New file, from gettext-0.11.5.
43406
43407 2002-12-11  Bruno Haible  <bruno@clisp.org>
43408
43409         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
43410         not unsetenv().
43411         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
43412         modifications:
43413
43414         2002-12-11  Bruno Haible  <bruno@clisp.org>
43415
43416                 * setenv.c (alloca): Fall back to malloc.
43417                 (freea): New macro.
43418                 (setenv): Use freea() to free memory allocated with alloca().
43419
43420         2002-11-13  Bruno Haible  <bruno@clisp.org>
43421
43422                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
43423                 function declarations.
43424                 * unsetenv.c (unsetenv): Likewise.
43425
43426         2002-03-04  Bruno Haible  <bruno@clisp.org>
43427
43428                 Portability to AIX 4.3.3.
43429                 * unsetenv.c: New file, extracted from setenv.c.
43430                 * setenv.c: Move the unsetenv() function to unsetenv.c.
43431
43432         2001-12-20  Bruno Haible  <bruno@clisp.org>
43433
43434                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
43435                 use malloc instead. For SunOS 4.
43436
43437         2001-12-11  Bruno Haible  <bruno@clisp.org>
43438
43439                 * setenv.c: Declare alloca.
43440                 (compar_fn_t): New typedef.
43441                 (KNOWN_VALUE, STORE_VALUE): Use it.
43442
43443         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
43444         setenv.h.
43445
43446 2002-12-10  Paul Eggert  <eggert@twinsun.com>
43447
43448         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
43449         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
43450         Choose values that are less likely to collide with system fnmatch
43451         options.
43452         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
43453         defined (e.g., a pure POSIX system).
43454         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
43455         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
43456
43457 2002-12-06  Paul Eggert  <eggert@twinsun.com>
43458
43459         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
43460         a pain in practice to deal with generated m4 files.  This change
43461         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
43462
43463         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
43464         and jm-glibc-io.m4, as they are no longer a special case.
43465         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
43466         kludge and the auto-generation stuff.  Check only whether the
43467         functions are declared, not whether they exist, since older hosts
43468         that don't declare the functions can't use the optimization anyway.
43469
43470 2002-12-06  Jim Meyering  <jim@meyering.net>
43471
43472         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
43473
43474         Merge in changes from libc's misc/error.c, in preparation
43475         for the merge of gnulib's changes back into libc.
43476
43477         * lib/error.c (_): Define only if not already defined.
43478         Move definition to follow all #include directives.
43479         Include unlocked-io.h only if !_LIBC.
43480         [_LIBC]: Include <libio/libioP.h>.
43481         [USE_IN_LIBIO]: Include <libio/iolibio.h>
43482         (fflush): Tweak definition to use INTUSE.
43483         (putc): Define.
43484
43485 2002-12-05  Paul Eggert  <eggert@twinsun.com>
43486
43487         * lib/alloca.c [defined emacs]: Include "lisp.h".
43488         (xalloc_die) [defined emacs]: New macro.
43489         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
43490         [! defined emacs]: Include <xalloc.h>.
43491         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
43492         (pointer): Typedef to POINTER_TYPE *.
43493         (malloc): Remove decl; we now always use xmalloc.
43494         (alloca): Use old-style definition, since Emacs needs this.
43495         Check for arithmetic overflow when computing combined size.
43496
43497 2002-12-04  Paul Eggert  <eggert@twinsun.com>
43498
43499         Do not generate unlocked-io.h automatically, since it's easier to
43500         maintain it by hand.
43501
43502         * lib/unlocked-io.h: New file, from GNU diffutils,
43503         but with proper copyright notice and attribution.
43504         * lib/gen-uio: Remove.
43505         * lib/Makefile.am: Add copyright notice.
43506         (libfetish_a_SOURCES): Add unlocked-io.h.
43507         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
43508         (DISTCLEANFILES, io_functions): Remove macros.
43509         (EXTRA_DIST): Remove gen_uio.
43510         (unlocked-io.h): Remove rule.
43511
43512 2002-12-04  Jim Meyering  <jim@meyering.net>
43513
43514         Reflect the fact that stat.c and lstat.c are no longer generated.
43515         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
43516         (DISTCLEANFILES): Likewise.
43517         (EXTRA_DIST): Likewise.
43518         (all_local): Don't depend on stat.c or lstat.c.
43519         (stat.c, lstat.c): Remove rules.
43520         (EXTRA_DIST): Remove xstat.in.
43521
43522         * lib/xstat.in: Remove file.  Contents moved into stat.c.
43523         * lib/stat.c: New file.  Contents mostly from xstat.in.
43524         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
43525         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
43526
43527         * lib/safe-read.c: Rework so that it may serve to define safe_write,
43528         too.
43529         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
43530
43531 2002-12-03  Jim Meyering  <jim@meyering.net>
43532
43533         * lib/safe-read.c, safe-write.c: Change variable names and comments,
43534         but not semantics, to minimize the differences between these two files.
43535         (safe_read): Change comment to mention SAFE_READ_ERROR.
43536
43537         * lib/safe-read.c (IS_EINTR): Define.
43538         (safe_read): Use IS_EINTR in place of in-function cpp directives.
43539
43540 2002-12-02  Jim Meyering  <jim@meyering.net>
43541
43542         * lib/safe-read.c (EINTR): Define.
43543         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
43544         (INT_MAX): Provide fallback.
43545         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
43546
43547         * lib/safe-read.h (SAFE_READ_ERROR): Define.
43548
43549 2002-12-02  Bruno Haible  <bruno@clisp.org>
43550
43551         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
43552         Define, taken from safe-read.c.
43553         (INT_MAX): Provide fallback.
43554         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
43555         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
43556
43557         * lib/safe-read.c (EINTR): Remove definition.
43558         (safe_read): Don't use EINTR if it is absent.
43559
43560 2002-12-01  Jim Meyering  <jim@meyering.net>
43561
43562         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
43563         zero.
43564         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
43565
43566 2002-11-27  Paul Eggert  <eggert@twinsun.com>
43567
43568         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
43569         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
43570         with `if (! (value < limit)) abort ();', for readability.
43571
43572 2002-11-26  Karl Berry  <karl@gnu.org>
43573
43574         * lib/strdup.c: copy from libc again, with jim's ok.
43575         * lib/.cppi-disable: re-add strdup.c
43576
43577 2002-11-25  Karl Berry  <karl@gnu.org>
43578
43579         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
43580         instead of "strtol.c".
43581
43582 2002-11-25  Karl Berry  <karl@gnu.org>
43583
43584         * config/install-sh: update from automake for variable quoting, $0 in
43585         error msgs, etc.
43586
43587         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
43588         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
43589         entry.
43590
43591 2002-11-25  Jim Meyering  <jim@meyering.net>
43592
43593         * lib/mktime.c: Sync from libc, now that it has the latest fix.
43594
43595 2002-11-24  Karl Berry  <karl@gnu.org>
43596
43597         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
43598         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
43599
43600 2002-11-24  Jim Meyering  <jim@meyering.net>
43601
43602         Update from coreutils:
43603
43604         * lib/mktime.c: Merge in changes from libc.
43605
43606         Avoid a link-time failure on some Linux systems.
43607         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
43608         (otherwise).
43609         (__mon_yday): Declare with the STATIC attribute.
43610         (__mktime_internal): Likewise.
43611         Based on a report from Greg Schafer.
43612
43613 2002-11-23  Jim Meyering  <jim@meyering.net>
43614
43615         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
43616         Use `unsigned', not `int', as type of index.
43617
43618         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
43619
43620         * lib/fsusage.c: Remove unneeded parentheses around operands of
43621         `defined'.
43622
43623 2002-11-22  Paul Eggert  <eggert@twinsun.com>
43624
43625         * lib/quotearg.h: Allow multiple inclusion by surrounding with
43626         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
43627         so that we can be included first.
43628         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
43629         * lib/quotearg.c: Include quotearg.h immediately after config.h.
43630         No need to include stddef.h or sys/types.h any more.
43631         Surround local include files with "", not "<>".
43632         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
43633         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
43634         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
43635         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
43636         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
43637         (ISPRINT): Remove; no longer needed now that we assume C89.
43638
43639         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
43640         Preserve errno.
43641
43642         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
43643         quotearg_char): Use SIZE_MAX rather than
43644         (size_t) -1 when we are talking about "infinity".
43645
43646         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
43647
43648 2002-11-22  Paul Eggert  <eggert@twinsun.com>
43649
43650         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
43651         hint that one should use `if (! x) abort ();' rather than `assert
43652         (x);', and anyway it's one less thing to worry about configuring.
43653         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
43654         hash_rehash, hash_insert): Use abort rather than assert.
43655
43656 2002-11-22  Bruno Haible  <bruno@clisp.org>
43657
43658         * lib/safe-read.h: Assume C89. Add comments.
43659         (safe_read): Change return type to size_t.
43660         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
43661         byte counts > SSIZE_MAX correctly.
43662         * lib/safe-write.h: New file.
43663         * lib/safe-write.c: New file.
43664         * lib/full-read.h: New file.
43665         * lib/full-read.c: New file.
43666         * lib/full-write.h: Assume C89. Add comments.
43667         * lib/full-write.c: Include safe-write.h.
43668         (full_write): Rewritten to use safe_write.
43669         Suggested by Jim Meyering and Paul Eggert.
43670
43671 2002-11-21  Jim Meyering  <jim@meyering.net>
43672
43673         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
43674
43675         Merge in changes from the coreutils.
43676
43677         2002-09-25  Paul Eggert  <eggert@twinsun.com>
43678         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
43679         <stdint.h>.
43680         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
43681         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
43682         int.  Work more efficiently if X is the same width as uintmax_t.
43683         Do not compare X to -1, to avoid bogus compiler warning.
43684         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
43685         Don't assume that f_frsize and f_bsize are the same type.
43686
43687         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
43688         warning on FreeBSD.
43689
43690         * lib/makepath.c (make_path): Restore umask *before* creating the final
43691         component.
43692         (make_path): Minor reformatting.
43693
43694         * lib/xmalloc.c: Adjust to work with new autoconf macros,
43695         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
43696         HAVE_MALLOC/HAVE_REALLOC.
43697
43698         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
43699         dummy ones.  At least on GNU/Linux systems, `auto' means something
43700         else.
43701         From Michael Stone.
43702
43703 2002-11-21  Bruno Haible  <bruno@clisp.org>
43704
43705         Remove case insensitive option matching.
43706         * lib/argmatch.h (argcasematch): Remove declaration.
43707         (ARGCASEMATCH): Remove macro.
43708         (__xargmatch_internal): Remove case_sensitive argument.
43709         (XARGMATCH): Update.
43710         (XARGCASEMATCH): Remove macro.
43711         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
43712         case_sensitive argument.
43713         (argcasematch): Remove function.
43714         (__xargmatch_internal): Remove case_sensitive argument.
43715         (main): Use XARGMATCH instead of XARGCASEMATCH.
43716
43717         * lib/xmalloc.c: Change compile-time error message. Add comment about
43718         required autoconf version.
43719
43720 2002-11-20  Paul Eggert  <eggert@twinsun.com>
43721
43722         Merge argmatch cleanups from Bison.  Assume C89.
43723
43724         * lib/argmatch.c: Include config.h here, not in argmatch.h.
43725         Include stdlib.h, for EXIT_FAILURE.
43726         Always include <string.h>, since we assume C89.
43727         (EXIT_FAILURE): Remove pre-C89 bug workaround.
43728         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
43729         Include <stddef.h> instead, since it's all we need for size_t.
43730         (PARAMS): Remove.  All uses removed.
43731         (ARRAY_CARDINALITY): Do not bother to #undef.
43732         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
43733         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
43734         Remove unnecessary parentheses.
43735         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
43736         Insert necessary parentheses.
43737         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
43738         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
43739
43740 2002-11-19  Bruno Haible  <bruno@clisp.org>
43741
43742         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
43743         * lib/mbswidth.h: Include <stddef.h>, for size_t.
43744
43745         * lib/mbswidth.h (PARAMS): Remove macro.
43746         (mbswidth, mbsnwidth): Use ANSI C function declarations.
43747         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
43748
43749         * lib/gcd.h (PARAMS): Remove macro.
43750         (gcd): Use ANSI C function declarations.
43751         * lib/gcd.c (gcd): Likewise.
43752
43753 2002-11-15  Bruno Haible  <bruno@clisp.org>
43754
43755         * lib/strcspn.c: Include <stddef.h>.
43756         (strcspn): Use ANSI C function declaration. Change return type to
43757         size_t. Use NULL.
43758         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
43759         (strpbrk): Use NULL.
43760         * lib/strpbrk.h (PARAMS): Remove macro.
43761         (strpbrk): Use ANSI C function declaration.
43762         * lib/strstr.c: Don't include <sys/types.h>.
43763         * lib/strstr.h (PARAMS): Remove macro.
43764         (strstr): Use ANSI C function declarations.
43765
43766 2002-11-14  Karl Berry  <karl@gnu.org>
43767
43768         * config/mkinstalldirs: `do' on separate line, instead of
43769         `for var; do'.
43770
43771 2002-11-06  Bruno Haible  <bruno@clisp.org>
43772
43773         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
43774         * lib/gcd.c (gcd): Likewise.
43775
43776 2002-11-05  Bruno Haible  <bruno@clisp.org>
43777
43778         * lib/gcd.h: New file, from gettext-0.11.5.
43779         * lib/gcd.c: New file, from gettext-0.11.5.
43780
43781 2002-11-05  Bruno Haible  <bruno@clisp.org>
43782
43783         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43784         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43785         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43786         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
43787
43788         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
43789         <libintl.h>.
43790         * lib/makepath.c: Include gettext.h instead of <locale.h> and
43791         <libintl.h>.
43792
43793         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
43794         * lib/human.c: Include gettext.h instead of <libintl.h>.
43795         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
43796         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
43797         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
43798         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
43799         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
43800         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
43801         (textdomain): Remove definition.
43802         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
43803
43804         * lib/long-options.c: Remove include of <libintl.h> and definition of
43805         _.
43806         * lib/same.c: Remove include of <libintl.h> and definition of _.
43807
43808 2002-11-04  Owen Taylor  <otaylor@redhat.com>
43809
43810         * lib/config.charset: A few additions for Solaris.
43811
43812 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
43813
43814         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
43815         * lib/localcharset.c (locale_charset): Declare as extern "C".
43816
43817 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
43818
43819         * lib/config.charset: msdos in uk_UA uses CP1125.
43820
43821 2002-11-04  Bruno Haible  <bruno@clisp.org>
43822
43823         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
43824         * lib/strcase.h: New file, from GNU gettext-0.11.5.
43825         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
43826         * lib/strstr.h: New file, from GNU gettext-0.11.5.
43827         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
43828
43829 2002-11-04  Bruno Haible  <bruno@clisp.org>
43830
43831         * lib/localcharset.c (locale_charset): Don't return an empty string.
43832
43833 2002-11-04  Bruno Haible  <bruno@clisp.org>
43834
43835         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
43836         aliases.
43837
43838 2002-11-04  Bruno Haible  <bruno@clisp.org>
43839
43840         * lib/config.charset: Update for newest glibc. Add canonical names
43841         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
43842
43843 2002-11-04  Bruno Haible  <bruno@clisp.org>
43844
43845         * lib/config.charset: Add support for NetBSD.
43846
43847 2002-11-04  Bruno Haible  <bruno@clisp.org>
43848
43849         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
43850
43851 2002-11-01  Bruno Haible  <bruno@clisp.org>
43852
43853         * configure.in: Add AC_CONFIG_AUX_DIR call.
43854         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
43855         test/Makefile.
43856         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
43857
43858 2002-09-28  Karl Berry  <karl@gnu.org>
43859
43860         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
43861         installed automake until the next release, since changes have been
43862         made.
43863
43864 2002-09-25  Karl Berry  <karl@gnu.org>
43865
43866         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
43867         * lib/getopt*: copy from libc/posix.
43868         * lib/gettext.h: copy from gettext.
43869         * lib/.cppi-disable: add strdup.c, gettext.h.
43870
43871 2002-09-25  Karl Berry  <karl@gnu.org>
43872
43873         * config/srclist.txt: enable gettext.h check.
43874         * config/config.{guess,sub}: update from prep.
43875         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
43876                 from automake 1.6.3.
43877         See srclist*.
43878
43879 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
43880
43881         * regex.c (PATFETCH): Remove the translating fetch.
43882         (PATFETCH_RAW): Rename to PATFETCH.
43883         (set_image_of_range): New fun.
43884         (SET_RANGE_TABLE_WORK_AREA): Use it.
43885         (regex_compile): Don't translate the pattern chars so eagerly.
43886         Only do it when inserting an `exactn' bytecode or when handling
43887         a char-range.
43888         (mutually_exclusive_p): Avoid empty statement.
43889
43890 2002-07-06  Jim Meyering  <meyering@lucent.com>
43891
43892         * m4/README: Don't mention Makefile.am.in.
43893         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
43894
43895 2002-07-01  Jim Meyering  <meyering@lucent.com>
43896
43897         * lib/c-stack.c: Include sys/time.h.
43898         From Volker Borchert.
43899
43900 2002-06-26  Paul Eggert  <eggert@twinsun.com>
43901
43902         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
43903
43904 2002-06-26  Paul Eggert  <eggert@twinsun.com>
43905
43906         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
43907         New macro.  Use it uniformly instead of
43908         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
43909         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
43910         reported by Vin Shelton.
43911
43912 2002-06-22  Paul Eggert  <eggert@twinsun.com>
43913
43914         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
43915         Do not assume SA_SIGINFO behavior.
43916         Bug reported by Jim Meyering on NetBSD 1.5.2.
43917
43918 2002-06-22  Jim Meyering  <meyering@lucent.com>
43919
43920         * m4/c-stack.m4: New file, from diffutils-2.8.2.
43921         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
43922
43923         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
43924         now that configure.ac uses AC_GNU_SOURCE.
43925         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
43926         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
43927
43928         Update to latest tools.  Suggestions from Paul Eggert.
43929         * m4/stdbool.m4: New file, from diffutils-2.8.2.
43930         * m4/gnu-source.m4: Update from diffutils-2.8.2.
43931         * m4/fnmatch.m4: Likewise.
43932         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
43933         to AC_HEADER_STDBOOL
43934
43935 2002-06-22  Jim Meyering  <meyering@lucent.com>
43936
43937         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
43938         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
43939
43940 2002-06-22  Jim Meyering  <meyering@lucent.com>
43941
43942         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
43943
43944         * lib/exitfail.c, exitfail.h: Likewise.
43945         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
43946
43947         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
43948         of fnmatch.h.
43949         (EXTRA_DIST): Add fnmatch_loop.c.
43950         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
43951
43952         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
43953         * lib/fnmatch.c: Update from diffutils-2.8.2.
43954         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
43955         * lib/fnmatch.h: Remove file.
43956
43957 2002-06-21  Jim Meyering  <meyering@lucent.com>
43958
43959         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
43960         * m4/mbrtowc.m4: Likewise.
43961
43962         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
43963         * m4/mbswidth.m4: Reflect name change:
43964         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
43965         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
43966
43967         * m4/lib-link.m4: Update from gettext-0.11.2.
43968         * m4/gettext.m4: Likewise.
43969
43970         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
43971         From Alfred M. Szmidt.
43972
43973 2002-06-18  Paul Eggert  <eggert@twinsun.com>
43974
43975         * lib/file-type.h: Report an error if neither S_ISREG nor
43976         S_IFREG is defined, instead of using a test specific to glibc
43977         2.2.  This should be safe, since POSIX requires S_ISREG and
43978         Unix Version 7 had S_IFREG.  We don't need to check for
43979         <sys/types.h> since we don't use any symbols that it defines.
43980
43981 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
43982
43983         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
43984         $@-t, so that each temporary file name is unique and valid in the first
43985         8 characters, for operation under DOS.
43986
43987 2002-06-15  Paul Eggert  <eggert@twinsun.com>
43988
43989         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
43990
43991 2002-06-15  Jim Meyering  <meyering@lucent.com>
43992
43993         Work even with DJGPP 2.03, which lacks support for symlinks.
43994         From Richard Dawe.
43995         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
43996         is defined.
43997         * lib/lchown.c (S_ISLNK): Likewise.
43998
43999 2002-06-15  Jim Meyering  <meyering@lucent.com>
44000
44001         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
44002         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
44003         have been included before this file.
44004
44005 2002-06-14  Jim Meyering  <meyering@lucent.com>
44006
44007         * lib/file-type.h: Use the version from diffutils-2.8.2.
44008         * lib/file-type.c: Likewise.
44009
44010 2002-06-07  Jim Meyering  <meyering@lucent.com>
44011
44012         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
44013         They're needed at least for NetBSD 1.5.2.
44014         ($statxfs_includes): Include those same headers.
44015         ($statxfs_includes): Include sys/vfs.h if available.
44016         ($statxfs_includes): Likewise for sys/statvfs.h.
44017         Check for the following members in both structs statfs and statvfs:
44018         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
44019
44020 2002-06-01  Jim Meyering  <meyering@lucent.com>
44021
44022         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
44023         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
44024
44025 2002-05-28  Jim Meyering  <meyering@lucent.com>
44026
44027         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
44028         Reported by Volker Borchert.
44029
44030 2002-05-27  Jim Meyering  <meyering@lucent.com>
44031
44032         Fix a problem seen only on nonconforming systems whereby ls.c's
44033         use of localtime, and then of gettimeofday would cause trouble:
44034         the localtime call used to initialize rpl_gettimeofday's save
44035         mechanism would clobber ls's current local time information so
44036         that in any long listing the first file would always be listed
44037         with date 1970-01-01.  Analysis by Volker Borchert.
44038
44039         * lib/gettimeofday.c (localtime): Undefine.
44040         (rpl_localtime): New function.
44041
44042 2002-05-27  Jim Meyering  <meyering@lucent.com>
44043
44044         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
44045         localtime.
44046
44047         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
44048         use the replacement function; it wouldn't resolve at link time.
44049         Reported by Volker Borchert.
44050
44051 2002-05-22  Jim Meyering  <meyering@lucent.com>
44052
44053         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
44054         file-type.h.
44055         * lib/file-type.h: New file.
44056         * lib/file-type.c (file_type): New file/function.  Extracted from
44057         diffutils.
44058
44059 2002-04-30  Jim Meyering  <meyering@lucent.com>
44060
44061         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
44062
44063 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44064
44065         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
44066
44067 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44068
44069         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
44070         Do not check for alloca.h (no longer used) or stdbool.h (was never
44071         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
44072
44073 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44074
44075         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
44076
44077 2002-04-29  Jim Meyering  <meyering@lucent.com>
44078
44079         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
44080         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
44081         Use AC_FUNC_STRNLEN here instead.
44082
44083         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
44084         With autoconf-2.53a, it's part of AC_PROG_CC.
44085
44086 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44087
44088         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
44089         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
44090
44091 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44092
44093         * lib/sig2str.h, lib/sig2str.c: New files.
44094         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
44095
44096 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44097
44098         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
44099         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
44100         of 127, since 64 is the largest conceivable number for ancient
44101         nonstandard hosts.
44102         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
44103
44104 2002-04-28  Jim Meyering  <meyering@lucent.com>
44105
44106         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
44107
44108 2002-04-24  Jim Meyering  <meyering@lucent.com>
44109
44110         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
44111         (jm_PREREQ): Use it.
44112
44113         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
44114         mach/mach.h fcntl.h.
44115         Check for this function: setlocale.
44116
44117 2002-04-24  Jim Meyering  <meyering@lucent.com>
44118
44119         * lib/gettext.h: New file, from Gettext.
44120         * lib/Makefile.am (INCLUDES): Remove -I../intl.
44121         (libfetish_a_SOURCES): Add gettext.h.
44122
44123 2002-04-16  Jim Meyering  <meyering@lucent.com>
44124
44125         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
44126         ut_pid, ut_id, ut_exit.
44127
44128 2002-04-16  Jim Meyering  <meyering@lucent.com>
44129
44130         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
44131         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
44132         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
44133
44134 2002-04-12  Jim Meyering  <meyering@lucent.com>
44135
44136         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
44137         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
44138         existence of the getmntinfo function.  Needed for Darwin 5.3.
44139
44140         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
44141         This is necessary at least on Darwin 5.3.
44142
44143         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
44144         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
44145         strnlen.o in the library, and that makes some versions of ranlib
44146         object.
44147
44148 2002-04-12  Jim Meyering  <meyering@lucent.com>
44149
44150         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
44151
44152 2002-04-09  Jim Meyering  <meyering@lucent.com>
44153
44154         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
44155         to be more precise.  Rather than saying we're checking whether the
44156         function `works', say what we're testing.
44157         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
44158         Reported by Bruno Haible.
44159
44160 2002-03-10  Jim Meyering  <meyering@lucent.com>
44161
44162         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
44163         Suggestion from Santiago Vila.
44164
44165 2002-03-08  Jim Meyering  <meyering@lucent.com>
44166
44167         * lib/rename.c: Mention that this wrapper is needed also on
44168         mips-dec-ultrix4.4 systems.
44169
44170 2002-03-02  Jim Meyering  <meyering@lucent.com>
44171
44172         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
44173         not HAVE_CLOCK_SETTIME.
44174
44175 2002-02-27  Paul Eggert  <eggert@twinsun.com>
44176
44177         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
44178         Check for clock_settime.
44179
44180 2002-02-27  Paul Eggert  <eggert@twinsun.com>
44181
44182         * lib/nanosleep.h: Rename to....
44183         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
44184
44185         * lib/gettime.c: New file.
44186         * lib/settime.c: New file.
44187         * lib/stime.c: Remove.
44188
44189         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
44190         timespec.h.  Remove nanosleep.h.
44191
44192 2002-02-25  Paul Eggert  <eggert@twinsun.com>
44193
44194         * m4/acl.m4: New file.
44195         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
44196         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
44197
44198 2002-02-25  Paul Eggert  <eggert@twinsun.com>
44199
44200         * lib/acl.c, lib/acl.h: New files.
44201         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
44202
44203 2002-02-24  Jim Meyering  <meyering@lucent.com>
44204
44205         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
44206         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
44207         cause trouble.  Reported by Nelson Beebe.
44208
44209 2002-02-23  Paul Eggert  <eggert@twinsun.com>
44210
44211         * lib/path-concat.c (xpath_concat): Reorder code to pacify
44212         compilers that don't know that xalloc_die never returns.
44213
44214 2002-02-20  Jim Meyering  <meyering@lucent.com>
44215
44216         * lib/getdate.c: Regenerate using bison-1.33.
44217
44218 2002-02-17  Jim Meyering  <meyering@lucent.com>
44219
44220         * config/config.guess (main): Don't use `head -1'; it's no longer
44221         portable. Use `sed 1q' instead.
44222
44223 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
44224
44225         * m4/codeset.m4: Upgrade to gettext-0.11.
44226         * m4/gettext.m4: Upgrade to gettext-0.11.
44227         * m4/glibc21.m4: Upgrade to gettext-0.11.
44228         * m4/iconv.m4: Upgrade to gettext-0.11.
44229         * m4/isc-posix.m4: Upgrade to gettext-0.11.
44230         * m4/lcmessage.m4: Upgrade to gettext-0.11.
44231         * m4/lib-ld.m4: New file, from gettext-0.11.
44232         * m4/lib-link.m4: New file, from gettext-0.11.
44233         * m4/lib-prefix.m4: New file, from gettext-0.11.
44234         * m4/progtest.m4: Upgrade to gettext-0.11.
44235
44236 2002-02-15  Paul Eggert  <eggert@twinsun.com>
44237
44238         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
44239         (jm_PREREQ): Use it.
44240
44241 2002-02-15  Paul Eggert  <eggert@twinsun.com>
44242
44243         * lib/posixver.c, lib/posixver.h: New files.
44244         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
44245
44246 2002-02-02  Paul Eggert  <eggert@twinsun.com>
44247             Bruno Haible  <bruno@clisp.org>
44248
44249         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
44250         (fwrite_success_callback): New declaration.
44251         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
44252         print_unicode_char. Call failure callback instead of error.
44253         (fwrite_success_callback): New function.
44254         (exit_failure_callback): New function.
44255         (fallback_failure_callback): New function.
44256         (print_unicode_char): Call unicode_to_mb.
44257
44258 2002-01-26  Jim Meyering  <meyering@lucent.com>
44259
44260         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
44261         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
44262
44263 2002-01-26  Jim Meyering  <meyering@lucent.com>
44264
44265         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
44266
44267 2002-01-22  Paul Eggert  <eggert@twinsun.com>
44268
44269         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
44270
44271 2002-01-22  Jim Meyering  <meyering@lucent.com>
44272
44273         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
44274         Otherwise, some versions of automake would omit the rule that makes
44275         Makefile from Makefile.in.
44276
44277 2002-01-21  Paul Eggert  <eggert@twinsun.com>
44278
44279         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
44280         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
44281         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
44282         (memcoll): Set errno to zero if there is no error.
44283
44284         * lib/quotearg.c (quotearg_buffer_restyled):
44285         Fix bug with quoting buffers containing NUL when backslashing escapes.
44286         This bug was exposed by the other changes in this patch.
44287         (quotearg_n_options): New arg ARGSIZE.
44288         All callers changed.
44289         (quoting_options_from_style): New function.
44290         (quotearg_n_style): Use it.
44291         (quotearg_n_style_mem): New function.
44292
44293         * lib/quotearg.h (quotearg_n_style_mem): New function.
44294
44295 2002-01-19  Jim Meyering  <meyering@lucent.com>
44296
44297         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
44298         Remove useless quotes: DF_PROG="df".
44299         * m4/strnlen.m4: New file.
44300
44301 2002-01-16  Paul Eggert  <eggert@twinsun.com>
44302
44303         * lib/backupfile.c (ISDIGIT): Comment fix.
44304         * lib/getdate.y (ISDIGIT): Likewise.
44305         * lib/posixtm.c (ISDIGIT, year): Likewise.
44306         * lib/strverscmp.c (ISDIGIT): Likewise.
44307         * lib/userspec.c (ISDIGIT): Likewise.
44308
44309 2002-01-16  Jim Meyering  <meyering@lucent.com>
44310
44311         * lib/getdate.y: Add three semicolons, each just before a closing
44312         brace. Bison (as of version 1.31) no longer papers over that mistake.
44313
44314 2002-01-05  Jim Meyering  <meyering@lucent.com>
44315
44316         * lib/version-etc.c (version_etc_copyright): Update copyright year.
44317
44318 2001-12-19  Paul Eggert  <eggert@twinsun.com>
44319
44320         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
44321         not silently exit merely because the output buffer happens to
44322         have nothing pending.
44323
44324 2001-12-18  Paul Eggert  <eggert@twinsun.com>
44325
44326         See the big note in ../ChangeLog.
44327         * lib/human.c (suffixes): Prefer K to k for 1024.
44328         (generate_suffix_backwards): New function.
44329         (human_readable_inexact): Use it.
44330         * lib/xstrtol.c (__xstrtol): If there is no number but there
44331         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
44332         Accept 'K' as well as 'k'.
44333
44334 2001-12-15  Jim Meyering  <meyering@lucent.com>
44335
44336         * lib/regex.h (__restrict_arr): Update from libc.
44337
44338         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
44339         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
44340         (STREQ): Define.
44341
44342 2001-12-14  Jim Meyering  <meyering@lucent.com>
44343
44344         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
44345         Suggestion from Bruno Haible.
44346
44347 2001-12-10  Jim Meyering  <meyering@lucent.com>
44348
44349         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
44350         xrealloc, Instead, include "xalloc.h".
44351         (initbuffer): Don't cast xmalloc return value to char*.
44352         (readline): Reword comment.
44353         Don't cast xrealloc return value to char*
44354         Return NULL, not 0.
44355
44356 2001-12-09  Jim Meyering  <meyering@lucent.com>
44357
44358         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
44359         about `signed and unsigned type in conditional expression'.
44360         * lib/posixtm.c (posix_time_parse): Likewise.
44361
44362         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
44363
44364         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
44365         to avoid a pedantic warning.
44366
44367         * lib/getstr.c: Don't include assert.h.
44368         (getstr): Remove warning-evoking assertions.
44369         Return -1 if offset parameter is out of bounds.
44370         Change the type of a local from int to size_t.
44371
44372         * lib/strftime.c (my_strftime_localtime_r): Include this function
44373         definition in the `#if ! HAVE_TM_GMTOFF' block.
44374
44375         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
44376         Include xalloc.h instead.
44377
44378 2001-12-02  Jim Meyering  <meyering@lucent.com>
44379
44380         * lib/tempname.c: Don't declare getenv, thus reverting the change of
44381         2001-11-18.  It's no longer necessary, now that stdlib.h is always
44382         included.
44383
44384         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
44385         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
44386
44387 2001-11-30  Akim Demaille  <akim@epita.fr>
44388
44389         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
44390         before being defined.
44391
44392 2001-11-27  Paul Eggert  <eggert@twinsun.com>
44393
44394         * lib/quotearg.h (quotearg_n, quotearg_n_style):
44395         First arg is int, not unsigned.
44396         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
44397         (SIZE_MAX, UINT_MAX): New macros.
44398         (quotearg_n_options): Abort if N is negative.
44399         Avoid overflow check on hosts where size_t is 64 bits and int
44400         is 32 bits, as overflow is impossible there.
44401         Fix off-by-one typo that caused unnecessary reallocation.
44402
44403 2001-11-27  Jim Meyering  <meyering@lucent.com>
44404
44405         * lib/tempname.c: Merge with version from libc.
44406         * lib/regex.c: Likewise.
44407
44408         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
44409         systems for which STDC_HEADERS is 0, it was not included, resulting in
44410         a warning about an integer-to-pointer conversion problem with getenv.
44411         Reported by Volker Borchert.
44412
44413 2001-11-26  Jim Meyering  <meyering@lucent.com>
44414
44415         * lib/gtod.h: Remove file.
44416         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
44417         * lib/gettimeofday.c: Don't include gtod.h.
44418         (GTOD_init): Remove function.
44419         (rpl_gettimeofday): Do its job here instead, rather than aborting.
44420         Suggestion from Volker Borchert.
44421
44422 2001-11-23  Jim Meyering  <meyering@lucent.com>
44423
44424         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
44425         it.
44426         * lib/hash.c (struct hash_table): Define it here instead.
44427
44428 2001-11-22  Jim Meyering  <meyering@lucent.com>
44429
44430         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
44431
44432 2001-11-20  Jim Meyering  <meyering@lucent.com>
44433
44434         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
44435         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
44436
44437 2001-11-19  Jim Meyering  <meyering@lucent.com>
44438
44439         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
44440         directory.  Use "conftestXXXXXX" as the template.
44441         Suggestion from Paul Eggert.
44442
44443         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
44444         immediately, so the test doesn't mistakenly hit the max-open-files
44445         limit.
44446
44447 2001-11-18  Paul Eggert  <eggert@twinsun.com>
44448
44449         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
44450         (TEMPORARIES): New macro.
44451         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
44452         removes an artificial limitation (e.g. HP-UX 10.20, where
44453         TMP_MAX is 17576).
44454
44455 2001-11-18  Jim Meyering  <meyering@lucent.com>
44456
44457         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
44458
44459 2001-11-18  Jim Meyering  <meyering@lucent.com>
44460
44461         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
44462         on SunOS 4.
44463
44464         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
44465         files will be created before anything else.
44466
44467 2001-11-17  Paul Eggert  <eggert@twinsun.com>
44468
44469         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
44470         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
44471
44472 2001-11-17  Jim Meyering  <meyering@lucent.com>
44473
44474         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
44475         Prompted by a report from Bob Proulx.
44476
44477         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
44478         Instead, require UTILS_FUNC_MKSTEMP.
44479
44480 2001-11-17  Jim Meyering  <meyering@lucent.com>
44481
44482         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
44483         Now, that's done as part of AC_FUNC_STRTOD.
44484
44485 2001-11-17  Jim Meyering  <meyering@lucent.com>
44486
44487         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
44488         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
44489         rather than group writable.  Patch by Juan F. Codagnone.
44490
44491         * lib/readtokens.c: Remove explicit declarations of xmalloc and
44492         xrealloc, Instead, include "xalloc.h".
44493
44494         * lib/mountlist.c: Include unlocked-io.h after all system headers.
44495         Remove explicit declarations of xmalloc, xrealloc,
44496         and xstrdup.  Instead, include "xalloc.h".
44497
44498         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
44499         unlocked-io.h.
44500         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
44501         Likewise.
44502         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
44503
44504         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
44505         Reported by Padraig Brady.
44506
44507         * lib/mkstemp.c: #undef mkstemp.
44508         Include config.h.
44509         (rpl_mkstemp): Rename from mkstemp.
44510         Protoize.
44511
44512 2001-11-16  Jim Meyering  <meyering@lucent.com>
44513
44514         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
44515         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
44516         determine the amount of total physical memory, use pstat_getstatic.
44517         HPUX-11 doesn't define _SC_PHYS_PAGES.
44518         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
44519         If sysconf couldn't be used to determine the amount of available
44520         physical memory, use both pstat_getstatic and pstat_getdynamic.
44521         Based on a patch from Bob Proulx.
44522
44523 2001-11-10  Jim Meyering  <meyering@lucent.com>
44524
44525         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
44526         (jm_PREREQ): Use it.
44527
44528 2001-11-09  Jim Meyering  <meyering@lucent.com>
44529
44530         * m4/jm-macros.m4: Require autoconf-2.52f.
44531         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
44532         Use these AC_-prefixed names, not the AM_-prefixed ones.
44533
44534         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
44535
44536 2001-11-05  Jim Meyering  <meyering@lucent.com>
44537
44538         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
44539
44540 2001-11-04  Jim Meyering  <meyering@lucent.com>
44541
44542         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
44543         $DEFS.
44544
44545 2001-11-03  Jim Meyering  <meyering@lucent.com>
44546
44547         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
44548         of AC_DEFUN.
44549
44550         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
44551         know the name of the variable in the macro definition.
44552
44553 2001-11-03  Jim Meyering  <meyering@lucent.com>
44554
44555         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
44556         in argmatch_to_argument call.
44557
44558         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
44559         argument.
44560
44561         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
44562         e.g., a fault due to an attempt to free a NULL pointer.
44563
44564 2001-11-01  Jim Meyering  <meyering@lucent.com>
44565
44566         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
44567         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
44568
44569 2001-11-01  Jim Meyering  <meyering@lucent.com>
44570
44571         * lib/dirfd.c, lib/dirfd.h: New files.
44572         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
44573
44574         * lib/hash.c (hash_print) [TESTING]: Clean up.
44575
44576 2001-10-22  Paul Eggert  <eggert@twinsun.com>
44577
44578         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
44579         to avoid a warning if -Wall.
44580
44581 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
44582
44583         * README: New file
44584         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
44585         (per RMS's instructions, this is now the canonical source)
44586         * lgpl/, gpl/: New directories.
44587
44588 2001-10-21  Paul Eggert  <eggert@twinsun.com>
44589
44590         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
44591
44592 2001-10-21  Jim Meyering  <meyering@lucent.com>
44593
44594         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
44595         this code would end up calling gettext even in packages built
44596         with --disable-nls.
44597         * lib/getopt.c (_): Likewise.
44598         * lib/regex.c (_): Likewise.
44599
44600 2001-10-20  Paul Eggert  <eggert@twinsun.com>
44601
44602         * m4/error.m4 (jm_PREREQ_ERROR):
44603         Do not invoke AC_CHECK_FUNCS with strerror_r, as
44604         AC_FUNC_STRERROR_R does that.
44605         Check for strerror declaration.
44606
44607         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
44608         are supposed to have them these days.
44609         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
44610         Merge changes from latest Autoconf CVS.
44611         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
44612         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
44613         POSIX decided to standardize on the int flavor of strerror_r.
44614
44615 2001-10-20  Paul Eggert  <eggert@twinsun.com>
44616
44617         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
44618         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
44619         Use strerror_r that is only a macro, even if it is not a function.
44620         (strerror): Check for HAVE_DECL_STRERROR before declaring.
44621         (private_strerror): Use prototypes, not old-style function definition.
44622         (print_errno_message): New function.
44623         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
44624         char*-flavored one.
44625         (error_tail, error, error_at_line): Use it.
44626
44627 2001-10-11  Jim Meyering  <meyering@lucent.com>
44628
44629         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
44630         and quote_n (1, ... to avoid clobbering a buffer.
44631
44632 2001-10-05  Jim Meyering  <meyering@lucent.com>
44633
44634         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
44635         hash-pjw.h.
44636         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
44637         * lib/hash-pjw.h: New file.
44638
44639 2001-09-30  Jim Meyering  <meyering@lucent.com>
44640
44641         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
44642         `struct fsstat' has the `f_fstypename' member.
44643         Use that to define FS_TYPE, which is now used to make
44644         the getfsstat link test tighter.
44645
44646 2001-09-30  Jim Meyering  <meyering@lucent.com>
44647
44648         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
44649         Include <sys/ucred.h>, for Apple Darwin.
44650         Include sys/mount.h and sys/fs_types.h only if available.
44651         (FS_TYPE): Define.
44652         (read_filesystem_list): Use FS_TYPE.
44653
44654 2001-09-29  Paul Eggert  <eggert@twinsun.com>
44655
44656         * lib/exclude.c (excluded_filename): 0 -> false, since it's
44657         a boolean context.
44658
44659 2001-09-29  Jim Meyering  <meyering@lucent.com>
44660
44661         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
44662         [one-argument getmntent function]): Include stdio.h before mntent.h.
44663         SunOS 4.1.x needs it for the declaration of `FILE'.
44664         Patch by Volker Borchert.
44665
44666         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
44667         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
44668         sys/fs_types.h, and make the link-test for getfsstat guard #include
44669         directives with appropriate #if HAVE_*_H tests so that we can
44670         detect getfsstat on Apple Darwin1.3.7 systems.
44671         Reported by Nelson Beebe.
44672         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
44673
44674 2001-09-28  Paul Eggert  <eggert@twinsun.com>
44675
44676         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
44677         #defines strtoimax.  Also treat the other strto* functions
44678         like strtoimax.
44679
44680         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
44681         Check for strtoul and strtoumax,
44682         as those declarations are made even in the signed case.
44683         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
44684         Likewise, for strtol and strtoimax.
44685
44686 2001-09-28  Paul Eggert  <eggert@twinsun.com>
44687
44688         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
44689         #defines strtoimax.  Also treat the other strto* functions
44690         like strtoimax.
44691
44692         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
44693         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
44694         (strtoimax, strtoumax): Do not declare if already defined as a macro.
44695
44696 2001-09-26  Jim Meyering  <meyering@lucent.com>
44697
44698         Most macros in unlocked-io.h had the wrong number of arguments.
44699         * lib/gen-uio: New script.
44700         (USE_UNLOCKED_IO): Define to 1 if not already defined.
44701         * lib/unlocked-io.hin: Remove file.
44702         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
44703         rather than trying to embed it here.
44704         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
44705         Reported by Padraig Brady.
44706
44707 2001-09-25  Volker Borchert  <bt@teknon.de>
44708
44709         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
44710         `result'.
44711
44712 2001-09-24  Jim Meyering  <meyering@lucent.com>
44713
44714         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
44715
44716 2001-09-23  Jim Meyering  <meyering@lucent.com>
44717
44718         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
44719         instead of the mere test for existence of mntent.h.  The latter
44720         would get a false-positive on AIX 3.4 systems.
44721         In the outer getmntent if-block, don't die if neither of the getmntent
44722         tests succeeds.  Instead, just fall through and continue with the
44723         remaining tests.
44724
44725 2001-09-23  Jim Meyering  <meyering@lucent.com>
44726
44727         * lib/mountlist.c: Remove useless parentheses in #if directives.
44728         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
44729         the deprecated MOUNTED symbol is no longer defined in mntent.h.
44730
44731 2001-09-22  Jim Meyering  <meyering@lucent.com>
44732
44733         * m4/gettext.m4: New file.  From gettext.
44734         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
44735         * m4/progtest.m4: Likewise
44736         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
44737         * m4/glibc21.m4: Likewise.
44738
44739         * m4/libintl.m4: Remove.  No longer used.
44740
44741 2001-09-22  Jim Meyering  <meyering@lucent.com>
44742
44743         * lib/localcharset.c: Update from latest gettext.
44744         * lib/config.charset: Likewise.
44745
44746 2001-09-20  Jim Meyering  <meyering@lucent.com>
44747
44748         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
44749         strtoimax.
44750         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
44751         strtoumax.
44752
44753 2001-09-20  Jim Meyering  <meyering@lucent.com>
44754
44755         * lib/xstrtol.c (strtoimax): Guard declaration with
44756         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
44757         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
44758         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
44759         (strtoumax): Likewise, for completeness (it wasn't necessary).
44760
44761 2001-09-17  Paul Eggert  <eggert@twinsun.com>
44762
44763         * lib/strtoimax.c (HAVE_LONG_LONG):
44764         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
44765         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
44766         to work around bug in IBM C compiler.
44767
44768 2001-09-17  Jim Meyering  <meyering@lucent.com>
44769
44770         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
44771         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
44772         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
44773         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
44774         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
44775         whenever the right hand side need not be expanded by the shell.
44776
44777 2001-09-16  Paul Eggert  <eggert@twinsun.com>
44778
44779         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
44780         library.  It's not correct, as some older glibcs are buggy.
44781         fnmatch wasn't fixed until glibc 2.2.
44782
44783         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
44784         special shell magic here.
44785
44786 2001-09-16  Jim Meyering  <meyering@lucent.com>
44787
44788         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
44789         * m4/jm-macros.m4: Require it.
44790
44791 2001-09-16  Jim Meyering  <meyering@lucent.com>
44792
44793         * lib/mkdir.c: New file.
44794
44795 2001-09-15  Jim Meyering  <meyering@lucent.com>
44796
44797         * m4/jm-macros.m4: Check for help2man.
44798
44799 2001-09-11  Jim Meyering  <meyering@lucent.com>
44800
44801         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
44802         The body, by Paul Eggert, was moved here from configure.in.
44803         * m4/jm-macros.m4: Require UTILS_HOST_OS.
44804
44805 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44806
44807         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
44808         (jm_PREREQ): Use it.
44809
44810 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44811
44812         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
44813         Use ssize_t, not int, to store result of readlink.
44814         Check for ssize_t overflow as well as size_t overflow,
44815         as POSIX says the result of readlink is implementation-defined
44816         when ssize_t overflows.
44817         Remove unnecessary cast to char*.
44818         Use free+malloc instead of realloc, as the storage doesn't need
44819         to be preserved and it's clearer and can be more efficient that way.
44820         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
44821         * lib/xreadlink.h (xreadlink): Update prototype.
44822
44823 2001-09-04  Paul Eggert  <eggert@twinsun.com>
44824
44825         * lib/xgetcwd.c: Revert some of the previous change; intead,
44826         fix the HAVE_GETCWD_NULL code to behave more like the
44827         !HAVE_GETCWD_NULL code used to.
44828
44829         Include "xalloc.h".
44830         (xgetcwd): Do not return NULL when memory is exhausted; instead,
44831         invoke xalloc_die.
44832
44833 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44834
44835         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
44836         sys/param.h, as pathmax.h includes them.
44837
44838 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44839
44840         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
44841         (jm_PREREQ_XGETCWD): New macro.
44842
44843         * m4/getcwd.m4: New file.
44844
44845 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44846
44847         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
44848         like the HAVE_GETCWD_NULL code.
44849         Include pathmax.h if not HAVE_GETCWD.
44850         Do not include xalloc.h.
44851         (INITIAL_BUFFER_SIZE): New symbol.
44852         Do not use xmalloc / xrealloc, since the caller is responsible for
44853         handling errors.  Preserve errno around `free' during failure.
44854         Do not overrun buffer when using getwd.
44855
44856 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44857
44858         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
44859         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
44860         getcwd (NULL, 0).
44861
44862 2001-09-03  Paul Eggert  <eggert@twinsun.com>
44863
44864         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
44865         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
44866         spotted by Jim Meyering.
44867
44868 2001-09-03  Jim Meyering  <meyering@lucent.com>
44869
44870         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
44871         failure.
44872
44873 2001-09-02  Jim Meyering  <meyering@lucent.com>
44874
44875         * lib/error.c: Update from GNU libc.
44876
44877 2001-09-01  Jim Meyering  <meyering@lucent.com>
44878
44879         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
44880         Used by df.
44881
44882 2001-09-01  Jim Meyering  <meyering@lucent.com>
44883
44884         * lib/xreadlink.c: New file.
44885         * lib/xreadlink.h: New file.
44886         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
44887         xreadlink.h.
44888
44889         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
44890         doesn't conflict with sparc Solaris 7's definition in
44891         /usr/include/sys/int_types.h.
44892
44893         * lib/exclude.c: Use `""', not `<>' to #include non-system header
44894         files.
44895         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
44896         and strncasecmp as r-values.  Unixware didn't have declarations.
44897
44898 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44899
44900         * lib/xstrtol.h: Add copyright notice.
44901         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
44902         LONGINT_INVALID_SUFFIX_CHAR.
44903
44904 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44905
44906         * lib/xstrtol.c (strtoimax): New decl.
44907
44908 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44909
44910         * lib/xgetcwd.c: Don't include pathmax.h.
44911         Include stdlib.h and unistd.h if available.
44912         Include xalloc.h.
44913         (xmalloc, xstrdup, free): Remove decls.
44914         (xgetcwd): Don't assume sizes fit in unsigned.
44915         Check for overflow when computing sizes.
44916         Simplify reallocation code.
44917
44918 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44919
44920         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
44921         a directory's st_size can have an arbitrary value, so the old
44922         usage could waste an arbitrary amount of memory.  All uses
44923         changed.
44924         * lib/savedir.h: Update prototype.
44925
44926 2001-08-31  Paul Eggert  <eggert@twinsun.com>
44927
44928         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
44929
44930         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
44931         old strtoimax.c.
44932
44933         Also, make the following further changes to make this file's
44934         configuration more similar to that of strtol.c:
44935         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
44936         (strtoumax, uintmax_t, strtoull, strtol): Remove.
44937         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
44938         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
44939         changed to signed values.
44940
44941         And make the following changes as well:
44942         Fix copyright notice, as 1999 was missing.
44943         (verify): New macro.
44944         (strtoimax): Check sizes at compile-time, not run-time.
44945         Prefer strtol to strtoll if both work.
44946         (main): Remove; it was not that useful and was a pain to maintain.
44947
44948         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
44949
44950 2001-08-31  Jim Meyering  <meyering@lucent.com>
44951
44952         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
44953         Use an initial, malloc'd, buffer of length 128 rather than
44954         a statically allocated one of length 1024.
44955
44956 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44957
44958         Simplify code, partly by assuming autoconf 2.52 semantics.
44959
44960         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
44961
44962         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
44963         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
44964         All uses removed.
44965         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
44966         Move AC_REQUIRE to next-to-top level, to avoid confusion.
44967         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
44968         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
44969         jm_AC_HEADER_INTTYPES_H.
44970         * m4/jm-macros.m4 (jm_MACROS): Likewise.
44971
44972         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
44973
44974         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
44975         Quote first arg of AC_DEFUN.
44976         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
44977         since they are needed to parse the include file even if we need
44978         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
44979         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
44980         but with opposite signedness.
44981
44982 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44983
44984         Merge 'exclude' changes from tar 1.13.22.
44985         This fixes one or two unlikely storage allocation overflow bugs,
44986         but doesn't change user-visible behavior otherwise.
44987
44988 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44989
44990         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
44991         (jm_PREREQ_EXCLUDE): New macro.
44992
44993 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44994
44995         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
44996         tm to be declared.
44997
44998 2001-08-30  Paul Eggert  <eggert@twinsun.com>
44999
45000         * lib/hash.c: Remove '2001' from copyright notice.
45001
45002 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45003
45004         * lib/full-write.h: New file.
45005         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
45006         * lib/full-write.c: Correct credits, as cccp.c no longer
45007         exists and anyway it was so heavily changed from the old cccp
45008         code as to be unrecognizable.  Include full-write.h.
45009         (full_write) Return size_t, with short writes meaning failure.
45010         All callers changed.  This fixes a bug with large buffers
45011         on 64-bit hosts.
45012         * lib/utime.c: Include full-write.h.
45013
45014 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45015
45016         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
45017         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
45018         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
45019         Include if available.
45020         (<xalloc.h>): Include
45021         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
45022         (verify): New macro.  Use it to verify that EXCLUDE macros do not
45023         collide with FNM macros.
45024         (struct patopts): New struct.
45025         (struct exclude): Use it, as exclude patterns now come with options.
45026         (new_exclude): Support above changes.
45027         (new_exclude, add_exclude_file):
45028         Initial size must now be a power of two to simplify overflow checking.
45029         (free_exclude, fnmatch_no_wildcards): New function.
45030         (excluded_filename): No longer requires options arg, as the options
45031         are determined by add_exclude.  Now returns bool, not int.
45032         (excluded_filename, add_exclude):
45033         Add support for the fancy new exclusion options.
45034         (add_exclude, add_exclude_file): Now takes int options arg.
45035         Check for arithmetic overflow when computing sizes.
45036         (add_exclude_file): xrealloc might modify errno, so don't
45037         realloc until after errno might be used.
45038
45039         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
45040         New macros.
45041         (free_exclude): New decl.
45042         (add_exclude, add_exclude_file): Now takes int options arg.
45043         (excluded_filename): No longer requires options arg, as the options
45044         are determined by add_exclude.  Now returns bool, not int.
45045
45046 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45047
45048         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
45049
45050 2001-08-27  Jim Meyering  <meyering@lucent.com>
45051
45052         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
45053
45054         * lib/version-etc.c (N_): Remove definition.
45055         Revert most of last change.
45056         Instead, simply don't mark the `Copyright...' string for translation.
45057         Based on advice from Paul Eggert.
45058
45059         * lib/strtoxmax.c: Tweak comment.
45060
45061 2001-08-26  Jim Meyering  <meyering@lucent.com>
45062
45063         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
45064
45065         * m4/xstrtoimax.m4: New file.
45066         * m4/xstrtoumax.m4: Add comments explaining why we
45067         AC_REPLACE_FUNCS(strtol).
45068
45069 2001-08-26  Jim Meyering  <meyering@lucent.com>
45070
45071         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
45072         of copyright with `%s' so translators don't get an untranslated
45073         message in 2002.
45074         (COPYRIGHT_YEAR): Define.
45075         (version_etc): Use fprintf rather than fputs.
45076         Suggestion from Ulrich Drepper.
45077
45078         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
45079
45080         * lib/strtoll.c: New file, from GNU libc.
45081         * lib/xstrtoimax.c: New file.
45082
45083         * lib/xstrtol.h: Add xstrtoimax.
45084         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
45085         * lib/strtoimax.c: New file.  Likewise, but first define
45086         STRTOUXMAX_SIGNED.
45087
45088         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
45089         ...
45090         * lib/strtoxmax.c: ... then renamed to this.
45091
45092 2001-08-18  Paul Eggert  <eggert@twinsun.com>
45093
45094         * m4/inttypes.m4: Add AC_PREREQ(2.13).
45095         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
45096         (jm_AC_TYPE_INTMAX_T): New macro.
45097         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
45098
45099         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
45100
45101         * m4/longlong.m4: Renamed from ulonglong.m4.
45102         * m4/inttypes.m4: Renamed from inttypes_h.m4.
45103         * m4/uintmax_t.m4: Removed.
45104
45105 2001-08-13  Paul Eggert  <eggert@twinsun.com>
45106
45107         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
45108         Port to Solaris 8, where 'sed' requires a space after the 'r'
45109         command, and where sh dislikes "$/".  Clean up the spacing a bit.
45110         Redirect output to $tmp just once.
45111
45112 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
45113
45114         * lib/addext.c (<errno.h>): Include.
45115         (errno): Declare if not defined.
45116         (addext): Work correctly when pathconf returns -1 and leaves
45117         errno alone because there is no limit.  Also, work even if
45118         pathconf returns a value greater than SIZE_MAX.
45119
45120 2001-08-12  Jim Meyering  <meyering@lucent.com>
45121
45122         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
45123         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
45124         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
45125         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
45126         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
45127         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
45128         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
45129         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
45130         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
45131         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
45132         utime.m4, utimes.m4, xstrtoumax.m4:
45133         Quote the first argument in each use of AC_DEFUN.
45134
45135 2001-08-12  Jim Meyering  <meyering@lucent.com>
45136
45137         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
45138         Simply `return getcwd (NULL, 0);'.
45139         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
45140         Use 1300 as initial value for length, not PATH_MAX.
45141
45142         * lib/pathmax.h: Clean up cpp syntax.
45143
45144 2001-08-12  Jim Meyering  <meyering@lucent.com>
45145
45146         * lib/gettimeofday.c: New file.
45147         * lib/gtod.h: New file.
45148         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
45149
45150 2001-08-05  Jim Meyering  <meyering@lucent.com>
45151
45152         * m4/jm-macros.m4: Require autoconf-2.52.
45153
45154 2001-08-04  Jim Meyering  <meyering@lucent.com>
45155
45156         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
45157         stmt, to get in sync with glibc.
45158
45159 2001-08-03  Paul Eggert  <eggert@twinsun.com>
45160
45161         The following changes are from gettext 0.10.39 as maintained by
45162         Bruno Haible.
45163
45164         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
45165         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
45166         with inverted sense.  All uses changed.
45167
45168         * lib/mbswidth.c: Don't include <limits.h>.
45169         Include <stdlib.h> and <string.h> unconditionally.
45170         (iswcntrl, mbsinit, ISCNTRL): New macros.
45171         (mbsnwidth): Use K&R style function declarations.
45172         Don't bother checking for MB_LEN_MAX == 1, since the compiler
45173         can optimize it when MB_CUR_MAX == 1.
45174         The width of control characters is zero, not 1.
45175
45176 2001-08-03  Paul Eggert  <eggert@twinsun.com>
45177
45178         The following changes are from gettext 0.10.39 as maintained by
45179         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
45180
45181         * m4/codeset.m4: Upgrade to serial AM1.
45182         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
45183         all uses changed.  Quote first arg of AC_DEFUN.
45184         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
45185
45186         * m4/iconv.m4: Upgrade to serial AM2.
45187         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
45188         Add --with-libconv-prefix.
45189         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
45190         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
45191         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
45192         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
45193         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
45194
45195         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
45196         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
45197         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
45198         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
45199         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
45200         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
45201         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
45202         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
45203         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
45204
45205         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
45206         string.h any more.
45207
45208         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
45209         not the default value.
45210
45211         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
45212         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
45213         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
45214         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
45215         Also check for iswcntrl, used for wcwidth fallback.
45216         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
45217         to Autoconf 2.13.
45218
45219 2001-08-03  Jim Meyering  <meyering@lucent.com>
45220
45221         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
45222         as it was in the original.  Reported by Paul Eggert.
45223
45224 2001-07-16  Jim Meyering  <meyering@lucent.com>
45225
45226         * m4/gettimeofday.m4: New file.
45227         Prompted by a report from Bernhard Baehr.
45228
45229 2001-07-15  Jim Meyering  <meyering@lucent.com>
45230
45231         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
45232         stuff. Now it's in ../Makefile.cfg.
45233
45234 2001-07-15  Jim Meyering  <meyering@lucent.com>
45235
45236         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
45237         (BUILT_SOURCES): Add unlocked-io.h.
45238         (io_functions): Define.
45239         (unlocked-io.h): New rule.
45240         (DISTCLEANFILES): Add unlocked-io.h.
45241         (all-local): Depend on unlocked-io.h, to ensure it is created.
45242
45243         * lib/unlocked-io.hin: New file
45244
45245         * lib/regex.c: Update from glibc.
45246
45247 2001-07-05  Jim Meyering  <meyering@lucent.com>
45248
45249         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
45250         recommendation.
45251         (libfetish_a_SOURCES): Put all .h files here instead.
45252         Remove a thus-exposed (better checks in automake) duplicate and
45253         two unnecessary .h files.
45254
45255 2001-07-04  Jim Meyering  <meyering@lucent.com>
45256
45257         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
45258         that generates jm-glibc-io.m4 so that it doesn't trigger any make
45259         distcheck failure.
45260
45261 2001-07-02  Jim Meyering  <meyering@lucent.com>
45262
45263         The following changes were prompted by suggestions from Bruno Haible.
45264
45265         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
45266         is now generated.
45267         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
45268         definition of EXTRA_DIST.
45269         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
45270         ensure that the generated file is created/updated whenever the list
45271         of $(unlocked_functions) is changed.
45272         (jm-glibc-io.m4): New rule.
45273         (unlocked-io.h): New rule -- currently unused.
45274
45275 2001-06-24  Jim Meyering  <meyering@lucent.com>
45276
45277         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
45278         unmatched right bracket, rather than kludging it with an extra,
45279         falsely-matching quote in a comment.  Patch by Akim Demaille.
45280
45281 2001-06-11  Jim Meyering  <meyering@lucent.com>
45282
45283         * lib/regex.c: Update from GNU libc.
45284
45285 2001-05-27  Jim Meyering  <meyering@lucent.com>
45286
45287         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
45288         Check for ut_type in struct utmp.
45289
45290 2001-05-27  Jim Meyering  <meyering@lucent.com>
45291
45292         * lib/readutmp.h (UT_TYPE): Define.
45293
45294 2001-05-24  Jim Meyering  <meyering@lucent.com>
45295
45296         * lib/argmatch.c: Include "quote.h".
45297         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
45298         quote function.  Reported by Göran Uddeborg.
45299
45300 2001-05-22  Jim Meyering  <meyering@lucent.com>
45301
45302         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
45303         now that we use the package-supplied version unconditionally.
45304         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
45305
45306 2001-05-21  Jim Meyering  <meyering@lucent.com>
45307
45308         * m4/regex.m4: Change a couple backticks to single quotes to avoid
45309         shell syntax errors.
45310
45311 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
45312
45313         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
45314
45315 2001-05-20  Paul Eggert  <eggert@twinsun.com>
45316
45317         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
45318         Don't bother to check library strftime, since
45319         we'll be using our own my_strftime function anyway.
45320         Define my_strftime instead of strftime.
45321
45322 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
45323
45324         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
45325         which is not yet declared.
45326
45327 2001-05-15  Jim Meyering  <meyering@lucent.com>
45328
45329         * m4/regex.m4: Use proper quoting so brackets appear in the test
45330         program.
45331         Reported by, and with help from, Bruno Haible.
45332
45333 2001-05-13  Jim Meyering  <meyering@lucent.com>
45334
45335         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
45336         undefined.
45337
45338 2001-05-11  Paul Eggert  <eggert@twinsun.com>
45339
45340         dirname code cleanup.  base_name now behaves more compatibly
45341         with POSIX basename when given file names that have trailing
45342         slashes, and similarly for dir_name.  Add new primitives
45343         base_len and dir_len.  Put the directory-name-related decls
45344         into dirname.h.
45345
45346         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
45347         * lib/backupfile.c (base_name): Likewise.
45348         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
45349         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
45350         * lib/makepath.c (strip_trailing_slashes): Likewise.
45351         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
45352         ISSLASH): Likewise.
45353         * lib/rename.c (strip_trailing_slashes): Likewise.
45354         * lib/same.c (base_name): Likewise.
45355         * lib/stripslash.c (ISSLASH): Likewise.
45356
45357         * lib/addext.c: Include <dirname.h> after size_t is defined.
45358         * lib/backupfile.c: Likewise.
45359
45360         * lib/addext.c (addext): Use base_len to trim redundant
45361         trailing slashes instead of doing it ourselves.
45362         But do not trim the last slash if it is not redundant.
45363
45364         * lib/backupfile.c (find_backup_file_name,
45365         max_backup_version): Use base_len instead of rolling it ourselves.
45366         Handle the case of "" and (on DOS) "C:" correctly.
45367
45368         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
45369         needed. Include <string.h>, <dirname.h>.
45370         (base_name): Allow file names ending in slashes, other than names
45371         that are all slashes.  In this case, return the basename followed
45372         by the slashes.  This is more general, and can be used in places
45373         where the original base_name purposely had an assertion failure.
45374         (base_len): New function.
45375
45376         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
45377         Do not include <assert.h>; no longer needed.
45378         Include xalloc.h.
45379         (memrchr): Remove decl.
45380         (dir_name_r): Remove.
45381         (dir_len): Renamed from dirlen.  All callers changed.
45382         Rewrite in terms of base_name, for simplicity and consistency.
45383         (dir_name): Never return NULL.  All callers changed.
45384         Do not include <stdlib.h> in test program; no longer needed.
45385         return 0; is fine for test program.
45386
45387         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
45388         New macros.
45389         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
45390
45391         * lib/path-concat.c (path_concat): Use base_len to compute
45392         base length, not strlen; this means we cannot rely on memcpy
45393         to null-terminate.
45394
45395         * lib/same.c (STREQ): Remove.
45396         (same_name): Handle the case where the basename ends in trailing '/'.
45397
45398         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
45399         a slash was stripped.  Do not strip the last slash after a
45400         file system prefix.
45401
45402 2001-05-11  Paul Eggert  <eggert@twinsun.com>
45403
45404         * lib/Makefile.am (libfetish_a_SOURCES):
45405         Add strftime.c, since we now compile it on all hosts.
45406
45407         * lib/strftime.c (my_strftime):
45408         Define to nstrftime if emacs, but only if my_strftime is not defined.
45409         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
45410         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
45411         Add one more extra argument: a nanoseconds value.
45412         All uses changed.
45413         (ns): New macro.
45414         (my_strftime function): Add %N format.
45415         (emacs_strftimeu): Renamed from emacs_strftime,
45416         with extra ut argument.
45417
45418 2001-05-09  Paul Eggert  <eggert@twinsun.com>
45419
45420         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
45421
45422 2001-04-21  Jim Meyering  <meyering@lucent.com>
45423
45424         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
45425         doesn't interfere.
45426
45427 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
45428
45429         * m4/ftruncate.m4: Check for chsize.
45430         Link with ftruncate.o unconditionally if ftruncate is missing.
45431         This was required when cross-compiling to i586-mingw32msvc.
45432
45433 2001-04-08  Jim Meyering  <meyering@lucent.com>
45434
45435         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
45436         recomputed; that's necessary when the offset spans a DST transition.
45437         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
45438
45439 2001-04-02  Jim Meyering  <meyering@lucent.com>
45440
45441         * lib/regex.h, regex.c: Update from GNU libc.
45442
45443 2001-03-24  Jim Meyering  <meyering@lucent.com>
45444
45445         * m4/jm-macros.m4: Require autoconf-2.49d.
45446
45447 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
45448
45449         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
45450
45451 2001-03-19  Paul Eggert  <eggert@twinsun.com>
45452
45453         * lib/version-etc.c (version_etc_copyright): Update to 2001.
45454
45455 2001-03-17  Jim Meyering  <meyering@lucent.com>
45456
45457         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
45458         now that the version in autoconf is equivalent.
45459         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
45460
45461         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
45462         Suggestion from Akim Demaille.
45463
45464         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
45465         (jm_PREREQ_TEMPNAME): New function.
45466
45467 2001-03-16  Paul Eggert  <eggert@twinsun.com>
45468
45469         * lib/tempname.c (uint64_t): Define to uintmax_t if
45470         not defined, and if UINT64_MAX is not defined.
45471         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
45472         Reported by John David Anglin.
45473
45474 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
45475
45476         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
45477         resolve alias if codeset is empty.
45478         * lib/config.charset (BeOS): Use wildcard syntax.
45479
45480 2001-03-13  Jim Meyering  <meyering@lucent.com>
45481
45482         * lib/path-concat.c (path_concat)
45483         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
45484         concatenating e.g., `C:' and `foo'.
45485         From Bruno Haible.
45486
45487 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
45488
45489         * lib/localcharset.c (locale_charset): Don't use
45490         setlocale(LC_CTYPE,NULL). Don't return NULL.
45491         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
45492
45493 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
45494
45495         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
45496         support for DOS/DJGPP.
45497
45498 2001-03-01  Paul Eggert  <eggert@twinsun.com>
45499
45500         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
45501         lacks mkstemp.  Compile our own tempname.c if we compile our own
45502         mkstemp.c, as mkstemp relies on tempname.
45503
45504 2001-03-01  Jim Meyering  <meyering@lucent.com>
45505
45506         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
45507         AH_VERBATIM really does output its argument verbatim.
45508
45509 2001-02-28  Paul Eggert  <eggert@twinsun.com>
45510
45511         * lib/Makefile.am (libfetish_a_SOURCES):
45512         Add dup-safer.c, fopen-safer.c.
45513         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
45514
45515         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
45516         * lib/unistd-safer.h: New files.
45517
45518 2001-02-25  Paul Eggert  <eggert@twinsun.com>
45519
45520         The mkstemp replacement is taken from glibc 2.2.2, with some
45521         portability fixes for use outside glibc, as follows:
45522
45523         * lib/tempname.c (struct_stat64): New macro.
45524         (direxists, __gen_tempname): Use it.
45525         This avoids a portability problem with Solaris 8.
45526
45527         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
45528         (<stddef.h>, <stdint.h>, <string.h>):
45529         Include only if STDC_HEADERS || _LIBC.
45530         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
45531         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
45532         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
45533         (__set_errno): Define this macro if <errno.h> doesn't.
45534         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
45535         Define these macros if <stdio.h> doesn't.
45536         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
45537         Define these macros if <sys/stat.h>
45538         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
45539         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
45540         __xstat64): Define if not _LIBC.
45541         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
45542         (__gen_tempname): Invoke gettimeofday only if
45543         HAVE_GETTIMEOFDAY || _LIBC;
45544         otherwise, fall back on plain "time".
45545         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
45546
45547         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
45548
45549         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
45550
45551 2001-02-18  Paul Eggert  <eggert@twinsun.com>
45552
45553         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
45554
45555 2001-02-17  Paul Eggert  <eggert@twinsun.com>
45556
45557         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
45558         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
45559         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
45560         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
45561
45562 2001-02-17  Paul Eggert  <eggert@twinsun.com>
45563
45564         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
45565         Remove workaround macros for hosts that have mbrtowc but not
45566         mbstate_t, as we now insist on proper declarations for both
45567         before using mbrtowc.
45568
45569 2001-02-17  Jim Meyering  <meyering@lucent.com>
45570
45571         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
45572         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
45573         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
45574         UnixWare 7.1.1.
45575
45576         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
45577         rather than AC_CACHE_VAL.
45578
45579 2001-02-17  Jim Meyering  <meyering@lucent.com>
45580
45581         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
45582         around included file name.
45583
45584         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
45585
45586         * lib/strftime.c: Update from GNU libc (the only changes were to
45587         comments).
45588
45589 2001-02-17  Jim Meyering  <meyering@lucent.com>
45590
45591         * lib/regex.c: Update from libc.
45592
45593 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
45594
45595         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
45596         clash.
45597
45598 2001-02-16  Paul Eggert  <eggert@twinsun.com>
45599
45600         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
45601         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
45602         Reported by Mark Hounschell via Paul Eggert.
45603
45604 2001-02-07  Jim Meyering  <meyering@lucent.com>
45605
45606         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
45607
45608 2001-02-05  Jim Meyering  <meyering@lucent.com>
45609
45610         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
45611         it includes the patch required for `large file' support with at least
45612         HP-UX's 10.20 /bin/cc.
45613
45614 2001-02-03  Jim Meyering  <meyering@lucent.com>
45615
45616         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
45617         AS_IF, now that it works once again (mysteriously).
45618         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
45619
45620 2001-01-30  Jim Meyering  <meyering@lucent.com>
45621
45622         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
45623         * m4/chown.m4: Rename conftestchown to conftest.chown.
45624         * m4/rename.m4: s/conftestdir/conftest.d1/ and
45625         s/conftestdir2/conftest.d2/.
45626         * m4/utimes.m4: s/conftestdata/conftest.data/
45627         Inspired by Pavel Roskin's change in autoconf.
45628
45629 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
45630
45631         * lib/config.charset: Update for FreeBSD 4.2.
45632
45633 2001-01-27  Jim Meyering  <meyering@lucent.com>
45634
45635         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
45636         a use of AS_IF.
45637         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
45638
45639 2001-01-26  Jim Meyering  <meyering@lucent.com>
45640
45641         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
45642         quotearg.c includes it.
45643
45644 2001-01-26  Jim Meyering  <meyering@lucent.com>
45645
45646         * lib/quotearg.c: Include stddef.h.
45647         * lib/quote.c: Include stddef.h.
45648         Reported by Axel Kittenberger.
45649
45650         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
45651         line in double quotes so that it evokes a better diagnostic.
45652         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
45653         Reported by Axel Kittenberger.
45654
45655 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
45656
45657         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
45658         as if it was a `charset'.
45659
45660 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
45661
45662         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
45663         has const.
45664
45665 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
45666
45667         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
45668         to avoid a warning.  Add back 'const' to inptr.
45669
45670 2001-01-20  Jim Meyering  <meyering@lucent.com>
45671
45672         Be sure that headers are checked before used in code compiled
45673         for the type checks.
45674         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
45675         In place of that, invoke jm_CHECK_ALL_TYPES.
45676         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
45677         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
45678         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
45679         The check for ssize_t was mistakenly run before the test for unistd.h.
45680
45681         The configure-time check for stdbool.h was missing.
45682         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
45683         (jm_PREREQ_HASH): New function.
45684
45685 2001-01-17  Jim Meyering  <meyering@lucent.com>
45686
45687         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
45688         for autoconf-2.49c.
45689         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
45690
45691 2001-01-16  Jim Meyering  <meyering@lucent.com>
45692
45693         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
45694         From Bruno Haible.
45695
45696 2001-01-14  Jim Meyering  <meyering@lucent.com>
45697
45698         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
45699         foo and bar.  Create conftestdir/ in the script, not in the C code.
45700         Remove directories in the script, not in the C code.
45701         Remove conftestdir{,2} before trying to create the directory.
45702         Make the entire configure script fail if the mkdir fails.
45703
45704 2001-01-14  Jim Meyering  <meyering@lucent.com>
45705
45706         * lib/rename.c: New file.  From Volker Borchert.
45707         Include stdlib.h, string.h or strings.h, and xalloc.h.
45708         Use strip_trailing_slashes rather than open-coding it.
45709
45710 2001-01-03  Paul Eggert  <eggert@twinsun.com>
45711
45712         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
45713
45714 2001-01-03  Jim Meyering  <meyering@lucent.com>
45715
45716         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
45717         of local `inptr' to avoid warning with some system declarations of
45718         iconv.
45719
45720 2001-01-02  Volker Borchert  <bt@teknon.de>
45721
45722         * m4/rename.m4: New file.
45723         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
45724
45725 2001-01-01  Jim Meyering  <meyering@lucent.com>
45726
45727         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
45728         even on systems with utmpx.h.  It's necessary for the declaration of
45729         utmp's ut_user member.  Reported by Andreas Jaeger.
45730
45731         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
45732         available. They are required for the declarations of getgrgid and
45733         getpwuid resp.
45734         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
45735         Reported by Andreas Jaeger.
45736
45737 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
45738
45739         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
45740         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
45741         so `make install' also works in VPATH builds.
45742
45743 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
45744
45745         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
45746         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
45747         can be used in subdirectories.
45748
45749 2000-12-29  Paul Eggert  <eggert@twinsun.com>
45750
45751         * lib/modechange.c: Do not assume that mode_t uses the
45752         traditional octal encoding.  E.g. "chmod 1 FOO" should set
45753         the other-execute bit of FOO even if S_IXOTH != 1.
45754
45755         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
45756         WOTH, XOTH, ALLM): New macros.
45757         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
45758          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
45759         Use them.
45760         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
45761         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
45762         (mode_compile):
45763         No need to use uintmax_t; unsigned long is long enough.
45764         Don't bother to get suffix since we don't use it.
45765
45766 2000-12-26  Jim Meyering  <meyering@lucent.com>
45767
45768         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
45769         better with autoheader.
45770
45771 2000-12-24  Jim Meyering  <meyering@lucent.com>
45772
45773         * lib/hash.c (is_prime): Return explicit boolean values.
45774         (hash_get_first): Return NULL to appease Irix5.6's 89.
45775         Reported by Nelson Beebe.
45776
45777 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
45778
45779         * lib/localcharset.c (locale_charset): Add support for Win32.
45780
45781 2000-12-18  Paul Eggert  <eggert@twinsun.com>
45782
45783         * lib/physmem.h, lib/physmem.c: New files.
45784
45785         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
45786         (noinst_HEADERS): Add physmem.h.
45787
45788         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
45789         't' for compatibility with Solaris 8 sort.
45790
45791 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
45792
45793         * lib/config.charset: Add support for BeOS.
45794
45795 2000-12-17  Jim Meyering  <meyering@lucent.com>
45796
45797         * m4/dos.m4 (jm_AC_DOS): New file and macro.
45798         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
45799
45800 2000-12-16  Jim Meyering  <meyering@lucent.com>
45801
45802         This bug had a serious impact on chown: `chown N:M FILE' (for integer
45803         N and M) would have treated it like `chown N:N FILE'.
45804
45805         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
45806
45807 2000-12-16  Jim Meyering  <meyering@lucent.com>
45808
45809         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
45810         SHELLS_FILE to a file name that's useful on djgpp systems.
45811         Include stdlib.h.
45812         (ADDITIONAL_DEFAULT_SHELLS): Define.
45813         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
45814         Based mostly on a patch from Prashant TR.
45815
45816 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
45817
45818         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
45819         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
45820         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
45821
45822 2000-12-08  Andreas Schwab  <schwab@suse.de>
45823
45824         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
45825         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
45826
45827 2000-12-07  Jim Meyering  <meyering@lucent.com>
45828
45829         * lib/stripslash.c (ISSLASH): Define.
45830         (strip_trailing_slashes): Use ISSLASH rather than comparing against
45831         `/'.
45832         From Prashant TR.
45833
45834         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
45835         (dir_name_r): Declare this function as static.
45836         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
45837         manifest itself on a name containing a mix of slashes and
45838         backslashes.
45839         Make this function work with names starting with a DOS-style
45840         drive letter and colon prefix.
45841         (dir_name): Append `.' if necessary.
45842         Based mostly on patches from Prashant TR and Eli Zaretskii.
45843
45844         * lib/dirname.h (dir_name_r): Remove prototype.
45845
45846 2000-12-06  Paul Eggert  <eggert@twinsun.com>
45847
45848         * m4/off_t-format.m4: Remove this file.
45849         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
45850
45851 2000-12-06  Jim Meyering  <meyering@lucent.com>
45852
45853         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
45854         replacement strtoull, we may well need the replacement strtoul, too.
45855         Check for declarations of strtoul and strtoull.
45856         Check for strtol.  Mainly as a cue to cause automake to include
45857         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
45858         Check for limits.h -- strtol.c needs it.
45859
45860 2000-12-05  Jim Meyering  <meyering@lucent.com>
45861
45862         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
45863
45864 2000-12-04  Jim Meyering  <meyering@lucent.com>
45865
45866         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
45867         Also include memory.h, stdlib.h, unistd.h if appropriate.
45868         Reported by Andreas Jaeger (conflicting declaration of malloc).
45869
45870 2000-12-02  Jim Meyering  <meyering@lucent.com>
45871
45872         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
45873         * m4/jm-macros.m4 (jm_MACROS): require it.
45874
45875 2000-12-02  Jim Meyering  <meyering@lucent.com>
45876
45877         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
45878
45879 2000-12-01  Paul Eggert  <eggert@twinsun.com>
45880
45881         * lib/memrchr.c: Include <config.h> before any system include file.
45882
45883 2000-11-30  Jim Meyering  <meyering@lucent.com>
45884
45885         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
45886
45887 2000-11-30  Jim Meyering  <meyering@lucent.com>
45888
45889         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
45890
45891 2000-11-29  Paul Eggert  <eggert@twinsun.com>
45892
45893         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
45894
45895 2000-11-26  Jim Meyering  <meyering@lucent.com>
45896
45897         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
45898
45899 2000-11-22  Paul Eggert  <eggert@twinsun.com>
45900
45901         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
45902         size of (size_t) -1; it's not portable.
45903
45904 2000-11-17  Jim Meyering  <meyering@lucent.com>
45905
45906         * lib/strstr.c: Update from GNU libc.
45907
45908 2000-11-17  Akim Demaille  <akim@epita.fr>
45909
45910         * lib/obstack.h: Formatting changes.
45911         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
45912         prevent type checking.
45913         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
45914         cast the value to (void *): assigning a `foo *' to a `void *'
45915         variable is valid.
45916         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
45917
45918 2000-11-16  Jim Meyering  <meyering@lucent.com>
45919
45920         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
45921
45922 2000-11-11  Jim Meyering  <meyering@lucent.com>
45923
45924         * lib/error.c: Add a couple #includes, merging from GNU libc version.
45925
45926 2000-11-10  Jim Meyering  <meyering@lucent.com>
45927
45928         * lib/obstack.h: Update from GNU libc.
45929         * lib/obstack.c: Likewise.
45930
45931 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
45932
45933         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
45934
45935 2000-11-06  Paul Eggert  <eggert@twinsun.com>
45936
45937         * lib/getusershell.c (setusershell): Use rewind rather than
45938         fseek/fseeko, to avoid configuration hassles with fseeko.
45939         Don't bother opening SHELLS_FILE if shellstream is NULL;
45940         it's not necessary.
45941
45942 2000-11-05  Jim Meyering  <meyering@lucent.com>
45943
45944         * lib/makepath.h (make_dir): Declare.
45945         * lib/makepath.c (make_dir): Remove `static' attribute.
45946         Tweak a comment.
45947
45948 2000-11-04  Jim Meyering  <meyering@lucent.com>
45949
45950         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
45951
45952 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
45953
45954         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
45955         last one in a bucket, advance to the next bucket.
45956
45957 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
45958
45959         * lib/fnmatch.c: Do not comment out all the code if we are using
45960         the GNU C library, because in some cases we are replacing buggy
45961         code in the GNU C library itself.
45962
45963 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
45964
45965         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
45966         (regex_compile): Catch bogus \(\1\).
45967
45968 2000-10-30  Paul Eggert  <eggert@twinsun.com>
45969
45970         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
45971         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
45972         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
45973
45974 2000-10-30  Paul Eggert  <eggert@twinsun.com>
45975
45976         * lib/error.h, getline.h, modechange.h:
45977         Remove "2000" from Copyright line, as the file hasn't been
45978         changed this year other than in the copyright notice.
45979
45980         * lib/xalloc.h: Add "2000" to Copyright line, as this file
45981         was changed this year.
45982
45983 2000-10-29  Jim Meyering  <meyering@lucent.com>
45984
45985         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
45986         renaming.
45987         * m4/ls-mntd-fs.m4: Likewise
45988
45989 2000-10-29  Jim Meyering  <meyering@lucent.com>
45990
45991         * lib/xstat.in: Fix grammar in comment.
45992
45993 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
45994
45995         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
45996         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
45997         doesn't define __restrict_arr.
45998
45999 2000-10-28  Jim Meyering  <meyering@lucent.com>
46000
46001         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
46002         (jm_PREREQ_MEMCHR): New function.
46003
46004 2000-10-28  Jim Meyering  <meyering@lucent.com>
46005
46006         * lib/memchr.c: Update from libc.
46007         Adjust for portability:
46008         [HAVE_STDLIB_H]: Include stdlib.h.
46009         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
46010         Undef __memchr, too.
46011         [!weak_alias]: Define __memchr to memchr.
46012
46013         * lib/regex.c: Update from libc.
46014         * lib/regex.h: Likewise.
46015         * lib/getopt1.c: Likewise.
46016         * lib/memcmp.c: Likewise.
46017
46018         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
46019         Avoid using fseek, when possible -- it's broken by design.
46020         Patch by Ulrich Drepper.
46021
46022 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
46023
46024         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
46025         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
46026         Giving in to popular pressure to shut up the compiler with casts.
46027
46028 2000-10-26  Jim Meyering  <meyering@lucent.com>
46029
46030         * lib/strftime.c: Update from libc.
46031
46032 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
46033
46034         * regex.c: More `unsigned char' -> `re_char' changes.
46035         Also change several `int' into `re_wchar_t'.
46036         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
46037         (PUSH_FAILURE_POINTER): Don't cast any more.
46038         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
46039         We want GCC to complain, since this piece of code makes
46040         re_match non-reentrant, which *should* be fixed.
46041         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
46042         (EXTEND_BUFFER): Use RETALLOC.
46043         (SET_LIST_BIT): Don't cast.
46044         (re_wchar_t): New type.
46045         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
46046         that those two functions will always properly return.
46047         (IMMEDIATE_QUIT_CHECK): Cast to void.
46048         (analyse_first): Use recursion rather than an explicit stack.
46049         (re_compile_fastmap): Can't fail anymore.
46050         (re_search_2): Don't check re_compile_fastmap for failure.
46051         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
46052         Now also sets the new value (passed in a new argument).
46053         (re_match_2_internal): Use it.
46054         Also, use a new var `reg' of type size_t when looping through regs
46055         rather than reuse the inappropriate `mcnt'.
46056
46057 2000-10-25  Jim Meyering  <meyering@lucent.com>
46058
46059         * lib/obstack.c: Update from libc.
46060
46061 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
46062
46063         * regex.c (regex_compile): Change the way of handling a range from
46064         a char less than 256 to a char not less than 256.
46065
46066 2000-10-24  Andrew Innes  <andrewi@gnu.org>
46067
46068         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
46069         NT-Emacs only.
46070         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
46071         so that re_search functions only quit when callers expect them to.
46072
46073 2000-10-23  Jim Meyering  <meyering@lucent.com>
46074
46075         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
46076         wrong.  That set_locale call must not have any side effects.
46077         From Paul Eggert.
46078
46079 2000-10-22  Jim Meyering  <meyering@lucent.com>
46080
46081         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
46082         [CYCLIC]: Remove now-unused definition.
46083
46084         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
46085         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
46086         Suggestion from Ulrich Drepper.
46087
46088 2000-10-21  Jim Meyering  <meyering@lucent.com>
46089
46090         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
46091         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
46092         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
46093
46094 2000-10-21  Jim Meyering  <meyering@lucent.com>
46095
46096         * lib/dirname.c (memrchr): Declare if necessary.
46097         (dir_name): Remove the restriction that there be no
46098         trailing slashes.  Now, this code skips past them, effectively
46099         ignoring them.
46100         [TEST_DIRNAME] (main): New unit tests.
46101
46102         * lib/memrchr.c: New file from GNU libc.
46103         Undef __memrchr, too.
46104         [!weak_alias]: Define __memrchr to memrchr.
46105         Guard weak_alias use with `#ifdef weak_alias'.
46106
46107 2000-10-21  Jim Meyering  <meyering@lucent.com>
46108
46109         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
46110         (dir_name): Use dir_name_r.
46111         * lib/dirname.h (dir_name_r): Declare it.
46112
46113 2000-10-17  Jim Meyering  <meyering@lucent.com>
46114
46115         * lib/quote.h (PARAMS): Define and use.
46116         Reported by Akim Demaille.
46117
46118         * lib/getopt.c: Update from libc.
46119
46120 2000-10-16  Jim Meyering  <meyering@lucent.com>
46121
46122         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
46123         setlocale.
46124         From Jan Fedak.
46125
46126 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
46127
46128         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
46129
46130 2000-09-25  Jim Meyering  <meyering@lucent.com>
46131
46132         * lib/md5.h (rol): Define (from GnuPG).
46133
46134         * lib/sha.c: Give credit (GnuPG) where due.
46135         (M): Use rol rather than open-coding it.
46136         Add a FIXME comment.
46137
46138 2000-09-21  Jim Meyering  <meyering@lucent.com>
46139
46140         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
46141         Reported by Michael Stone.
46142
46143 2000-09-20  Jim Meyering  <meyering@lucent.com>
46144
46145         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
46146         (noinst_HEADERS): Add sha.h.
46147         Based on code from Scott G. Miller and from GnuPG.
46148
46149 2000-09-18  Jim Meyering  <meyering@lucent.com>
46150
46151         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
46152         LIBS. Otherwise, everyone ends up linking with -lelf for some
46153         configurations.
46154         Reported by Mike Stone.
46155
46156 2000-09-15  Jim Meyering  <meyering@lucent.com>
46157
46158         * lib/regex.c: Update from libc.
46159
46160 2000-09-10  Jim Meyering  <meyering@lucent.com>
46161
46162         * lib/getopt.c (_getopt_internal): Update from glibc.
46163
46164 2000-09-09  Jim Meyering  <meyering@lucent.com>
46165
46166         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
46167         think it should be used as a general replacement for isascii.
46168         * lib/fnmatch.c: Likewise.
46169         * lib/mbswidth.c: Likewise
46170         * lib/regex.c: Likewise.
46171
46172         Don't use atoi.
46173         * lib/userspec.c: Include sys/param.h and limits.h.
46174         Include xstrtol.h.
46175         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
46176         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
46177         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
46178         UID, GID.  Check range.
46179
46180 2000-09-06  Jim Meyering  <meyering@lucent.com>
46181
46182         * lib/getopt.c (_getopt_internal): Update from glibc.
46183
46184 2000-08-30  Jim Meyering  <meyering@lucent.com>
46185
46186         * lib/strftime.c: Merge in changes from GNU libc.
46187
46188 2000-08-26  Jim Meyering  <meyering@lucent.com>
46189
46190         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
46191         * m4/fpending.m4: New file.
46192
46193 2000-08-26  Jim Meyering  <meyering@lucent.com>
46194
46195         * lib/closeout.c: Include "__fpending.h".
46196         (close_stdout_status): Return right away if there's nothing to flush.
46197
46198         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
46199         * lib/__fpending.c: New file.
46200         * lib/__fpending.h: New file.
46201
46202 2000-08-20  Jim Meyering  <meyering@lucent.com>
46203
46204         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
46205         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
46206         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
46207
46208 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
46209
46210         Improve fileutils installation on systems where running
46211         programs (like install) can't be unlinked.
46212         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
46213         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
46214
46215 2000-08-07  Paul Eggert  <eggert@twinsun.com>
46216
46217         Standardize on "memory exhausted" instead of "Memory exhausted"
46218         or "virtual memory exhausted".
46219         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
46220         "virtual memory exhausted".
46221         * lib/same.c (same_name): Invoke xalloc_die instead of printing
46222         our own message.
46223         * lib/userspec.c (parse_user_spec): Likewise.
46224         * lib/bumpalloc.h: comment fix
46225         * lib/same.c, userspec.c: Include xalloc.h.
46226
46227         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
46228         not char *const and pointing to a constant array.
46229         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
46230         (xrealloc): Comment fix.
46231
46232         * lib/userspec.c (parse_user_spec):
46233         Don't translate a message until just before returning,
46234         to avoid unnecessary translation.
46235
46236 2000-08-07  Jim Meyering  <meyering@lucent.com>
46237
46238         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
46239         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
46240         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
46241         getgroups.c, gethostname.c, getopt.h, group-member.c,
46242         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
46243         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
46244         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
46245         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
46246         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
46247         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
46248         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
46249         yesno.c: Back out Copyright date changes for each file with no change
46250         this year.  This eases coordination with other programs using the same
46251         source code modules.  From Paul Eggert.
46252
46253 2000-08-06  Paul Eggert  <eggert@twinsun.com>
46254
46255         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
46256         not char, for compatibility with glibc 2.1.3 strftime.c.
46257
46258 2000-08-03  Greg McGary  <greg@mcgary.org>
46259
46260         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
46261         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
46262         (EXTEND_BUFFER): Use them.
46263
46264 2000-08-01  Jim Meyering  <meyering@lucent.com>
46265
46266         * lib/dirname.c (ISSLASH): Define.
46267         (BACKSLASH_IS_PATH_SEPARATOR): Define.
46268         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
46269         both `\' and `/' may be use as path separators.
46270         Based on a patch from Prashant TR.
46271
46272 2000-07-31  Paul Eggert  <eggert@twinsun.com>
46273
46274         * lib/quotearg.c (quotearg_n_options): Don't make the initial
46275         slot vector a constant, since it might get modified.
46276
46277 2000-07-31  Jim Meyering  <meyering@lucent.com>
46278
46279         * lib/xmalloc.c: Use `virtual memory exhausted', not
46280         `Memory exhausted'.
46281         * lib/obstack.c (print_and_abort): Likewise.
46282
46283 2000-07-30  Paul Eggert  <eggert@twinsun.com>
46284
46285         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
46286         buffer, so that the caller can always quote one small
46287         component of a "memory exhausted" message in slot 0.
46288         From a suggestion by Jim Meyering.
46289
46290 2000-07-30  Jim Meyering  <meyering@lucent.com>
46291
46292         * lib/makepath.c (make_path): Quote the other instance, too.
46293
46294         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
46295         (STATIC_BUF_SIZE): Define.
46296         (quotearg_n_options): Use only statically allocated storage when
46297         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
46298         than STATIC_BUF_SIZE.
46299
46300 2000-07-29  Jim Meyering  <meyering@lucent.com>
46301
46302         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
46303         * lib/dirname.c (dir_name): Likewise.
46304
46305         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
46306         `/'.
46307
46308         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
46309         (dir_name): Assert that there are no trailing slashes.
46310
46311 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
46312
46313         * lib/mbswidth.h (mbswidth): Add a flags argument.
46314         (mbswidth): New declaration.
46315         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
46316         * lib/mbswidth.c (mbswidth): Add a flags argument.
46317         (mbsnwidth): New function.
46318
46319 2000-07-24  Jim Meyering  <meyering@lucent.com>
46320
46321         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
46322
46323 2000-07-23  Paul Eggert  <eggert@twinsun.com>
46324
46325         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
46326
46327 2000-07-23  Paul Eggert  <eggert@twinsun.com>
46328
46329         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
46330         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
46331         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
46332         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
46333         invoke multibyte primitives.
46334
46335 2000-07-23  Paul Eggert  <eggert@twinsun.com>
46336
46337         * lib/quotearg.c:
46338         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
46339         so that mbstate_t is always defined.
46340
46341         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
46342         be 1 in at least one GCC installation, and this configuration
46343         error is likely to be common.  Ignoring MB_LEN_MAX hurts
46344         performance on hosts that have mbrtowc but have only unibyte
46345         locales, but I assume these hosts are rare.
46346
46347 2000-07-23  Paul Eggert  <eggert@twinsun.com>
46348
46349         * lib/mbswidth.c (_XOPEN_SOURCE):
46350         Don't define; this causes problems on Solaris 7.
46351         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
46352
46353 2000-07-23  Jim Meyering  <meyering@lucent.com>
46354
46355         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
46356         too: getgrgid, getpwuid, getuid.
46357
46358 2000-07-23  Jim Meyering  <meyering@lucent.com>
46359
46360         * lib/basename.c (base_name): Add an assertion.
46361
46362 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
46363
46364         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
46365         shadow its mbsinit function.
46366
46367 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
46368
46369         * lib/mbswidth.h: New file.
46370         * lib/mbswidth.c: New file.
46371         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
46372         (noinst_HEADERS): Add mbswidth.h.
46373
46374 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
46375
46376         * lib/config.charset: Add support for FreeBSD. Improve support for
46377         HP-UX and IRIX 6.
46378
46379 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
46380
46381         * m4/mbswidth.m4: New file.
46382         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
46383
46384 2000-07-15  Jim Meyering  <meyering@lucent.com>
46385
46386         * lib/makepath.c: Include quote.h.
46387         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
46388         corresponding argument in a `quote (...)' call.
46389         Give better diagnostics.
46390
46391         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
46392         (noinst_HEADERS): Add quote.h.
46393
46394         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
46395         from tar's src/misc.c.
46396         * lib/quote.h: New file.  Prototypes for same.
46397
46398 2000-07-14  Paul Eggert  <eggert@twinsun.com>
46399
46400         From a suggestion by Bruno Haible.
46401         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
46402         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
46403         to decide whether to define the BeOS workaround macro;
46404         this adjusts to the change to AC_MBSTATE_T.
46405
46406 2000-07-14  Jim Meyering  <meyering@lucent.com>
46407
46408         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
46409         jm_AC_TYPE_UINTMAX_T.
46410
46411 2000-07-13  Paul Eggert  <eggert@twinsun.com>
46412
46413         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
46414
46415         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
46416         quotearg_buffer_restyled): Add support for
46417         clocale_quoting_style.  Undo previous change to
46418         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
46419         and "{RIGHT QUOTATION MARK}" msgids.
46420
46421 2000-07-10  Paul Eggert  <eggert@twinsun.com>
46422
46423         From a suggestion by Bruno Haible.
46424         * m4/mbstate_t.m4 (AC_MBSTATE_T):
46425         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
46426         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
46427         and mbstate_t, to a single-part test that simply defines mbstate_t.
46428         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
46429         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
46430
46431 2000-07-10  Jim Meyering  <meyering@lucent.com>
46432
46433         * m4/strerror_r.m4: Mirror the correction made in autoconf.
46434
46435         * m4/gnu-source.m4: Output to confdefs.h directly.
46436         Suggestion from Akim Demaille.
46437
46438 2000-07-09  Paul Eggert  <eggert@twinsun.com>
46439
46440         The old behavior of quoting `like this' doesn't look good with
46441         newer, ISO-style fonts.  See:
46442         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
46443
46444         Instead, quote "like this" by default.  Let the translator
46445         tailor the locale-specific quoting behavior by providing
46446         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
46447
46448         * lib/quotearg.c (N_): New macro.
46449         (gettext_default): New function.
46450         (quotearg_buffer_restyled): Use
46451         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
46452         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
46453
46454 2000-07-09  Jim Meyering  <meyering@lucent.com>
46455
46456         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
46457         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
46458
46459         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
46460         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
46461
46462 2000-07-09  Jim Meyering  <meyering@lucent.com>
46463
46464         * lib/Most files: Update copyright dates to include 2000.
46465
46466 2000-07-08  Jim Meyering  <meyering@lucent.com>
46467
46468         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
46469         if not defined.
46470         (xgethostname): Remove now-unnecessary #ifdef.
46471         Move declaration of `err' into loop where it's used.
46472
46473 2000-07-05  Paul Eggert  <eggert@twinsun.com>
46474         and Bruno Haible  <haible@clisp.cons.org>
46475
46476         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
46477         only if the test for an object-type mbstate_t fails.  This
46478         prevents us from mistakenly reporting that mbstate_t is a
46479         system object type after we "#define mbstate_t int" to work
46480         around its lack.
46481
46482 2000-07-05  Paul Eggert  <eggert@twinsun.com>
46483         and Bruno Haible  <haible@clisp.cons.org>
46484
46485         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
46486
46487 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46488
46489         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
46490         to strerror_r.
46491         Include <ctype.h> for use of isalpha.
46492
46493 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46494
46495         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
46496         by allocating a larger buffer. Test the gethostname return value for
46497         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
46498         returns an error and ENAMETOOLONG isn't defined.
46499
46500 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
46501
46502         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
46503         dimension.
46504
46505 2000-07-04  Jim Meyering  <meyering@lucent.com>
46506
46507         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
46508         of the deprecated AC_CHECKING.
46509
46510 2000-07-04  Jim Meyering  <meyering@lucent.com>
46511
46512         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
46513         Reported by Bruno Haible.
46514
46515 2000-07-04  Jim Meyering  <meyering@lucent.com>
46516
46517         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
46518         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
46519         lacks mbrtowc.
46520
46521 2000-07-03  Paul Eggert  <eggert@twinsun.com>
46522
46523         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
46524         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
46525
46526 2000-07-03  Paul Eggert  <eggert@twinsun.com>
46527         and Bruno Haible  <haible@clisp.cons.org>
46528
46529         * lib/quotearg.c (mbrtowc):
46530         Assign to *pwc, and return 1 only if result is nonzero.
46531         (iswprint): Use ISPRINT when substituting our own mbrtowc.
46532
46533 2000-07-03  Jim Meyering  <meyering@lucent.com>
46534
46535         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
46536
46537 2000-07-03  Jim Meyering  <meyering@lucent.com>
46538
46539         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
46540         This is necessary to get a definition of e.g., UTMP_FILE on
46541         HP-UX 10.20.
46542         From Bob Proulx.
46543
46544 2000-07-02  Jim Meyering  <meyering@lucent.com>
46545
46546         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
46547
46548         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
46549         AC_LIBOBJ(function_name).
46550         * m4/chown.m4: Likewise.
46551         * m4/fnmatch.m4: Likewise.
46552         * m4/ftruncate.m4: Likewise.
46553         * m4/getgroups.m4: Likewise.
46554         * m4/getline.m4: Likewise.
46555         * m4/group-member.m4: Likewise.
46556         * m4/jm-macros.m4: Likewise.
46557         * m4/lstat.m4: Likewise.
46558         * m4/malloc.m4: Likewise.
46559         * m4/memcmp.m4: Likewise.
46560         * m4/nanosleep.m4: Likewise.
46561         * m4/putenv.m4: Likewise.
46562         * m4/realloc.m4: Likewise.
46563         * m4/regex.m4: Likewise.
46564         * m4/stat.m4: Likewise.
46565         * m4/strftime.m4: Likewise.
46566
46567 2000-07-02  Jim Meyering  <meyering@lucent.com>
46568
46569         * lib/quotearg.c (mbstate_t): Don't define here.
46570
46571 2000-07-02  Jim Meyering  <meyering@lucent.com>
46572
46573         * lib/nanosleep.c (SIGCONT): Define if not already defined.
46574
46575 2000-07-01  Jim Meyering  <meyering@lucent.com>
46576
46577         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
46578
46579 2000-07-01  Jim Meyering  <meyering@lucent.com>
46580
46581         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
46582         problem.
46583
46584 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
46585
46586         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
46587         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
46588
46589 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
46590
46591         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
46592         per change in ../m4/ls-mntd-fs.m4.
46593         (read_filesystem_list): Ignore symbolic links.
46594
46595 2000-06-29  Jim Meyering  <meyering@lucent.com>
46596
46597         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
46598         for declaration of strcmp.
46599
46600         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
46601
46602         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
46603         Avoid warning by casting result to `char *' to remove `const'.
46604
46605 2000-06-28  Jim Meyering  <meyering@lucent.com>
46606
46607         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
46608         included by quotearg.c, for which we perform this test.  From
46609         Bruno Haible.
46610
46611 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
46612
46613         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
46614         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
46615         <utmpx.h> exists, put readutmp.o into LIBOBJS.
46616
46617 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
46618
46619         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
46620
46621 2000-06-26  Paul Eggert  <eggert@twinsun.com>
46622
46623         savedir now sets errno on failure and invokes xmalloc to get memory.
46624         Fix a couple of other minor bugs while we're at it.
46625
46626         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
46627         (NAMLEN): Remove macro.
46628         (malloc, realloc): Remove decls.
46629         (stpcpy): Likewise.
46630         ("xalloc.h"): Include.
46631         (NAME_SIZE_DEFAULT): New macro.
46632         (savedir): Use xmalloc / xrealloc to allocate memory.
46633         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
46634         Skip "" directory entries.
46635         Use strlen to calculate directory entry length, since the old method
46636         is rarely used these days and isn't worth supporting.
46637         Don't use a pointer after freeing it.
46638         Check for integer overflow when calculating allocation size.
46639         Use memcpy to copy entries, instead of stpcpy.
46640         Set errno properly when returning NULL.
46641         Check for readdir error.
46642
46643 2000-06-26  Jim Meyering  <meyering@lucent.com>
46644
46645         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
46646
46647 2000-06-25  Jim Meyering  <meyering@lucent.com>
46648
46649         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
46650         Linux header bug when _XOPEN_SOURCE is defined to 500.
46651
46652 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
46653
46654         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
46655         deficiency.
46656
46657 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
46658
46659         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
46660         Include xalloc.h.
46661         Don't include <stdlib.h>.  Don't declare malloc, realloc.
46662
46663 2000-06-24  Jim Meyering  <meyering@lucent.com>
46664
46665         * m4/strerror_r.m4: Revive this file -- to try out an experimental
46666         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
46667         for which strerror does return char*, but which lacks a conveniently
46668         accessible declaration of the function.  If the compile-test says
46669         strerror_r doesn't work, then resort to a `run'-test that works on
46670         BeOS and segfaults on DEC Unix.
46671
46672 2000-06-24  Jim Meyering  <meyering@lucent.com>
46673
46674         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
46675
46676 2000-06-23  Paul Eggert  <eggert@twinsun.com>
46677
46678         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
46679         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
46680
46681 2000-06-23  Paul Eggert  <eggert@twinsun.com>
46682
46683         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
46684         (mbrtowc, mbstate_t): Define substitutes if
46685         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
46686         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
46687         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
46688
46689 2000-06-23  Jim Meyering  <meyering@lucent.com>
46690
46691         * m4/afs.m4: Add missing AC_MSG_RESULT.
46692         Reported by Bruno Haible.
46693
46694         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
46695         Suggestion from Bruno Haible.
46696
46697 2000-06-23  Jim Meyering  <meyering@lucent.com>
46698
46699         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
46700
46701 2000-06-21  Jim Meyering  <meyering@lucent.com>
46702
46703         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
46704
46705 2000-06-21  Jim Meyering  <meyering@lucent.com>
46706
46707         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
46708         (noinst_HEADERS): Add getstr.h.
46709
46710         * lib/getline.c (getstr): Move into a separate file.
46711         * lib/getstr.c (getstr): New file, extracted from getline.c, with
46712         the following changes: new parameter, delim2; both delim[12]
46713         parameters have type `int', not `char'.  The latter would lose
46714         with 8-bit delimiters.
46715         * lib/getstr.h: New file.
46716
46717 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46718
46719         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
46720         than 1024, return a memory chunk of least possible size, instead
46721         of size PATH_MAX + 2. In the loop, increment the size proportionally.
46722         Use free/xmalloc instead of xrealloc to avoid copying for very long
46723         paths.
46724
46725 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46726
46727         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
46728         the empty string.
46729
46730 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
46731
46732         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
46733         address, not strdup.  Include <stdlib.h> and don't declare free().
46734
46735 2000-06-19  Jim Meyering  <meyering@lucent.com>
46736
46737         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
46738
46739 2000-06-18  Jim Meyering  <meyering@lucent.com>
46740
46741         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
46742
46743         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
46744         `checking whether...' message to be consistent with that of the
46745         lstat test.
46746
46747 2000-06-18  Jim Meyering  <meyering@lucent.com>
46748
46749         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
46750         Besides, these days every porting target provides a mkdir function.
46751
46752         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
46753         needed. (this snippet comes from src/system.h).
46754
46755 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
46756
46757         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
46758
46759 2000-06-15  Paul Eggert  <eggert@twinsun.com>
46760
46761         * lib/human.c (adjust_value): New function.
46762         (human_readable_inexact): Apply rounding style even when
46763         printing approximate values.
46764
46765 2000-06-14  Paul Eggert  <eggert@twinsun.com>
46766
46767         * lib/human.c (human_readable_inexact): Allow an input block
46768         size that is not a multiple of the output block size, and vice versa.
46769         Reported by Piergiorgio Sartor.
46770
46771 2000-06-14  Paul Eggert  <eggert@twinsun.com>
46772
46773         * lib/getdate.y (get_date): Apply relative times after time
46774         zone indicator, not before.  Reported by Todd A. Jacobs.
46775
46776 2000-06-13  Jim Meyering  <meyering@lucent.com>
46777
46778         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
46779
46780         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
46781
46782 2000-06-12  Paul Eggert  <eggert@twinsun.com>
46783
46784         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
46785
46786 2000-06-12  Jim Meyering  <meyering@lucent.com>
46787
46788         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
46789         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
46790         optional argument.
46791         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
46792         the optional argument, `lib'.
46793
46794 2000-06-08  Jim Meyering  <meyering@lucent.com>
46795
46796         * m4/largefile.m4: Remove file (now that it's part of autoconf).
46797
46798 2000-06-04  Paul Eggert  <eggert@twinsun.com>
46799
46800         Rewrite largefile configuration so that we don't need to run
46801         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
46802         AC_CANONICAL_HOST in configure.in -- jmm]
46803
46804         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
46805         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
46806         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
46807         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
46808         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
46809         All uses changed.
46810         Instead of inspecting the output of getconf, try to compile the
46811         test program without and with the macro definition.
46812         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
46813         for getconf.  Instead, check for the needed flags by compiling
46814         test programs.
46815
46816 2000-06-04  Paul Eggert  <eggert@twinsun.com>
46817
46818         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
46819
46820 2000-06-04  Jim Meyering  <meyering@lucent.com>
46821
46822         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
46823         SunOS 4.1.4 for which gid_t is an unsigned type.
46824
46825 2000-06-03  Jim Meyering  <meyering@lucent.com>
46826
46827         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
46828         now that autoconf requires that.
46829
46830         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
46831         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
46832         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
46833
46834 2000-06-03  Jim Meyering  <meyering@lucent.com>
46835
46836         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
46837
46838 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
46839
46840         * m4/glibc21.m4: New file.
46841         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
46842
46843 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
46844
46845         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
46846         newer, don't install charset.alias.
46847         * lib/config.charset: Change the Linux/glibc rules so they become empty
46848         on glibc-2.1 or newer.
46849
46850 2000-06-02  Jim Meyering  <meyering@lucent.com>
46851
46852         * lib/mountlist.c: Back out last change.  Instead, do this...
46853         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
46854         me_dummy member using the same `ignore'-testing code.
46855         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
46856         fs_type strings.
46857         From Mark D. Roth.
46858
46859 2000-05-29  Jim Meyering  <meyering@lucent.com>
46860
46861         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
46862         mounts with the `ignore' attribute.  Based on a patch from
46863         Mark D. Roth.
46864
46865 2000-05-28  Jim Meyering  <meyering@lucent.com>
46866
46867         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
46868         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
46869         * m4/stat.m4: Likewise.
46870         * m4/lstat.m4: Likewise.
46871         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
46872
46873         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
46874         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
46875
46876 2000-05-26  Jim Meyering  <meyering@lucent.com>
46877
46878         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
46879
46880 2000-05-24  Jim Meyering  <meyering@lucent.com>
46881
46882         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
46883         autoconf requires that.
46884         * m4/lib-check.m4: Likewise.
46885         * m4/jm-macros.m4: Likewise.
46886         * m4/strftime.m4: Likewise.
46887
46888         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
46889         AC_CHECK_DECLS, now that autoconf requires that.
46890
46891 2000-05-22  Jim Meyering  <meyering@lucent.com>
46892
46893         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
46894         * m4/lstat.m4: Likewise.
46895
46896 2000-05-22  Jim Meyering  <meyering@lucent.com>
46897
46898         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
46899
46900 2000-05-20  Jim Meyering  <meyering@lucent.com>
46901
46902         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
46903         (jm_PREREQ): Use it.
46904
46905 2000-05-18  Jim Meyering  <meyering@lucent.com>
46906
46907         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
46908         back, too, since it may have been modified by allocate_entry.
46909         (hash_delete): Rewrite to use neither the assignment operator
46910         nor the comma operator in an if-expression.
46911
46912 2000-05-15  Paul Eggert  <eggert@twinsun.com>
46913
46914         * lib/closeout.c:
46915         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
46916         Remove; no longer needed.
46917         "quotearg.h": Add include.
46918         (file_name): Do not bother to explicitly initialize to NULL; it's less
46919         efficient on some hosts.
46920         (close_stdout_status): Remove test as to whether stdout was already
46921         closed; it breaks for the case "echo x | sort >&-".
46922         Quote file name colons.
46923         Do not assume that _("write error") lacks format strings.
46924
46925 2000-05-15  Jim Meyering  <meyering@lucent.com>
46926
46927         * lib/version-etc.c (version_etc_copyright): Update the copyright
46928         string used in all --version output.
46929
46930 2000-05-14  Jim Meyering  <meyering@lucent.com>
46931
46932         * lib/closeout.c (close_stdout_set_file_name): New function.
46933         (close_stdout_status): Use new file-scoped global.
46934         Return right away if fstat says the stdout file descriptor is invalid.
46935         * lib/closeout.h (close_stdout_set_file_name): Declare.
46936
46937 2000-05-10  Jim Meyering  <meyering@lucent.com>
46938
46939         * lib/closeout.c [default_exit_status]: New file-scoped variable.
46940         (close_stdout_set_status): New function.
46941         * lib/closeout.h (close_stdout_set_status): Declare.
46942
46943 2000-05-09  Jim Meyering  <meyering@lucent.com>
46944
46945         * m4/gettext.m4: Rename this...
46946         * m4/libintl.m4: ...to this.
46947
46948 2000-05-08  Jim Meyering  <meyering@lucent.com>
46949
46950         * lib/long-options.c: Don't include closeout.h.
46951         (parse_long_options): Don't call close_stdout for --version.
46952
46953 2000-05-06  Paul Eggert  <eggert@twinsun.com>
46954
46955         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
46956         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
46957         2.1.3 bug.  This avoids a clash when files like regex.c define
46958         _GNU_SOURCE.
46959
46960 2000-05-06  Jim Meyering  <meyering@lucent.com>
46961
46962         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
46963         (AC_REPLACE_FUNCS): Add strnlen.
46964
46965         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
46966         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
46967
46968         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
46969         AC_SEARCH_LIBS call for nanosleep.
46970         (LIB_NANOSLEEP): Set and AC_SUBST.
46971
46972 2000-05-06  Jim Meyering  <meyering@lucent.com>
46973
46974         * lib/strnlen.c: Undefine __strnlen and strnlen.
46975         [!weak_alias]: Define __strnlen to strnlen.
46976
46977         * lib/atexit.c: New file, from libiberty.
46978
46979 2000-05-06  Jim Meyering  <meyering@lucent.com>
46980
46981         * lib/closeout.c (close_stdout_status): Also check for errors on the
46982         stderr stream.
46983
46984 2000-05-05  Jim Meyering  <meyering@lucent.com>
46985
46986         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
46987         AC_SEARCH_LIBS call for clock_gettime.
46988         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
46989
46990         * m4/search-libs.m4: Update from autoconf.
46991
46992         su doesn't work on Solaris 2.6.
46993         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
46994         <shadow.h>.  Reported by Dragos Harabor.
46995
46996 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
46997
46998         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
46999         memcpy instead of xmalloc, xrealloc, path_concat.
47000         (locale_charset): Treat empty environment variables as absent.
47001         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
47002
47003 2000-05-04  Jim Meyering  <meyering@lucent.com>
47004
47005         * lib/getopt.c: Update from glibc.
47006         * lib/obstack.c: Likewise.
47007         * lib/obstack.h: Likewise.
47008         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
47009         file
47010
47011         * lib/regex.h: Likewise.
47012         * lib/strndup.c: Likewise.
47013         * lib/strnlen.c: New file, from glibc.
47014
47015 2000-05-03  Jim Meyering  <meyering@lucent.com>
47016
47017         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
47018
47019 2000-05-02  Paul Eggert  <eggert@twinsun.com>
47020
47021         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
47022         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
47023         compile-time test, rather than inspecting host and OS, to
47024         decide whether to define _LARGEFILE_SOURCE.
47025
47026 2000-05-01  Jim Meyering  <meyering@lucent.com>
47027
47028         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
47029
47030         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
47031         Based on a patch from Bruno Haible.
47032
47033 2000-05-01  Jim Meyering  <meyering@lucent.com>
47034
47035         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
47036
47037 2000-04-29  Jim Meyering  <meyering@lucent.com>
47038
47039         * lib/path-concat.c: Declare strdup only if it's not defined.
47040         * lib/canon-host.c: Likewise.
47041
47042 2000-04-28  Jim Meyering  <meyering@lucent.com>
47043
47044         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
47045         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
47046         is included first, then limits.h is included by locale.h by libintl.h.
47047         From John David Anglin.
47048
47049 2000-04-25  Jim Meyering  <meyering@lucent.com>
47050
47051         * lib/makepath.c (S_IRWXUGO): Define.
47052         (make_path): Always perform explicit chmod if MODE specifies any
47053         of the `special' permission bits.  Prompted by a bug report against
47054         install from Mate Wierdl and Joost van Baal.
47055
47056 2000-04-18  Jim Meyering  <meyering@lucent.com>
47057
47058         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
47059         (jm_PREREQ): Use it.
47060
47061 2000-04-18  Jim Meyering  <meyering@lucent.com>
47062
47063         * lib/README: New file.
47064
47065         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
47066         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
47067
47068 2000-04-17  Jim Meyering  <meyering@lucent.com>
47069
47070         Get it right :-)
47071         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
47072         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
47073         Suggestion from Akim Demaille.
47074
47075 2000-04-17  Jim Meyering  <meyering@lucent.com>
47076
47077         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
47078         the definition of it to rpl_strftime also defined-away the system's
47079         declaration.
47080
47081 2000-04-15  Jim Meyering  <meyering@lucent.com>
47082
47083         Use `C' to denote so-called `contiguous' files, the same way
47084         that tar does.
47085         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
47086         (ftypelet): Use S_ISCTG.
47087         From Michael Deutschmann.
47088
47089 2000-04-14  Jim Meyering  <meyering@lucent.com>
47090
47091         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
47092         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
47093         clobbered.
47094
47095 2000-04-14  Jim Meyering  <meyering@lucent.com>
47096
47097         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
47098
47099 2000-04-13  Jim Meyering  <meyering@lucent.com>
47100
47101         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
47102         AH_VERBATIM to insert required #ifndef into config.h.in.
47103         Suggestion from Akim Demaille.
47104
47105 2000-04-12  Jim Meyering  <meyering@lucent.com>
47106
47107         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
47108         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
47109         Christian Krackowizer.
47110
47111         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
47112         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
47113         (AC_SYS_LARGEFILE): Require.
47114         (AM_C_PROTOTYPES): Require.
47115
47116 2000-04-08  Jim Meyering  <meyering@lucent.com>
47117
47118         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
47119         names don't conflict.  Reported by Eli Zaretskii.
47120
47121 2000-04-07  Jim Meyering  <meyering@lucent.com>
47122
47123         * lib/putenv.c: Move inclusion of errno.h so it follows that of
47124         sys/types.h, to work around system header problems on AIX 3.2.5.
47125         From Bruno Haible.
47126
47127 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
47128
47129         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
47130         bug.  Deal with the different error behavior of Irix iconv.
47131
47132 2000-04-05  Paul Eggert  <eggert@twinsun.com>
47133
47134         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
47135         IRIX if the installer said otherwise.
47136
47137 2000-04-05  Jim Meyering  <meyering@lucent.com>
47138
47139         Portability tweaks required for ultrix4.3.
47140         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
47141         (jm_CHECK_DECLS): Add getutent to the list of functions.
47142         (_jm_DECL_HEADERS): Add utmpx.h.
47143         From John David Anglin.
47144
47145         * m4/strftime.m4: Back out the 2000-04-02 change.
47146         Instead of that change, simply undefine putenv in the test program.
47147
47148 2000-04-05  Jim Meyering  <meyering@lucent.com>
47149
47150         Portability tweaks required for ultrix4.3.
47151         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
47152         getutent.
47153         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
47154         * lib/canon-host.c: Declare strdup.
47155         * lib/path-concat.c: Likewise.
47156         From John David Anglin.
47157
47158 2000-04-04  Jim Meyering  <meyering@lucent.com>
47159
47160         Be more DOS 8.3-friendly.
47161         * lib/ref-add.sin: Renamed from ref-add.sed.in.
47162         * lib/ref-del.sin: Renamed from ref-del.sed.in.
47163         * lib/Makefile.am: Reflect renaming.
47164         Reported by Eli Zaretskii.
47165
47166         Use a temporary file name that won't clash with `charset.alias'
47167         in the DOS 8.3 name space.
47168         * lib/Makefile.am (charset_tmp): Define.
47169         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
47170         (uninstall-local): Likewise.
47171         Reported by Eli Zaretskii.
47172
47173 2000-04-03  Jim Meyering  <meyering@lucent.com>
47174
47175         * m4/gettext.m4: Fix typo in comment.
47176
47177         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
47178         textutils/configure.in).  Suggestion from Paul Eggert.
47179         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
47180
47181 2000-04-02  Paul Eggert  <eggert@twinsun.com>
47182
47183         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
47184         variable in the shell rather than using putenv, which isn't
47185         portable.  This avoids the configure-time inter-test dependency
47186         on the potentially-renamed putenv function.
47187
47188 2000-03-30  Paul Eggert  <eggert@twinsun.com>
47189
47190         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
47191         before checking struct stat.st_blksize, so that
47192         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
47193
47194 2000-03-29  Paul Eggert  <eggert@twinsun.com>
47195
47196         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
47197         since strftime.c uses HAVE_STRFTIME to decide whether to use
47198         the underlying strftime.
47199
47200 2000-03-29  Paul Eggert  <eggert@twinsun.com>
47201
47202         * lib/time/strftime.c (my_strftime): Make sure we call the system
47203         strftime, not ourselves, when invoking the underlying strftime.
47204
47205 2000-03-24  Jim Meyering  <meyering@lucent.com>
47206
47207         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
47208         (charset_alias): Define.
47209         (install-exec-local): Factor out common code.
47210         (uninstall-local): Split lines longer than 80.
47211         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
47212         (SUFFIXES): Define.
47213         (.sed.in.sed): New rule.  Don't redirect directly to $@.
47214         (CLEANFILES): Add ref-add.sed and ref-del.sed.
47215
47216 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
47217
47218         * lib/config.charset: Output a line containing "Packages using this
47219         file".
47220         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
47221         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
47222         ref-del.sed): New rules.
47223
47224 2000-03-17  Jim Meyering  <meyering@lucent.com>
47225
47226         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
47227         Otherwise, include <strings.h>
47228
47229 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
47230
47231         * lib/unicodeio.c (utf8_wctomb): New function.
47232         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
47233         format instead of in UCS-4 with platform dependent endianness.
47234
47235 2000-03-10  Jim Meyering  <meyering@lucent.com>
47236
47237         * m4/lib-check.m4: Look for getspnam in -lgen, too.
47238         From Marco Franzen.
47239
47240 2000-03-07  Paul Eggert  <eggert@twinsun.com>
47241
47242         * lib/savedir.c (savedir): Work even if directory size is
47243         negative; this can happen with some screwy NFS configurations.
47244
47245 2000-03-06  Jim Meyering  <meyering@lucent.com>
47246
47247         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
47248         if it's NULL (because we ran out of memory).  From Bruno Haible.
47249
47250 2000-03-05  Jim Meyering  <meyering@lucent.com>
47251
47252         * lib/localcharset.c ("path-concat.h"): Include.
47253         (get_charset_aliases): Use path_concat instead of ANSI string
47254         concatenation.
47255
47256         * lib/unicodeio.h (PARAMS): Define.
47257         Use it to guard prototype.
47258
47259 2000-03-04  Jim Meyering  <meyering@lucent.com>
47260
47261         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
47262         for lib/localcharset.c.
47263
47264 2000-03-04  Jim Meyering  <meyering@lucent.com>
47265
47266         * lib/Makefile.am (install-exec-local): Create $(libdir) before
47267         installing into it.
47268         (uninstall-local): Uncomment this rule so `make distcheck' works
47269         once again.
47270
47271         * lib/unicodeio.c (<errno.h>): Include it.
47272         (errno): Declare if not defined.
47273
47274         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
47275
47276         * lib/config.charset: New version, incorporating remarks from a linux
47277         i18n mailing list.  From Bruno Haible.
47278
47279 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
47280
47281         * m4/codeset.m4: New file.
47282         * m4/iconv.m4: New file.
47283         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
47284
47285 2000-03-03  Jim Meyering  <meyering@lucent.com>
47286
47287         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
47288
47289 2000-03-02  Jim Meyering  <meyering@lucent.com>
47290
47291         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
47292         the messages come out on separate lines.
47293
47294         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
47295         rather than jm_CHECK_DECLARATIONS.
47296         * m4/decl.m4: Remove now-unused file.
47297
47298         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
47299         geteuid.
47300
47301 2000-03-02  Jim Meyering  <meyering@lucent.com>
47302
47303         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
47304
47305 2000-03-01  Jim Meyering  <meyering@lucent.com>
47306
47307         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
47308         * lib/unicodeio.c: Likewise.
47309
47310 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
47311
47312         * lib/config.charset: New file.
47313         * lib/localcharset.c: New file.
47314         * lib/unicodeio.h, lib/unicodeio.c: New files.
47315         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
47316         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
47317         (noinst_HEADERS): Add unicodeio.h.
47318         (all-local, install-exec-local, charset.alias): New targets.
47319
47320 2000-02-28  Paul Eggert  <eggert@twinsun.com>
47321
47322         * lib/quotearg.c (ALERT_CHAR): New macro.
47323         (quotearg_buffer_restyled): Use it.
47324
47325 2000-02-27  Jim Meyering  <meyering@lucent.com>
47326
47327         * m4/check-decl.m4: Add getenv to the list.
47328
47329 2000-02-27  Jim Meyering  <meyering@lucent.com>
47330
47331         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
47332         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
47333
47334         * lib/backupfile.c: Guard inclusion of stdlib.h with
47335         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
47336         Declare malloc if needed.
47337
47338         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
47339         `#ifndef HAVE_DECL..'
47340         now that autoconf always defines the HAVE_DECL_ symbols.
47341         * lib/human.c: Likewise.
47342         * lib/same.c: Likewise.
47343         * lib/strtoumax.c: Likewise.
47344
47345         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
47346         declaration check was not run.
47347         * lib/hash.c: Likewise.
47348         * lib/human.c: Likewise.
47349         * lib/same.c: Likewise.
47350         * lib/strtoumax.c: Likewise.
47351
47352         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
47353         `.', then first look up the entire `.'-containing string as a login
47354         name.
47355
47356 2000-02-23  Jim Meyering  <meyering@lucent.com>
47357
47358         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
47359         in place of my hack.
47360
47361 2000-02-18  Paul Eggert  <eggert@twinsun.com>
47362
47363         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
47364         (textint): New typedef.
47365         (parser_control): Member year changed from int to textint.
47366         All uses changed.
47367         (YYSTYPE): Removed; replaced by %union with int and textint members.
47368         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
47369         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
47370         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
47371         (tSNUMBER, tUNUMBER): Now of type <textintval>.
47372         (date, number, to_year): Use width of number in digits, not its value,
47373         to determine whether it's a 2-digit year, or a 2-digit time.
47374         (yylex): Store number of digits of numeric tokens.
47375         Reported by John Kendall.
47376
47377         (parser_control): Changed from struct parser_control to typedef (for
47378         consistency).  All uses changed.
47379
47380         (tID): Removed; not used.
47381         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
47382
47383 2000-02-14  Paul Eggert  <eggert@twinsun.com>
47384
47385         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
47386         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
47387
47388 2000-02-12  Jim Meyering  <meyering@lucent.com>
47389
47390         * lib/userspec.c (ISDIGIT): Define it.
47391         (isdigit): Remove definition.
47392         (is_number): Use ISDIGIT, not isdigit.
47393         <libintl.h>: Include.
47394         (_ and N_): Define.
47395         (parse_user_spec): Mark translatable strings.
47396
47397 2000-02-10  Jim Meyering  <meyering@lucent.com>
47398
47399         With these changes, nanosleep.[ch] are finally enough like the other
47400         lib/* replacement files to compile on a few more losing systems.
47401
47402         * lib/nanosleep.h: Don't include config.h.
47403         Remove prototype from declaration of nanosleep.
47404         (PARAMS): Remove now-unneeded definition.
47405         * lib/nanosleep.c: #undef nanosleep.
47406         (rpl_nanosleep): Rename from nanosleep.
47407
47408 2000-02-10  Jim Meyering  <meyering@lucent.com>
47409
47410         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
47411         gnu_nanosleep to rpl_nanosleep.
47412
47413 2000-02-09  Jim Meyering  <meyering@lucent.com>
47414
47415         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
47416         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
47417
47418 2000-02-08  Akim Demaille  <akim@epita.fr>
47419
47420         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
47421         `[' and `]' and remove uses of `changequote'.
47422         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
47423         (AC_SYS_LARGEFILE): Likewise.
47424         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
47425         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
47426         of changequote.
47427         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
47428         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
47429         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
47430         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
47431
47432 2000-02-05  Jim Meyering  <meyering@lucent.com>
47433
47434         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
47435         Remove explicit use of AC_HEADER_TIME.  It is required by
47436         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
47437         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
47438         in autoconf whereby the expansion of the latter ended up preceding
47439         the expansion of its prerequisite, AC_HEADER_TIME.
47440         Reported by Volker Borchert.
47441
47442 2000-02-03  Jim Meyering  <meyering@lucent.com>
47443
47444         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
47445
47446 2000-02-03  Jim Meyering  <meyering@lucent.com>
47447
47448         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
47449         rather than with `#if HAVE_UTMPNAME'.
47450
47451 2000-02-02  Jim Meyering  <meyering@lucent.com>
47452
47453         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
47454         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
47455         Reported by Eli Zaretskii.
47456
47457 2000-02-01  Jim Meyering  <meyering@lucent.com>
47458
47459         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
47460
47461 2000-01-31  Jim Meyering  <meyering@lucent.com>
47462
47463         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
47464         functions.  Add the time.h and sys/time.h headers along with the
47465         AC_REQUIRE'ment of AC_HEADER_TIME.
47466
47467 2000-01-31  Jim Meyering  <meyering@lucent.com>
47468
47469         * lib/nanosleep.h (nanosleep): Guard declaration with
47470         `#if ! HAVE_DECL_NANOSLEEP'.
47471         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
47472         the declaration in that vendor's sys/timers.h.
47473         Reported by Christian Krackowizer.
47474
47475         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
47476         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
47477         (ISPRINT): Likewise.
47478         Reported by Tom Tromey.
47479
47480 2000-01-30  Jim Meyering  <meyering@lucent.com>
47481
47482         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
47483
47484         * m4/prereq.m4 (utmp_includes): Define.
47485         Check for ut_user and ut_name members in both struct utmpx
47486         and struct utmp.
47487
47488 2000-01-30  Jim Meyering  <meyering@lucent.com>
47489
47490         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
47491         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
47492         header files where only utmpx.ut_user is declared.
47493
47494         * lib/readutmp.h (UT_USER): Define.
47495
47496 2000-01-29  Jim Meyering  <meyering@lucent.com>
47497
47498         * m4/lib-check.m4: New file containing library-related checks from
47499         fileutils and sh-utils (textutils had none).
47500
47501 2000-01-28  Jim Meyering  <meyering@lucent.com>
47502
47503         * m4/perl.m4: Change format of warning message to look more like that
47504         from the missing script.  Suggestion from François Pinard.
47505
47506 2000-01-25  Jim Meyering  <meyering@lucent.com>
47507
47508         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
47509         well as time.h in the compile check.
47510         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
47511         Fix typo in cross-compiling case: s/yes/no/.
47512
47513 2000-01-23  Jim Meyering  <meyering@lucent.com>
47514
47515         * m4/jm-macros.m4: Move df-related tests here from
47516         fileutils/configure.in
47517
47518         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
47519         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
47520
47521         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
47522         s/space/ac_fsusage_space/.
47523         (jm_FILE_SYSTEM_USAGE): Take two parameters.
47524
47525         * m4/ftruncate.m4: New file (derived from part of
47526         fileutils/configure.in).
47527         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
47528         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
47529
47530         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
47531         AC_SUBST these here, rather than just in sh-util/configure.in, so
47532         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
47533         all the same.
47534         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
47535         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
47536         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
47537         (AC_SUBST(POW_LIBM)): Likewise.
47538         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
47539
47540 2000-01-23  Jim Meyering  <meyering@lucent.com>
47541
47542         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
47543         obstack.c.
47544
47545 2000-01-22  Jim Meyering  <meyering@lucent.com>
47546
47547         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
47548
47549         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
47550
47551         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
47552         configure.in
47553         (AC_CHECK_HEADERS): Likewise for sh-utils.
47554         (AC_CHECK_HEADERS): Likewise for textutils.
47555         Merge the three lists of headers.
47556
47557         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
47558         from fileutils' configure.in.
47559
47560         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
47561         code. Moved tests into their own function (_jm_DECL_HEADERS) in
47562         check-decl.m4.
47563
47564         * m4/check-decl.m4: Use #if rather than #ifdef.
47565         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
47566         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
47567         (_jm_DECL_HEADERS): Define new function.
47568         (jm_CHECK_DECLARATIONS): Require it.
47569
47570 2000-01-22  Jim Meyering  <meyering@lucent.com>
47571
47572         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
47573         [! HAVE_DECL_STRTOULL]: Declare strtoull.
47574         Required for some AIX systems.  Reported by Christian Krackowizer.
47575         [TESTING] (main): New function.
47576
47577         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
47578         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
47579         letters.
47580
47581         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
47582         iswprint.
47583
47584         * lib/strverscmp.c (ISDIGIT): Define.
47585         (strverscmp): Use ISDIGIT, not isdigit.
47586
47587 2000-01-19  Jim Meyering  <meyering@lucent.com>
47588
47589         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
47590         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
47591         defines `struct timespec' in <sys/time.h>
47592
47593         * m4/c-bs-a.m4: Remove uses of changequote altogether.
47594         Thanks to Akim for explaining.
47595
47596 2000-01-17  Paul Eggert  <eggert@twinsun.com>
47597
47598         * lib/nanosleep.c (nanosleep):
47599         Don't use SA_INTERRUPT to decide whether to call sigaction, as
47600         POSIX.1 doesn't require SA_INTERRUPT and some systems
47601         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
47602         it's been part of POSIX.1 since day 1 (in 1988).
47603
47604 2000-01-17  Jim Meyering  <meyering@lucent.com>
47605
47606         * lib/interlock: Remove unused file.  Reported by François Pinard.
47607
47608 2000-01-16  Paul Eggert  <eggert@twinsun.com>
47609
47610         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
47611         alert, backslash, formfeed, and vertical tab unnecessarily in
47612         shell quoting style.
47613
47614 2000-01-16  Jim Meyering  <meyering@lucent.com>
47615
47616         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
47617         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
47618         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
47619         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
47620
47621 2000-01-16  Jim Meyering  <meyering@lucent.com>
47622
47623         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
47624         because the latter didn't work.
47625
47626 2000-01-15  Jim Meyering  <meyering@lucent.com>
47627
47628         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
47629         (AC_REPLACE_FUNCS): Add memcpy and memset.
47630         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
47631         Add strpbrk.
47632         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
47633
47634 2000-01-12  Jim Meyering  <meyering@lucent.com>
47635
47636         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
47637         (jm_PREREQ): Use it.
47638         (jm_PREREQ_READUTMP): New macro.
47639         (jm_PREREQ): Use it.
47640
47641 2000-01-11  Paul Eggert  <eggert@twinsun.com>
47642
47643         Quote multibyte characters correctly.
47644         * m4/c-bs-a.m4: New file.
47645         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
47646         (jm_PREREQ): Use it.
47647
47648 2000-01-11  Paul Eggert  <eggert@twinsun.com>
47649
47650         * m4/uintmax_t.m4: Port to autoconf 2.13.
47651
47652 2000-01-08  Jim Meyering  <meyering@ascend.com>
47653
47654         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
47655         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
47656
47657 2000-01-04  Jim Meyering  <meyering@ascend.com>
47658
47659         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
47660         jm_STRUCT_DIRENT_D_TYPE.
47661         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
47662         jm_STRUCT_DIRENT_D_INO.
47663         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
47664         jm_STRUCT_UTIMBUF.
47665         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
47666         renamings.
47667         * m4/utime.m4: Likewise.
47668
47669         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
47670         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
47671
47672 2000-01-03  Paul Eggert  <eggert@twinsun.com>
47673
47674         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
47675         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
47676
47677 2000-01-02  Jim Meyering  <meyering@ascend.com>
47678
47679         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
47680         remember if this is necessary.
47681
47682 1999-12-26  Jim Meyering  <meyering@ascend.com>
47683
47684         * m4/jm-macros.m4: Use it here.
47685         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
47686
47687 1999-12-23  Jim Meyering  <meyering@ascend.com>
47688
47689         * m4/jm-macros.m4: Check for clock_gettime (moved from
47690         fileutils/configure.in)
47691         Check for gettimeofday.
47692
47693 1999-12-20  Jim Meyering  <meyering@ascend.com>
47694
47695         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
47696         autoconf-2.14a-1999-12-20.
47697
47698 1999-12-19  Jim Meyering  <meyering@ascend.com>
47699
47700         * m4/lstat-slash.m4: New file.
47701         * m4/jm-macros.m4: Use the new macro:
47702         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
47703
47704 1999-12-07  Jim Meyering  <meyering@ascend.com>
47705
47706         * m4/perl.m4: Require that File::Compare be available, too.
47707         Too many systems seem to lack it.
47708
47709         * m4/strftime.m4: Add checks for most of the cpp macros tested in
47710         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
47711
47712 1999-11-18  Paul Eggert  <eggert@twinsun.com>
47713
47714         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
47715         problem with the QNX 4.25 shell, which doesn't propagate exit
47716         status of failed commands inside shell assignments.
47717
47718 1999-11-17  Jim Meyering  <meyering@ascend.com>
47719
47720         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
47721
47722 1999-11-07  Jim Meyering  <meyering@ascend.com>
47723
47724         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
47725
47726 1999-11-06  Jim Meyering  <meyering@ascend.com>
47727
47728         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
47729         * m4/jm-macros.m4 (jm_MACROS): Use it here.
47730
47731 1999-11-05  Jim Meyering  <meyering@ascend.com>
47732
47733         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
47734         configure.in of textutils, fileutils, and sh-utils into this one
47735         (shared between those packages) file.
47736         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
47737         AC_STRUCT_ST_BLKSIZE.
47738
47739 1999-11-03  Jim Meyering  <meyering@ascend.com>
47740
47741         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
47742         of AC_CHECK_TYPE checks includes unistd.h.
47743         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
47744         Suggestion from Akim Demaille.
47745
47746 1999-10-30  Jim Meyering  <meyering@ascend.com>
47747
47748         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
47749         m4-quoted string.
47750         * m4/ls-mntd-fs.m4: Likewise.
47751         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
47752         * m4/jm-winsz1.m4: Likewise.
47753
47754         * m4/const.m4: Remove file, since the fix made it into the experimental
47755         version of autoconf.
47756         * m4/mktime.m4: Likewise.
47757
47758         * m4/check-type.m4: Remove file, now that the latest version of
47759         AC_CHECK_TYPE takes a third arg to specify additional #includes.
47760
47761         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
47762         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
47763         AC_CHECK_TYPE.
47764
47765 1999-10-04  Jim Meyering  <meyering@ascend.com>
47766
47767         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
47768
47769 1999-09-22  Paul Eggert  <eggert@twinsun.com>
47770
47771         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
47772         2.95.1 bug with HP-UX 10.20.
47773
47774 1999-09-17  Jim Meyering  <meyering@ascend.com>
47775
47776         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
47777         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
47778         due to missing strdup (against sh-utils-2.0).
47779
47780 1999-08-29  Jim Meyering  <meyering@ascend.com>
47781
47782         * m4/jm-macros.m4: Require jm_BISON.
47783         * m4/bison.m4: New file.
47784
47785 1999-08-17  Paul Eggert  <eggert@twinsun.com>
47786
47787         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
47788         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
47789
47790 1999-08-05  Jim Meyering  <meyering@ascend.com>
47791
47792         * m4/getline.m4: Rename test file from conftestdata to conftest.data
47793         to avoid conflicts with `conftest' on 8+3 filesystems.
47794         Suggestion from Eli Zaretskii.
47795
47796 1999-08-04  Jim Meyering  <meyering@ascend.com>
47797
47798         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
47799         fileutils and sh-utils (textutils's getline test was inadequate).
47800         (AM_FUNC_GETLINE): Run this test.
47801         (AC_CHECK_FUNCS): Check for getdelim.
47802         Reported by Bob Proulx.
47803
47804 1999-08-02  Jim Meyering  <meyering@ascend.com>
47805
47806         * m4/jm-macros.m4: Add a comment.
47807
47808 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47809
47810         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
47811         <inttypes.h> defines strtoumax as a macro (and not as a
47812         function).
47813
47814 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47815
47816         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
47817         that we can shift, multiply and divide unsigned long long
47818         values; Ultrix cc can't do it.
47819
47820 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47821
47822         * m4/mktime.m4: New file, which is a preview of what should appear
47823         in the next public autoconf release.
47824
47825 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47826
47827         * m4/lfs.m4: Remove this file.
47828         * m4/largefile.m4: New file.  It contains the old contents of
47829         lfs.m4, except that all names with prefix AC_LFS have been
47830         changed to use the prefix AC_SYS_LARGEFILE instead, to be
47831         compatible with future autoconf versions.  Also, some minor m4
47832         quoting problems have been fixed.
47833
47834 1999-08-01  Paul Eggert  <eggert@twinsun.com>
47835
47836         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
47837         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
47838         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
47839         and simplify the shell code.
47840
47841 1999-08-01  Jim Meyering  <meyering@ascend.com>
47842
47843         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
47844         m4.
47845
47846 1999-07-20  Jim Meyering  <meyering@ascend.com>
47847
47848         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
47849
47850 1999-07-15  Jim Meyering  <meyering@ascend.com>
47851
47852         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
47853
47854 1999-05-22  Jim Meyering  <meyering@ascend.com>
47855
47856         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
47857
47858 1999-05-20  Jim Meyering  <meyering@ascend.com>
47859
47860         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
47861         Add a colon after each `then' in case $4 is empty.
47862
47863 1999-05-16  Jim Meyering  <meyering@ascend.com>
47864
47865         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
47866
47867 1999-05-10  Jim Meyering  <meyering@ascend.com>
47868
47869         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
47870
47871         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
47872         AC_FUNC_MKTIME.
47873
47874 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
47875
47876         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
47877
47878 1999-05-04  Paul Eggert  <eggert@twinsun.com>
47879
47880         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
47881         not CPPFLAGS, so that linking works correctly in IRIX.
47882
47883 1999-04-30  Paul Eggert  <eggert@twinsun.com>
47884
47885         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
47886
47887 1999-04-20  Paul Eggert  <eggert@twinsun.com>
47888
47889         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
47890         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
47891         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
47892         jm_AC_TYPE_UNSIGNED_LONG_LONG.
47893         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
47894
47895         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
47896
47897 1999-04-20  Jim Meyering  <meyering@ascend.com>
47898
47899         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
47900         AC_REPLACE xstroull if necessary.  From Paul Eggert.
47901         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
47902
47903 1999-04-18  Jim Meyering  <meyering@ascend.com>
47904
47905         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
47906         * m4/jm-macros.m4: Use it.
47907
47908 1999-04-06  Jim Meyering  <meyering@ascend.com>
47909
47910         * m4/strftime.m4: Remove test for %f.
47911
47912 1999-03-29  Jim Meyering  <meyering@ascend.com>
47913
47914         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
47915         superset of the AC_TYPE_* checks in the textutils, fileutils,
47916         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
47917         AC_TYPE_PID_T.
47918
47919 1999-03-28  Jim Meyering  <meyering@ascend.com>
47920
47921         * m4/jm-macros.m4: Define GNU_PACKAGE here.
47922         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
47923         replaced e.g., in the *.sh files of the sh-utils.
47924
47925 1999-03-20  Jim Meyering  <meyering@ascend.com>
47926
47927         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
47928         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
47929         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
47930
47931 1999-03-19  Jim Meyering  <meyering@ascend.com>
47932
47933         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
47934
47935 1999-03-12  Jim Meyering  <meyering@ascend.com>
47936
47937         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
47938
47939 1999-03-07  Jim Meyering  <meyering@ascend.com>
47940
47941         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
47942         declared.
47943
47944 1999-02-17  Jim Meyering  <meyering@ascend.com>
47945
47946         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
47947         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
47948
47949 1999-02-07  Jim Meyering  <meyering@ascend.com>
47950
47951         * m4/group-member.m4: New file -- extracted from sh-utils'
47952         configure.in.
47953
47954         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
47955         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
47956
47957 1999-02-06  Jim Meyering  <meyering@ascend.com>
47958
47959         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
47960         * m4/fnmatch.m4: Likewise.
47961         * m4/getgroups.m4: Likewise.
47962         * m4/lstat.m4: Likewise.
47963         * m4/malloc.m4: Likewise.
47964         * m4/putenv.m4: Likewise.
47965         * m4/realloc.m4: Likewise.
47966         * m4/regex.m4: Likewise.
47967         * m4/stat.m4: Likewise.
47968         * m4/strftime.m4: Likewise.
47969         Suggestion from Alain Magloire.
47970
47971         * m4/chown.m4: Use `.$ac_objext', not `.o'.
47972         * m4/fnmatch.m4: Likewise.
47973         * m4/getgroups.m4: Likewise.
47974         * m4/getline.m4: Likewise.
47975         * m4/lstat.m4: Likewise.
47976         * m4/malloc.m4: Likewise.
47977         * m4/memcmp.m4: Likewise.
47978         * m4/putenv.m4: Likewise.
47979         * m4/realloc.m4: Likewise.
47980         * m4/regex.m4: Likewise.
47981         * m4/stat.m4: Likewise.
47982         * m4/strftime.m4: Likewise.
47983         Suggestion from Alain Magloire.
47984
47985         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
47986         an argument.
47987
47988         * m4/regex.m4: Add a run-time Test for proper operation of
47989         re_compile_pattern.
47990
47991 1999-01-31  Jim Meyering  <meyering@ascend.com>
47992
47993         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
47994
47995 1999-01-30  Jim Meyering  <meyering@ascend.com>
47996
47997         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
47998
47999         * m4/jm-mktime.m4: Make this a wrapper around the official
48000         AM_FUNC_MKTIME rather than my private copy, now that the official one
48001         is up to date.
48002         * m4/mktime.m4: Remove file.
48003
48004         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
48005         * m4/uptime.m4: Likewise.
48006         * m4/uintmax_t.m4: Likewise.
48007
48008 1999-01-28  Jim Meyering  <meyering@ascend.com>
48009
48010         * m4/jm-macros.m4: Use jm_AFS.
48011         * m4/afs.m4: New file (from fileutils' configure.in).
48012
48013         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
48014         * m4/chown.m4: Likewise.
48015         * m4/d-ino.m4: Likewise.
48016         * m4/d-type.m4: Likewise.
48017         * m4/fnmatch.m4: Likewise.
48018         * m4/getgroups.m4: Likewise.
48019         * m4/gettext.m4: Likewise.
48020         * m4/jm-mktime.m4: Likewise.
48021         * m4/jm-winsz2.m4: Likewise.
48022         * m4/lcmessage.m4: Likewise.
48023         * m4/ls-mntd-fs.m4: Likewise.
48024         * m4/malloc.m4: Likewise.
48025         * m4/memcmp.m4: Likewise.
48026         * m4/putenv.m4: Likewise.
48027         * m4/realloc.m4: Likewise.
48028         * m4/st_mtim.m4: Likewise.
48029         * m4/strftime.m4: Likewise.
48030
48031 1999-01-16  Jim Meyering  <meyering@ascend.com>
48032
48033         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
48034         (ARGMATCH_DIE_DECL): Define.
48035
48036 1999-01-12  Jim Meyering  <meyering@ascend.com>
48037
48038         * m4/Makefile.am.in: Rewrite to avoid using fmt.
48039         Reported by Lars Hecking.
48040
48041 1999-01-10  Jim Meyering  <meyering@ascend.com>
48042
48043         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
48044         gross kludge.
48045         * m4/inttypes_h.m4: Likewise.
48046         * m4/lstat.m4: Likewise.
48047         * m4/malloc.m4: Likewise.
48048         * m4/readdir.m4: Likewise.
48049         * m4/realloc.m4: Likewise.
48050         * m4/st_dm_mode.m4: Likewise.
48051         * m4/stat.m4: Likewise.
48052         * m4/utimbuf.m4: Likewise.
48053         * m4/utimes.m4: Likewise.
48054
48055         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
48056         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
48057         comments in config.h.in are meaningful.
48058
48059         * m4/jm-macros.m4: Require autoconf-2.13 here.
48060
48061         * m4/regex.m4: By default, don't use the included regex.c on systems
48062         with glibc 2.  Suggestion from Uli Drepper.
48063
48064 1999-01-02  Jim Meyering  <meyering@ascend.com>
48065
48066         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
48067
48068 1998-12-18  Jim Meyering  <meyering@ascend.com>
48069
48070         * m4/Makefile.am.in (Makefile.am): Simplify rule.
48071         Based on a suggestion from Lars Hecking.
48072
48073 1998-11-16  Paul Eggert  <eggert@twinsun.com>
48074
48075         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
48076
48077 1998-11-16  Jim Meyering  <meyering@ascend.com>
48078
48079         * m4/lfs.m4: Double-quote the `uname...` expression.
48080
48081 1998-11-14  Jim Meyering  <meyering@ascend.com>
48082
48083         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
48084         * m4/stat.m4: Likewise.
48085
48086 1998-11-03  Jim Meyering  <meyering@ascend.com>
48087
48088         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
48089         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
48090
48091 1998-10-18  Jim Meyering  <meyering@ascend.com>
48092
48093         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
48094
48095 1998-10-17  Jim Meyering  <meyering@ascend.com>
48096
48097         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
48098         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
48099         calls for those previously hard-coded headers.  Instead, take a new
48100         parameter.
48101         (jm_CHECK_DECLARATIONS): Reflect interface change.
48102         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
48103         (jm_CHECK_DECL_LOCALTIME_R): New macro.
48104
48105         * m4/mktime.m4: Test for spring-forward gap before long-running test.
48106
48107 1998-10-14  Jim Meyering  <meyering@ascend.com>
48108
48109         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
48110         instead of "TZ=America/Vancouver".  From Paul Eggert.
48111
48112 1998-10-11  Jim Meyering  <meyering@ascend.com>
48113
48114         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
48115         This adds a test for a recently added compatibility fix for mktime.c.
48116         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
48117
48118 1998-09-27  Jim Meyering  <meyering@ascend.com>
48119
48120         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
48121
48122         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
48123         ../configure.in, including a change from Gordon Matzigkeit to allow
48124         cross-compiling for the Hurd.
48125
48126         * m4/glibc.m4: New file/macro to test for the GNU C Library
48127         versions 1 and 2.  From Gordon Matzigkeit.
48128         Indent.
48129
48130 1998-09-21  Jim Meyering  <meyering@ascend.com>
48131
48132         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
48133
48134 1998-08-18  Paul Eggert  <eggert@twinsun.com>
48135
48136         Port nanosecond-resolution times to UnixWare 2.1.2 and
48137         pedantic Solaris 2.6.
48138
48139         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
48140         AC_STRUCT_ST_MTIM.
48141         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
48142         Generate name of ns member, instead of just 1 or undef.
48143         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
48144
48145 1998-08-15  Jim Meyering  <meyering@ascend.com>
48146
48147         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
48148         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
48149         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
48150         instead of jm_TYPE_SSIZE_T.
48151
48152 1998-08-12  Jim Meyering  <meyering@ascend.com>
48153
48154         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
48155
48156 1998-08-02  Jim Meyering  <meyering@ascend.com>
48157
48158         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
48159         in acconfig.h manually.
48160
48161 1998-07-31  Paul Eggert  <eggert@twinsun.com>
48162
48163         * m4/st_mtim.m4: New file.
48164
48165 1998-07-28  Jim Meyering  <meyering@ascend.com>
48166
48167         * m4/utimes.m4: Undef stat.
48168
48169 1998-07-25  Jim Meyering  <meyering@ascend.com>
48170
48171         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
48172         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
48173
48174 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
48175
48176         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
48177         uid and gid actually remain unchanged.
48178
48179 1998-07-07  Jim Meyering  <meyering@ascend.com>
48180
48181         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
48182
48183 1998-07-04  Jim Meyering  <meyering@ascend.com>
48184
48185         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
48186         to prove that this macro can be used in packages without regex.c.
48187
48188 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
48189
48190         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
48191         is to be used.
48192
48193 1998-07-03  Jim Meyering  <meyering@ascend.com>
48194
48195         * m4/gettext.m4: Add -lintl if it's found to be necessary.
48196
48197         * m4/gettext.m4: New file -- from gettext-0.10.35.
48198         * m4/lcmessage.m4: Likewise.
48199         * m4/progtest.m4: Likewise.
48200
48201         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
48202         * m4/jm-macros.m4: Require the new macro.
48203
48204 1998-06-29  Jim Meyering  <meyering@ascend.com>
48205
48206         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
48207         for the definition of NGROUPS (used in a system header included
48208         by sys/mount.h).
48209
48210 1998-06-28  Jim Meyering  <meyering@ascend.com>
48211
48212         * m4/ls-mntd-fs.m4: New file.
48213         * m4/fstypename.m4: New file.
48214
48215         * m4/jm-macros.m4: Require the new macro.
48216         * m4/jm-glibc-io.m4: New file.
48217
48218 1998-05-19  Jim Meyering  <meyering@ascend.com>
48219
48220         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
48221         * m4/lchown.m4: New file.
48222
48223         * m4/Makefile.am.in: New file.
48224         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
48225
48226 1998-05-14  Jim Meyering  <meyering@ascend.com>
48227
48228         * m4/Makefile.am (EXTRA_DIST): Add them.
48229         * m4/jm-macros.m4: New file.
48230         * m4/utimbuf.m4: New file.
48231
48232 1998-05-12  Jim Meyering  <meyering@ascend.com>
48233
48234         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
48235
48236 1998-05-11  Jim Meyering  <meyering@ascend.com>
48237
48238         * m4/isc-posix.m4: New file.
48239
48240 1998-05-10  Jim Meyering  <meyering@ascend.com>
48241
48242         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
48243
48244 1998-05-09  Jim Meyering  <meyering@ascend.com>
48245
48246         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
48247         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
48248         with automake.
48249
48250         * m4/ssize_t.m4: New file.
48251         * m4/mktime.m4: Remove file -- the new automake has this now.
48252
48253 1998-04-26  Jim Meyering  <meyering@ascend.com>
48254
48255         * m4/assert.m4: New file.
48256         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
48257
48258 1998-04-05  Jim Meyering  <meyering@ascend.com>
48259
48260         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
48261         (jm_PREREQ): Use it here.
48262
48263 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
48264
48265         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
48266         in acconfig.h.
48267
48268 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
48269
48270         * m4/prereq.m4: New file.
48271         * m4/error.m4: New file.
48272         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
48273
48274 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
48275
48276         * m4/getline.m4: Don't set am_cv_func_working_getline before the
48277         cache-check for the same variable -- that defeated the purpose of
48278         the test; the test program was never run.  This was a problem only
48279         on systems with losing getline functions -- HP-UX 10.20 is one.
48280         Reported by Bjorn Helgaas.
48281
48282 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
48283
48284         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
48285
48286 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
48287
48288         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
48289
48290         * m4/const.m4: New file.  Use an initializer in this declaration
48291         typedef int charset[2]; const charset x;
48292         Reported by Bob Glickstein.
48293
48294 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
48295
48296         * m4/chown.m4: Fix reversed types on -1 args to chown.
48297         From Kaveh Ghazi.
48298
48299 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
48300
48301         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
48302         Add lseek and memchr.
48303
48304         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
48305         T.E.Dickey <dickey@clark.net> said that some older preprocessors
48306         have a 20-character limit on names.
48307
48308 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
48309
48310         * m4/inttypes_h.m4: New file.
48311         * m4/uintmax_t.m4: New file.
48312         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
48313
48314
48315         -----
48316
48317         Local Variables:
48318         coding: utf-8
48319         End:
48320
48321         Copyright (C) 1997-2009 Free Software Foundation, Inc.
48322
48323         Copying and distribution of this file, with or without
48324         modification, are permitted provided the copyright notice
48325         and this notice are preserved.